您当前的位置:五五电子网电子知识电子学习基础知识电脑-单片机-自动控制建立PIC单片机源程序必备的基本知识 正文
建立PIC单片机源程序必备的基本知识

建立PIC单片机源程序必备的基本知识

点击数:7350 次   录入时间:03-04 11:40:50   整理:http://www.55dianzi.com   电脑-单片机-自动控制

  我们在建立PIC单片机的源程序时,若操作数是常数,必须按下表的方式进行书写,否则汇编不会成功。

  在书写源程序有关常数时,不一定选取表1中的一种(制式)数,应由源程序指令的功能,决定其应该使用的进制数。当PIC单片机用作彩灯控制器或用发光二极管LED作输出口的演示程序时,应选取二进制数给PIC单片机输出口送数,这种二进制数最为直观。若用PIC单片机制作定时器,因秒到分、分到时是60进制数,时到日是24小时进制数,此时,在设定源程序中的常数时,选取十进制数最为直观、物理意义最清楚、查找程序最方便。所以读者会看到,在今后介绍较长的实用源程序中,表达的常数往往是多种进制的。此外,在建立PIC单片机的源程序时,常需进行简单的加、减运算,这时记住表2的二进制、十六进制和十进制数之间的关系,对计算十分有用。
  
  在下表中,仅列出了十进制数的0~15,十六进制数的0~F和二进制数的0000~1111等相互间对应值的转换关系。因PIC单片机内部的寄存器是8位的,所以给某个寄存器送数时,最多可送8位二进制数,其最大值为B’llllllll’;可送两位十六进制数,其最大值为OXFF;可送3位十进制数,其最大值为255。

  在实际应用中,两位十六进制数到十进制数的转换用的较多,其转换方法如下:
  
  例1:OXBC对应的十进制数是多少?
  
  解:OXBC转换成十进制数一B×16+C(转换),其中B、C是表2中的十六进制数B、C对应的十进制制数11和12,则

  由实例计算可见,要将两位十六进制数转换成十进制数的方法是,只需从表2中,查出十六进制数的高位与十进制数的对应值,再乘16(16是十六进制数的“权”)、加其低位对应的十进制数即可。例如OX67转换成十进制数应为

  由此可见,牢记上表十分重要。
  
  在建立PIC单片机源程序时,首先会用到伪指令。伪指令是用来给汇编程序提供汇编的控制功能、完成汇编程序作各种准备工作的。与汇编指令不同,它没有机器码(目标码)与其对应,所以仅在源程序的汇编过程中起一定作用。一旦汇编结束,伪指令的功能即告完成。但是,伪指令是建立PIC单片机源程序不可缺少的组成部分,否则汇编不会成功。伪指令可分四类,现分别介绍如下:
  
  (1)列表伪指令。实例:表达式LIST。功能,可作源程序中PIC单片机的选项和控制其汇编过程。常用于源程序的起始列,如:

  (2)数据伪指令。实例(a),表达式#INCLUDE。功能,在MPLAB中调用系统指定的所有文件(若MPLAB的早期版本中,没有指令中需要的文件,则不能汇编)。如:

  实例(b),表达式EQU。功能,可作为标号赋值或选择PIC单片机内部寄存器单元的地址,如

  (3)控制伪指令。实例(a),表达式ORG。功能,可作PIC单片机程序存放的起始地址和复位地址,  

   实例(b),表达式END。功能,程序结束指令。这条指令放在PIC单片机源程序的结束行。若END之后还有语句,将被视为无效;若源程序结束无END,则汇编不会成功。
  
  若小结上述列举的几条伪指令,可得出在建立PIC单片机源程序时,必须按下述格式进行(这里以PIC16F84为例)

 

 

 




本文关键字:单片机  知识  源程序  电脑-单片机-自动控制电子学习 - 基础知识 - 电脑-单片机-自动控制

《建立PIC单片机源程序必备的基本知识》相关文章>>>