?? daima8.asm
字號:
ORG 2000H
DCW TINT ;定義T1溢出中斷入口
ORG 2080H
LD SP,#00C0H
DI
CLRB INT_PENDING
LDB INT_MASK,#01H
LDB IOC0,#86H ;將HSI.1作為時鐘源,復位T2
LDB IOC1,#0CH
EI
DRIVE: ORB P2,#20H ;P2.5產生周期8微秒寬度2微秒的脈沖
ANDB P2,#0DFH
SJMP DRIVE
TINT: PUSHF ;T1溢出中斷服務子程序
LDB REG,IOS1
JBS REG,4,T2OV
JBS REG,5,T1OV
SJMP RETURN
T2OV: LDB P2,#00H
SJMP RETURN
T1OV: LDB P2,#01H ;P2
FIRHI: LD REG1,TIMER1
RETURN: POPF
RET
END
定時器T1和T2同時中斷,用程序在引腳P2.5處產生周期為8μs,寬度為2μs的脈沖,并將P2.5引腳輸出作為時鐘送到T2的外時鐘源HSI.1引腳,進入中斷服務程序后,首先要根據IOS1寄存器的內容判斷是T1還是T2引起的中斷。當程序進入T1中斷程序T1OV,則P2.0=1,當程序進入T1中斷,則P2.0=0。系統采用4MHz的晶振。
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -