?? timer3led.#2
字號:
;參考程序A:文件名:TIMER3LED.ASM程序功能:驅動C8051F單片機實驗儀上的8個發光二
;極管輪流點亮.
$include (c8051f020.inc)
ORG 0
AJMP main
ORG 73H ;T3中斷向量
AJMP Timer3_ISR ; T3中斷服務子程序
ORG 0100H
main:
MOV WDTCN,#0deH
MOV WDTCN,#0adH ;禁止看門狗定時器
LCALL Timer3_Init ;初始化T3
MOV R0,#0FEH ;置掃描初值,亮最低位一位的燈.
SETB EA ;開總中斷
LJMP $ ;等待中斷
RET
;定時器3初始化
Timer3_Init:
MOV TMR3CN,#00H ; 禁止T3
MOV TMR3RLH, #1 ; 設置自動重載值,假設為(01FFH)
MOV TMR3RLL, #255
MOV TMR3H, #0ffh ; 設置計數初值
MOV TMR3L, #0ffh
ORL TMR3CN,#04H ;定時器3使用系統時鐘頻率/12
ORL EIE2,#01H ;允許T3的中斷申請.
RET
;定時器3中斷服務程序
Timer3_ISR:
ANL TMR3CN,#NOT(80h) ;清中斷標志位TF3
MOV A,R0
MOV P4,A ;送數據到P4口
SETB C
RLC A ;帶進位左移
MOV R0,A
CJNE A,#0FFH,TT ;第八燈是否點亮
MOV R0,#0FEH
TT: RETI
END
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -