打印

这个PIC16F877A的外部中断为什么会进入死循环

[复制链接]
3074|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tcc8073|  楼主 | 2010-10-14 18:08 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我的项目用到232串口和外部RB0中断,但是发现RB0外部中断会进入死循环,不知道是什么原因
void   interrupt usart()
  {
    if(INTE&&INTF)  
    {
     ;//应用程序
    }     
     INTF=0;
     RCIF=0;
     INTE=0;
     RCIE=1;
  }
沙发
quanlin| | 2010-12-2 17:40 | 只看该作者
这是因为串口通信的时候只要是能了串口发送器并且发送缓存器为空的话会自动产生中断。应该在适当的位置将TXIE = 0!

使用特权

评论回复
板凳
XIEYUANBIN| | 2010-12-3 09:50 | 只看该作者
端口电平变化中断之后要读一下相应的端口才能解除死循环。

使用特权

评论回复
地板
zdhlixiang2006| | 2010-12-3 22:17 | 只看该作者
跟这段没关,你别的地方没做好

使用特权

评论回复
5
追梦的阿土哥| | 2015-6-6 21:02 | 只看该作者
楼主知道PIC16F877A的CCP1中断跟USART的接收、传送中断谁的优先级高吗?

使用特权

评论回复
6
sanxinweiled| | 2015-6-11 17:32 | 只看该作者
    不是这样的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:诚信,务实,专业,创新

179

主题

1359

帖子

7

粉丝