首先,你要知道中斷都有哪些?它們的入口地址是什么
外部中斷0,定時(shí)器0,外部中斷1,定時(shí)器1,串口中斷。
這些中斷定時(shí)器都有優(yōu)先級(jí)的,他們的優(yōu)先級(jí)是:0,1,2,3,4(對(duì)應(yīng)上一句)
入口地址分別為:0003H,000BH,0013H,001BH,0023H
其次,你要知道中斷是如何產(chǎn)生的?
比如說(shuō),外部中斷0,它的外部接口就是P3.2,當(dāng)P3.2口有低電平或者下降沿觸發(fā)的時(shí)候,外部中斷0就產(chǎn)生了。具體要用電平觸發(fā)還是邊沿觸發(fā),這就要設(shè)置TCON。
再次,你要知道中斷產(chǎn)生后,跑哪里去了?
當(dāng)中斷產(chǎn)生后,如外部中斷0產(chǎn)生了,單片機(jī)檢測(cè)到后,就會(huì)跳到相應(yīng)的外部中斷0的處理子函數(shù)去處理這個(gè)中斷,沒(méi)有這個(gè)子函數(shù)則表示不處理。C語(yǔ)言寫的外部中斷0的模式如:ext0_intrupt()interrupt 0 {}
而匯編的模式則如:ORG 0000H
AJMP MAIN ;跳到主程序
ORG 0003H ;定義外部中斷0服務(wù)程序入口地址
AJMP OUTINT0 ;跳到外部中斷0處理函數(shù)
...
MAIN: ...
OUTINT0: ... ;外部中斷0處理函數(shù)
RETI
END |