技术支持

应用方案

方案需求

Application Solutions

您的位置 : 首页  >  技术中心  >  应用方案  >  单片机系列
代理品牌

样品申请

请简单描述您的需求,以便我们更精准的为您服务

样品申请 >

PIC单片机程序设计的基本格式
日期:2007-10-24 来源:

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


TITLE“This is……”;程序标题 
  ;程序说明 
  LIST P="16F84",F=1NHX8M 
  ; 
  include


  -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

近期更新
相关咨询

销售服务专线:0755-82127888

技术支持专线:0755-82127938

投诉专线:0755-82127989

深圳市华胄科技有限公司 版权所有 © 2005-2025  粤ICP备12085565号-1  销售服务专线:0755-82127888  技术支持专线:0755-82127938  投诉专线:0755-82127989

微信咨询

关注微信公众号咨询客服

客服热线

客服热线

0755-82127888

服务时间

工作日9:00~18:00

在线留言