标题:
中断
[打印本页]
作者:
/LU/
时间:
2016-7-14 22:31
标题:
中断
#include<reg52.h>
void main()
{
P1=0;
EA=1;
EX0=1;
TCON=0X01;
while(1);
}
void cheng() interrupt 0
{
P1=!P1;
}
为什么我只有按独立按键第三个才有反应,而且也只是有一个灯灭
不应该是4个键都可以,led灯一起亮灭吗?
作者:
trm999
时间:
2016-7-15 04:24
P1=0????
作者:
danpianji258
时间:
2016-7-15 10:21
不是很清楚你的意思,但是从你大概描述看,如果你要操作P1的所有IO口不能直接写P1=0 ,需要写成16进制 P1=0X00;P1=0XFF;如果需要位操作就必须先声明:sbit P1^3=XX
作者:
/LU/
时间:
2016-7-15 22:17
danpianji258 发表于 2016-7-15 10:21
不是很清楚你的意思,但是从你大概描述看,如果你要操作P1的所有IO口不能直接写P1=0 ,需要写成16进制 P1= ...
P1=0是可以的,问题好像是只有3.2端口按下才触发跳变沿,其他的不触发,可是是为什么啊?
作者:
hantp
时间:
2016-7-16 16:30
本帖最后由 hantp 于 2016-7-16 16:31 编辑
你的中断就是INT0,当然只有P3.2按下好用。
作者:
g89835123hjkl55
时间:
2016-7-17 15:48
P3口由两个功能 在寄存器相应的设置 才能出发第二个功能比如外部中断 只有P3^2 和P3^3有外部中断的功能,其他的I/O口没有 当然不好使了
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1