怎么进不了外部中断1?

2020-02-05 09:21发布

请热心的朋友看下面的程序,进不了外部中断1,若改为EX0=1;  EX1=0; 可以进外部中断INT0,
改为EX0=0;  EX1=1;后,但都进不了INT1.
说明:MCU:AT89S52, KEILC 评估版编译, P14是跳线,接地可使Pulse01,Pulse02产生下降沿
的脉冲连线给P3.2,P3.3产生外中断.
#include "reg52.h"
#include "intrins.h"
#define uchar unsigned char
#define uint unsigned int
sbit P10=P1^0;  //Test pin
sbit P14=P1^4;  //Test key
sbit Pulse01=P1^5;  //For INT0;
sbit Pulse02=P1^6;  //For INT1;
//--------------------------------
void int0() interrupt 0
{
EX0=0;
P10=0;
}
void int1() interrupt 2
{
EX1=0;
P10=0;
}
//--------------------------------
void main()
{
EA=1;
IT0=1;  //falling edge on INT0(P3.2)
IT1=1;  //falling edge on INT0(P3.3)
IE0=IE1=0;
//EX0=1;  //disable INT0
EX1=1;   //enable INT1
while(1)
{
if(P14==0)
{
Pulse01=0;       //for INT0  P1.5==>P3.2
Pulse01=1;
Pulse02=0;       //for INT0  P1.5==>P3.3  
Pulse02=1;
}
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。