【PIC單片機程序設計的基本框架】為了快速掌握PIC單片機源程序的基本結構 , 這里給出一個典型的程序結構框架 。 建立源程序時首先用偽指令TITLE提供程序的標題 , 接著給出整個程序的總說明 , 并用列表偽指令LIST指定所用單片機型號和文件輸出格式 , 再利用INCLUDE偽指令讀入MPASM中提供的定義文件如《P16F84INC》 , 然后對片內常用資源進行定義 , 再給出一般程序的基本結構框架 。 現舉例如下 。
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 0
- 單片機驅動74HC164的程序設計應用實例
- P87LPC762單片機寫CC1000內部寄存器的程序
- 51單片機數字鐘溫度計的編程案例
- 基于單片機的出租車計費器設計解析
- TLC1549串口傳輸與單片機A/D設計
- 手機怎么摳圖,vivo手機怎么摳圖不要背景
- 基于單片機的溫度傳感器設計
- 單片機RAM測試故障方法有幾種?
- 51單片機四大誤區怎么破?小白只需看本文就能進階
- PLC與單片機的本質區別是什么?
