标题:
单片机汇编语言两级中断Proteus仿真程序 闪烁灯
[打印本页]
作者:
sgw666
时间:
2019-11-21 09:32
标题:
单片机汇编语言两级中断Proteus仿真程序 闪烁灯
51hei.png
(25.35 KB, 下载次数: 74)
下载附件
2019-11-21 18:40 上传
单片机源程序如下:
ORG 0000H ;在0000H单元存放转移指令,从零开始
LJMP START ;转移到主程序
ORG 0003H ;外部中断0入口
LJMP EXT0;转移到外部中断0的中断服务程序
ORG 0013H;外部中断1入口
LJMP EXT1;转移到外部中断1的中断服务程序
ORG 0030H;主程序从0030H开始存放
START: MOV IE, #10000101B;CPU INTO共轭 INT1共轭 开放中断
MOV IP, #00000100B;INT1共轭高优先级中断
MOV TCON, #00000101B;INT0 共轭 INT1共轭为下降沿触发
MOV SP, #3FH;重置堆栈
LOOP: MOV P2, #03H;点亮2只LED
AJMP LOOP;等待中断
EXT0: PUSH ACC;保护现场
PUSH PSW;
MOV R2, #0AH;闪烁19次
LOOP1: MOV P2, #00H;使LED0 LED1熄灭
LCALL DELAY;
MOV P2, #01H;使LED0亮
LCALL DELAY;
DJNZ R2, LOOP1;循环10次
POP PSW;
POP ACC;
RETI
EXT1: PUSH ACC;保护现场
PUSH PSW;
MOV R3, #0AH;闪烁10次
LOOP2: MOV P2, #00H;使LED0 LED1灯灭
LCALL DELAY;
MOV P2, #02H;使LED1亮
LCALL DELAY;
DJNZ R3, LOOP2;循环10次
POP PSW;
POP ACC;
RETI;中断返回
DELAY: MOV R5, #20;延时程序
DLY1: MOV R6, #200;
DLY2: MOV R7, #200;
DJNZ R7, $;
DJNZ R6, DLY2;
DJNZ R5, DLY1;
RET;中断返回
END;汇编结束
复制代码
所有资料51hei提供下载:
两级中断.zip
(18.77 KB, 下载次数: 20)
2019-11-21 09:31 上传
点击文件名下载附件
gimgoon
下载积分: 黑币 -5
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1