|
试验1:当你按键没有按下时,原来P3口被置高(MAIN: MOV P3,#0FFH ),当你按将按下以后,P3口被拉低,此时会产生一个下降沿(从高到低),而我们的外部中断也是设置成下降沿触发(SETB IT0 ;//设置外部中断0为下降沿触发 ),这个下降沿会触发外部中断,此时就会进入LOOP1 对P1.1清零,由于P1.1接发光二极管,且低电平亮,所以按一下按键,P1.就会被清零一次,(CPL P1.1 )灯就会亮一下
ORG 0000H
LJMP MAIN
ORG 0003H
LJMP LOOP1
ORG 0030H
MAIN: MOV P3,#0FFH //将P3口全部赋予高电平
SETB IT0 ;//设置外部中断0为下降沿触发
SETB EX0 ;//开放外部中断0
SETB EA ;//开放总中断
SJMP $
LOOP1: CPL P1.1//对P1.1端口清零
RETI
END
试验2:由于P3口被赋予了低电平,按键按下以后还是低电平,没有下降沿就不能触发外部中断,不会执行LOOP1。因此P1.1没有被清零
(CPL P1.1 ),由于P1,P2,P3口都有上拉电阻,就是当没有对端口操作时,它是处于一种上拉态,就会输出高电平,因此发光二极管会一直亮 |
|