标题:
用单片机外部中断0控制P1.0所接的LED亮起来(下降沿触发)
[打印本页]
作者:
wudawei
时间:
2014-12-31 14:41
标题:
用单片机外部中断0控制P1.0所接的LED亮起来(下降沿触发)
51单片机入门程序14
;工程名称:用外部中断0控制P1.0所接的LED亮起来(下降沿触发)
;编写日期:2009.7.4
;编写者:蓝柳柳
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ORG 0000H
AJMP QQ ;跳转到主程序QQ去运行
ORG 0003H ;外部中断0入口地址
LJMP QQQ ;转到中断服务程序QQQ处去运行
ORG 30H
QQ:
MOV P1,#1111111B ; 熄灭掉PI端口的灯,等下运行中断服务程序时P1.0就亮
MOV P3,#1111111B ;让P3.2这引脚置为高电平,等下按下其所接的开关将有下降沿触发
SETB IT0 ;外部中断0条件
SETB EX0 ;外部中断0条件
SETB EA ;外部中断0条件
LOOP:AJMP LOOP ;单片机正在做自己的事情,这里的语句说明单片机在等待
QQQ:CPL P1.0 ;对P1.0该脚取反,即让P1.0所接的LED亮起来
ACALL YS ;延时,亮1秒钟
RETI ;中断服务程序返回,返回到LOOP处等待下次中断
YS: ;延时子程序,如果是用12MHZ作为时钟电路的话,那么延时时间为1秒
MOV R1,#10
D: MOV R2,#200
T: MOV R3,#248
DJNZ R3,$
DJNZ R2,T
DJNZ R1,D
RET ;子程序返回指令,子程序的设计一般都是因为主程序要调用它,
;调用完是要返回到主程序继续运行下一个语句的
END
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1