我刚开始学习
单片机AT89S51,正在练习外部中断,有一个问题不明白请大家指教,当外部中断INT1发生并执行相应的中断子程序时,外部中断INT0如果发生的话,会执行相应的中断子程序吗?汇编程序如下:
ORG 00H;
JMP READY;
ORG 03H;
JMP INT_0;
ORG 13H;
JMP INT_1;
READY:
MOV IE,#85H;
MOV A,#80H;
MAIN:
MOV P0,#0F0H;
JMP MAIN;
INT_0: ;向右的流水灯
RR A;
MOV P0,A;
CALL DELAY;
JMP INT_0;
RE
ti
INT_1: ;向左的流水灯
RL A;
MOV P0,A;
CALL DELAY;
JMP INT_1;
RETI
DELAY: ;延时
MOV R5,#50;
D1:
MOV R4,#20;
D2:
MOV R3,#248;
DJNZ R3,$
DJNZ R4,D2
DJNZ R5,D1
RET
END
我的实验现象是:分别响应外部中断INT0和INT1时均能实现设定的目标,但当我先响应外部中断INT1,再响应外部中断INT0时,向左的流水灯无法变为向右。
谢谢你了 我试试
一周热门 更多>