网站首页
IC库存
IC展台
电子资讯
技术资料
PDF文档
我的博客
IC72论坛
ic72 logo
资料首页最新产品 技术参数 电路图 设计应用 解决方案 代理商查询 IC替换 IC厂商 电子辞典
关键字: 技术文章 PDF资料 IC价格 电路图 代理商查询 IC替换 IC厂商 电子辞典

PIC单片机程序设计的基本格式

   为了快速掌握PIC单片机源程序的基本结构,这里给出一个典型的程序结构框架。建立源程序时首先用伪指令TITLE提供程序的标题,接着给出整个程序的总说明,并用列表伪指令LIST指定所用单片机型号和文件输出格式,再利用INCLUDE伪指令读入MPASM中提供的定义文件如《P16F84INC》,然后对片内常用资源进行定义,再给出一般程序的基本结构框架。现举例如下。

  TITLE“This is……”;程序标题
   ;程序说明
   LIST P=16F84,F=1NHX8M
   ;
   include <p16F84.inc>
   -config_RC_Qsc &_WDT_0FF…
   ;资源定义和变量定义
   STATUS EQU 03
   FSR EQU 04
   PORTA EQU 05
   PORTB EQU 06
   J EQU 01F
   K EQU 01E
   ;…………………
       ORG 0000 ;
       goto MAIN ;跳过中断矢量
       ORG 0004
       goto INTSRV;子程序入口地址
   ;……………………………………
   MAIN       ;从0005H开始放主程序
       call Initports ;端口初始化
       call InitTimers;定时器初始化
       …
   INTSRV …     ;中断服务程序区
   SVBRTH…      ;子程序区
     END      ;程序结束符
   当然,在编写程序时可根据实际情况加以调整。下面是一份实际程序清单,要求将数据88H写入PIC16F84单片机内部EEPROM的20H单元,而后再从20H单元将其读出。
   LIST P=16F84,F=INHX8M
   ;……………………………
   STATUS EQU  03  ;定义寄存器
   EEDATA EQU  08
   EEADR EQU  09
   INTCON EQU  0BH
   EECON1 EQU  88H
   EECON2 EQU  89H
   ;…………………………
   RD    EQU  0    ;定义位
   WR  EQU  1
   RP0   EQU  5
   GIE  EQU  7
   ;…………………………
        ORG  0
        GOTO WRSTART
   ;……………………………
        ORG  10H
   WRSTART         ;写入操作开始
        CLRW      ;清W,使W=0
        BCF STATUS,RP0 ;选BANK0
        MOVLW 20H
        MOVWF EEADR   ;地址→EEADR
        MOVLW 88H
        MOVWF EEDATA  ;写入数据→
                 ;EEDATA
        BSF STATUS,RP0 ;选BANK1
        BSF EECON1,2 ;写操作使能允许
        BCF INTCON,GIE ;关闭所有的中断
        MOVLW 0X55
        MOVWF EECON2  ;55H→EECON2
        MOVLW 0XAA
        MOVWF EECON2  ;AAH→EECON2
       BSF EECON1,WR ;启动写操作
        BSF INTCON,GIE ;恢复开中断
   RDSTART          ;读出操作开始
        BCF STATUS,RP0
        MOVLW 20H
        MOVWF EEADR   ;地址→EEADR
        BSF STATUS,RP0
        BSF EECON1,RD ;启动读操作
        BCF STATUS,RP0
        MOVF EEDATA,W ;将EEPROM
                 ;数据读入W
   END



热门搜索:2866572 SBB400 48VDCSPLITTER 2856087 TLP808NETG PS240406 UL24RA-15 TLP76MSG 01B1002JF SUPER6OMNI D 6NX-6 TLP808 2320351 2866349 TLP602 02T1001JF 2839240 6SPDX TLP808TELTAA TW-E41-T1 2858030 SBB2808-1 TLM609GF PS-615-HG-OEM PS4816
COPYRIGHT:(1998-2010) IC72 达普IC芯片交易网
客户服务:service@IC72.com 库存上载:IC72@IC72.com
(北京)联系方式: 在线QQ咨询:点击这里给我发消息 联系电话:010-82614113 传真:010-82614123
京ICP备06008810号-21 京公网安备 11010802032910 号 企业资质