在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

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

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

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

                TITLE“This is……”;程序標題
             ?。怀绦蛘f明
              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 ;跳過中斷矢量
                  ORG 0004
                  goto INTSRV;子程序入口地址
             ??;……………………………………
              MAIN   

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

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



            評論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉