标题:
PROTEUS仿真:通过单片机外部中断控制LED和数码管(汇编程序)
[打印本页]
作者:
多喝点
时间:
2020-1-31 17:19
标题:
PROTEUS仿真:通过单片机外部中断控制LED和数码管(汇编程序)
功能描述:
当无外部中断时:
点亮LED
先点亮第1,3,5,7个LED
后点亮第0,2,4,6个LED
当INT0端口产生中断时:
将LED灯组一个一个点亮,共循环一次
仿真电路图:
1.PNG
(61.02 KB, 下载次数: 47)
下载附件
2020-1-31 17:06 上传
仿真程序代码:
ORG 0000H
AJMP MAIN
ORG 0003H
AJMP INT_0
ORG 0013H
AJMP INT_1
ORG 0030H
MAIN:
MOV IE,#85H;
;MOV IP,#4H;
MOV TCON,#5H;
MOV P2,#10101010B;
LCALL DELAY;
MOV P2,#01010101B;
LCALL DELAY;
LJMP MAIN;
;================================================
INT_0:
PUSH ACC;
PUSH PSW;
MOV R0,#8;
MOV A,#00000001B;
LOOP:
MOV P2,A;
LCALL DELAY;
RL A;
DJNZ R0,LOOP;
POP ACC;
POP PSW;
RETI;
;===============================================
INT_1:
PUSH ACC;
PUSH PSW;
SETB RS1;
CHUTAI:
MOV R2,#4;
MOV DPTR,#TAB;
CISHU:
MOV R0,#0FFH;
MOV R1,#10;
DJNZ R2,NEX;
LJMP FINAL;
NEX:
INC R0;
MOV A,R0;
MOVC A,@A+DPTR;
SHOW:
MOV P0,A;
LCALL DELAY;
LCALL DELAY;
LCALL DELAY;
DJNZ R1,NEX;
LJMP CISHU;
FINAL:
POP ACC;
POP PSW;
RETI;
;==============================================
DELAY:
MOV R7,#11111111B;延时一段时间?
D1:
MOV R6,#11111111B;
DJNZ R6,$;
DJNZ R7,D1;?
RET;子程序返回
;=============================================
TAB:
DB 3Fh,06h,5Bh,4Fh,66h,6Dh,7Dh,07h,7Fh,6Fh;
END;
复制代码
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1