用外部中断INT1实现对P1口8个LED状态取反

使用的事AT89C51芯片。 汇编语言或者C语言均可 谢谢

#include<reg52.h>

voidIntConfiguration()
{ //设置INT0
IT0=1;//外部中断0跳变沿触发方式(下降沿)
EX0=1;//打开INT0的中断允许。
//设置INT1
IT1=1;//设置外部中断1为跳变沿触发方式
EX1=1;//打开外部中断0中断允许
EA=1;//打开总中断
void main()
{
IntConfiguration(); //外部中断初始化
P1=0xff; //设定P1口的初始状态
while(1)
{
} //在此等待进入外部中断
}
void zhongduan()interrupt 0
{
P1=~P1;
}追问

有好多错误啊。。 能修改下吗

追答

好 稍等下
#include

void IntConfiguration()
{ //设置INT0
IT0=1;//外部中断0跳变沿触发方式(下降沿)
EX0=1;//打开INT0的中断允许。
//设置INT1
IT1=1;//设置外部中断1为跳变沿触发方式
EX1=1;//打开外部中断0中断允许
EA=1;//打开总中断
}
void main()
{
IntConfiguration(); //外部中断初始化
P1=0xff; //设定P1口的初始状态
while(1)
{
} //在此等待进入外部中断
}
void zhongduan()interrupt 0
{
P1=~P1;
}

追问

这个虽然通过了编译,但是它不能让p1.0-p1.7口的灯实现高低电位的转换。。

追答

。。。外部中断需要触发的啊 这不是下降沿出发吗 你把一根导线 一端接gnd 另一端去接触ini0的引脚 才能进入中断

追问

我肯定是在proteus中仿真过了才会发现是这样的问题啊

温馨提示:答案为网友推荐,仅供参考
相似回答