下圖為一聲光報警電路,當(dāng)按下S1時,蜂鳴器發(fā)音;當(dāng)按下S2時,停止發(fā)音,但LED發(fā)光。
1、利用中斷工作方式編寫完整的單片機(jī)匯編語言程序。
2、 按鍵S1和S2觸發(fā)的先后順序?qū)Υ寺暪鈭缶娐酚惺裁从绊?為什么?
1、完整程序:
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP EXINT0
ORG 0013H
AJMP EXINT1
ORG 0030H;不能用0000H
MAIN: SETB EA
SETB EX0
SETB EX1
SETB IT0
SETB IT1
AJMP $
EXINT0: CLR P1.2
RETI
EXINT1: SETB P1.2
CLR P2.0
RETI
END
2、若先按下S1則蜂鳴器發(fā)音;再按S2蜂鳴器停止發(fā)音,LED發(fā)光。
若先按下S2LED發(fā)光,再按S1蜂鳴器發(fā)音的同時LED發(fā)光。
能實現(xiàn)中斷嵌套因為外部中斷0、1在執(zhí)行完后都會返回主程序。