新聞中心

EEPW首頁(yè) > 消費(fèi)電子 > 設(shè)計(jì)應(yīng)用 > PIC單片機(jī)程序設(shè)計(jì)的基本格式

PIC單片機(jī)程序設(shè)計(jì)的基本格式

——
作者: 時(shí)間:2007-10-24 來(lái)源:嵌入式世界 收藏
    為了快速掌握源程序的基本結(jié)構(gòu),這里給出一個(gè)典型的程序結(jié)構(gòu)框架。建立源程序時(shí)首先用偽指令TITLE提供程序的標(biāo)題,接著給出整個(gè)程序的總說(shuō)明,并用列表偽指令LIST指定所用型號(hào)和文件輸出格式,再利用INCLUDE偽指令讀入MPASM中提供的定義文件如《P16F84INC》,然后對(duì)片內(nèi)常用資源進(jìn)行定義,再給出一般程序的基本結(jié)構(gòu)框架。現(xiàn)舉例如下。

    TITLE“This is……”;程序標(biāo)題
 ??;程序說(shuō)明
  LIST P="16F84",F(xiàn)=1NHX8M
 ??;
  include
 ?。璫onfig_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 ;跳過(guò)中斷矢量
      ORG 0004
      goto INTSRV;子程序入口地址
 ?。弧?
  MAIN   

    ??;從0005H開(kāi)始放主程序
      call Initports ;端口初始化
      call InitTimers;定時(shí)器初始化
       …
  INTSRV …     ;中斷服務(wù)程序區(qū)
  SVBRTH…      ;子程序區(qū)
    END      ;程序結(jié)束符

  當(dāng)然,在編寫(xiě)程序時(shí)可根據(jù)實(shí)際情況加以調(diào)整。下面是一份實(shí)際程序清單,要求將數(shù)據(jù)88H寫(xiě)入16F84內(nèi)部EEPROM的20H單元,而后再?gòu)?0H單元將其讀出。
  LIST P="16F84",F(xiàn)=INHX8M
 ??;……………………………
  STATUS EQU  03 ?。欢x寄存器
  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         ;寫(xiě)入操作開(kāi)始
       CLRW      ;清W,使W=0
       BCF STATUS,RP0 ;選BANK0
       MOVLW 20H
       MOVWF EEADR   ;地址→EEADR
       MOVLW 88H
       MOVWF EEDATA ??;寫(xiě)入數(shù)據(jù)→
                 ;EEDATA
       BSF STATUS,RP0 ;選BANK1
       BSF EECON1,2 ;寫(xiě)操作使能允許
       BCF INTCON,GIE ;關(guān)閉所有的中斷
       MOVLW 0X55
       MOVWF EECON2  ;55H→EECON2
       MOVLW 0XAA
       MOVWF EECON2  ;AAH→EECON2
       BSF EECON1,WR ;啟動(dòng)寫(xiě)操作
       BSF INTCON,GIE ;恢復(fù)開(kāi)中斷
  RDSTART          ;讀出操作開(kāi)始
       BCF STATUS,RP0
       MOVLW 20H
       MOVWF EEADR   ;地址→EEADR
       BSF STATUS,RP0
       BSF EECON1,RD ;啟動(dòng)讀操作
       BCF STATUS,RP0
       MOVF EEDATA,W ;將EEPROM
                 ;數(shù)據(jù)讀入W
  END



評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉