打印

单片机中断无法响应问题,求大神回答

[复制链接]
1479|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
puppet21|  楼主 | 2013-9-17 15:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
代码出现了一点很奇怪的问题,就是如果buttonin按下后,响应了buttonin后,这时候再按下button2,就不再执行button2里面的代码了,而且再按buttonin也没有反应。如果先按button2,再按buttonin,buttonin依然能够响应,但再按button2,也就都没法响应,请问这是怎么回事?
主函数代码
        while(1)
        {           
                         if(buttonin == 1)
           {
           buttonin = 0 ;
           sendcontrol(1,0x11)        ;               
           }
          
           if(button2 == 1)
           {
                  sendcheck(2);
                  button2 = 0 ;
           }
        }
两个中断代码;
void room_INT2() interrupt 2
{
        button2 = 1 ;
}

void room_INT0() interrupt 0
{
    buttonin = 1 ;
}

以前也出现过类似问题,但没在意,但这次要反复发送数据,

相关帖子

沙发
puppet21|  楼主 | 2013-9-17 15:24 | 只看该作者
中断函数还是能响应的,但是main函数不执行!!求解

使用特权

评论回复
板凳
y651503148| | 2013-9-17 15:29 | 只看该作者
中断标志位清零。

使用特权

评论回复
地板
NE5532| | 2013-9-17 15:37 | 只看该作者
什么单片机?中断标志是否需要人工清除?两个中断有没有优先级?

使用特权

评论回复
5
逍遥派掌门| | 2013-9-17 15:53 | 只看该作者
本帖最后由 逍遥派掌门 于 2013-9-17 15:56 编辑

应该是 sendcontrol(1,0x11) 和 sendcheck(2) 乱搞了什么,

极有可能是:  你打他一耳光,他打你一耳光,然后两人都晕倒了。

还有可能:     两人只会打转转,就是不懂得跑到终点。

使用特权

评论回复
6
ayb_ice| | 2013-9-17 16:38 | 只看该作者
逍遥派掌门 发表于 2013-9-17 15:53
应该是 sendcontrol(1,0x11) 和 sendcheck(2) 乱搞了什么,

极有可能是:  你打他一耳光,他打你一耳光, ...

极有可能

使用特权

评论回复
7
puppet21|  楼主 | 2013-9-17 17:40 | 只看该作者
嘿嘿~!问题解决了~是卡在死循环里了,因为有一个判断语句的符号优先级我没注意,结果永真,然后就死循环了~

使用特权

评论回复
8
puppet21|  楼主 | 2013-9-17 17:40 | 只看该作者
谢谢各位啦

使用特权

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

本版积分规则

16

主题

140

帖子

0

粉丝