色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統 > 設計應用 > PIC單片機程序設計的基本結構框架

          PIC單片機程序設計的基本結構框架

          作者: 時間:2011-11-15 來源:網絡 收藏

          為了快速掌握源程序的,這里給出一個典型的程序。建立源程序時首先用偽指令TITLE提供程序的標題,接著給出整個程序的總說明,并用列表偽指令LIST指定所用型號和文件輸出格式,再利用INCLUDE偽指令讀入MPASM中提供的定義文件如《P16F84INC》,然后對片內常用資源進行定義,再給出一般程序的?,F舉例如下。

          本文引用地址:http://cafeforensic.com/article/172424.htm

            TITLE“This is……”;程序標題
           ??;程序說明
            LIST P=16F84,F=1NHX8M
           ??;
            include p16F84.inc>
           ?。璫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       ??;從0005H開始放主程序
                call Initports ;端口初始化
                call InitTimers;定時器初始化
                 …
            INTSRV …     ;中斷服務程序區(qū)
            SVBRTH…      ;子程序區(qū)
              END      ;程序結束符
            當然,在編寫程序時可根據實際情況加以調整。下面是一份實際程序清單,要求將數據88H寫入16F84內部EEPROM的20H單元,而后再從20H單元將其讀出。
            LIST P=16F84,F=INHX8M
           ?。?hellip;…………………………
            STATUS EQU  03 ??;定義寄存器
            EEDATA EQU  08
            EEADR EQU  09
            INTCON EQU  0BH
            EECON1 EQU  88H
            EECON2 EQU  89H
           ?。?hellip;………………………
            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



          評論


          相關推薦

          技術專區(qū)

          關閉