您的位置 首页 系统

汇编语言完成中止嵌套的典型程序

设计一个基于单片机的声光报警电路。要求:利用按键触发外部中断0,蜂鸣器发音,发光二极管点亮,声光报警延迟1S后停止(利用定时器TO延时…

规划一个根据单片机的声光报警电路。要求:使用按键触发外部中止0,蜂鸣器发音,发光二极管点亮,声光报警推迟1S后中止(使用定时器TO延时)。蜂鸣器由P1.2操控,发光二极管由P2.0操控。规划硬件电路并给出其完好的程序。

/*典型过错一*/
/*ORG 0000H
AJMP MAIN
ORG 0003H
AJMP INTE0
ORG 000BH
AJMP INT120
ORG 0030H
MAIN: MOV R0,#00H
SETB IT0
SETB EX0
SETB EA
MOV TMOD,#01H
MOV TH0,#4CH
MOV TL0,#00H
SETB ET0
HERE: AJMP HERE
INTE0: CLR P1.2
CLR P2.0
CLR EX0;可有可无
SETB TR0
RETI
ORG 0080H
INT120: MOV TH0,#4CH
MOV TL0,#00H
INC R0
HERE0:CJNE R0,#14H,HERE0;典型过错1
;此程序已经在定时器T0中止内部,使用
;此程序等候T0中止,中止无从进入。所以
;程序在此行成死循环,即停在此处。声光
;报警发动但停不下来。
SETB P1.2
SETB P2.0
CLR ET0
RETI
END
*/
/*典型过错二*/
/*ORG 0000H
AJMP MAIN
ORG 0003H
AJMP INTE0
ORG 000BH
AJMP INT120
ORG 0030H
MAIN: MOV R0,#00H
SETB IT0
SETB EX0
SETB EA
MOV TMOD,#01H
MOV TH0,#4CH
MOV TL0,#00H
SETB ET0
HERE: AJMP HERE
INTE0: CLR P1.2
CLR P2.0
CLR EX0;可有可无
SETB TR0
RETI
ORG 0080H
INT120: MOV TH0,#4CH
MOV TL0,#00H
INC R0
CJNE R0,#14H,HERE;典型过错2
;此程序已经在定时器T0中止内部,使用
;此程序等候T0中止,中止无从进入。所以
;程序在此行成死循环,即停在此处。声光
;报警发动但停不下来。和上例相同。
SETB P1.2
SETB P2.0
CLR ET0
RETI
END
*/
/*正确答案*/
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP INTEX0
ORG 000BH
AJMP INTT0
ORG 0030H
MAIN:MOV R0,#00H
SETB EX0
SETB IT0
MOV TMOD,#01H
MOV TH0,#4CH
MOV TL0,#00H
SETB EA
SETB ET0
HERE:CJNE R0,#14H,HERE
MOV R0,#00H
SETB P2.0
SETB P1.2
CLR TR0
AJMP HERE
INTEX0: SETB TR0
CLR P2.0
CLR P1.2
RETI
INTT0: MOV TH0,#4CH
MOV TL0,#00H
INC R0
RETI
END

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/xitong/266606.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部