我自己重新编了一个按键输入的程序,发现一直死在while循环里面出不来,求高手帮忙!

2019-07-20 20:54发布

我自己重新编写了教程里面的按键输入实验,只将前两种判断改成调用两个函数,调用的函数里面我已经设置了入口参数啊,当判断是WKUP_PRES时yes=1,然后转到调用的函数一直执行while(led==1)下面的语句,当有其他按键按下时yse=0就可以跳出while(led==1)这个循环了啊,为什么会死在那里呢?附件里面有我的程序,希望哪位高手帮我看看怎么能实现判断是WKUP_PRES时就一直调用那个函数,当按到其他键时就执行其他的语句。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
6条回答
ianhom
2019-07-21 12:35
因为你的while(led == 1)中有延时,所以处理起来要麻烦一点点:
1、裸奔的环境下弄个状态机,把while(led == 1)中的操作分成几个状态:delay状态,控LED亮状态;控LED灭状态,这样相应的操作就是插入到外层的while(1)中,就可以检查按键状态。
2、上个事件驱动的调度内核+PT协程
3、上个rtos(ucos、freertos),分成几个任务可以实现

一周热门 更多>