当前位置: 代码迷 >> 单片机 >> 51单片机中断函数里可以放一个while死循环吗?解决办法
  详细解决方案

51单片机中断函数里可以放一个while死循环吗?解决办法

热度:34   发布时间:2016-04-28 16:02:44.0
51单片机中断函数里可以放一个while死循环吗?
我是想做一个串口中断的函数。程序是控制4个灯闪烁的,主函数里4个灯依次点亮,当PC给串口发送0X01,进入中断,我想让4个灯同亮同灭,一直循环下去,知道串口再接收到0X02指令,退出中断函数回到主函数里继续执行4个灯依次点亮。
这样应该怎样做到啊?
那4个灯同亮同灭,我只想到了while(2)死循环,可是进入死循环,怎么判断接收到的指令0X02呢?还有怎样退出死循环呢?

------解决方案--------------------
那中断永远不能返回
------解决方案--------------------
串口中断根据接收到的指令,用标志变量。主函数里用死循环,根据标志变量执行相应的操作。
------解决方案--------------------
中断里用死循环就是找死。中断函数是根据中断类型调用其他函数的,具体执行内容在其他函数里写,中断函数越快退出越好
------解决方案--------------------
中断里还能死循环啊,~
  相关解决方案