keil编程用proteus中仿真外部中断问题

2025-03-22 02:31:04
推荐回答(2个)
回答1:

你这是在自问自答啊,还来这里提问什么呀!可最后还是解决不了吧。
类似的用按钮作外部中断信号的,一定要用下降沿有效申请中断才行的,这样才保证按下按钮只中断一次。而你用电平中断,只要按钮不释放就会不断地中断,这样在主程序和中断程序之间不停的转换,当然主程序速度就要慢了。
而在中断程序中加无限循环是削足适履的作法,肯定是不行的,这样会只执行一次中断,但也跳不出中断了吧。
设置用下降沿中断,在
EA=1;
EX0=1;
后面加一条就可以了,IT0=1。

回答2:

要实现你的目的,可在中断这样写:
void inter() interrupt 0
{
while(csda==0){
XXXXXX(想执行的语句);
}
}
通过检测P3.2口电平高低,判断按键是否弹起。