初学者请教个中断的问题,谢谢!

2019-03-24 20:04发布

电平触发方式的中断不是应该保持中断状态么?
咋我这个接地之后只是变化的慢了而不是完全不动呢?

 #include void delay(unsigned int z); //延迟子程序声明
sbit dula=P1^0; //段锁位
sbit A1=P2^2;
sbit B1=P2^3;
sbit C1=P2^4; //38译码器用的三个口
sbit E1=P2^7; //中断用的。

我将此口接到一个发光二极管上

char num; unsigned char code table[]={ 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71}; //从0-f的编码表格
 void main()
{ EA=1; //开总中断
EX0=1; //开外部中断0
A1=1; B1=1; C1=0; //用38译码器选择第四口
while(1) { for(num=0;num<16;num++)
 { E1=1; //中断回复时熄灭二极管
dula=1; //锁存器导通
P0=table[num]; //我将P0口接在数码管的段选上了
 dula=0; //锁存
delay(200); //延迟大概1秒 } } }
void delay(unsigned int z)
{ unsigned x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); //延迟子程序大概z=1000时是一秒 }

void exter0() i
nterrupt 0 { E1=0; //中断时点亮二极管 } /*奇怪P3^2接地之后数码管并不是中断了而是变化得慢了!取消接地则恢复速度!*/
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。