新人求助C51的一个程序问题....万分感谢

2019-07-15 22:19发布

刚学单片机2天 ,有一定C语言基础。 刚编一个4个按键控制4种不同的流水灯,可是运行的时候,当按下其中一个键之后,它就一直循环那一个流水灯,剩下的怎么按也不管用了,下面是程序 ,请问应该用什么方法在检测到其他按键按下时就可以调到那个流水灯的循环下工作- -
void main()
{
        while(1)
        {
                if(K1==0)
                {
                        while(1)
                        {
                                right();
                        }
                }
                if(K2==0)
                {
                        while(1)
                        {
                                left();
                        }
                }
                if(K3==0)
                {
                        while(1)
                        {
                                middle();
                        }
                }
                if(K4==0)
                {
                        while(1)
                        {
                                side();
                        }
                }
        }

}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
mzh2630
1楼-- · 2019-07-16 00:51
 精彩回答 2  元偷偷看……
落灬桐
2楼-- · 2019-07-16 01:15
while(1)是死循环,所以一直循环那个流水灯,跳不出来。
mzh2630
3楼-- · 2019-07-16 02:41
落灬桐 发表于 2013-9-29 11:30
while(1)是死循环,所以一直循环那个流水灯,跳不出来。

那我定义一个变量判断怎么样
ntmusic
4楼-- · 2019-07-16 05:26
最简单的解决办法:每个流水灯程序都加入按键检查,并跳出
mzh2630
5楼-- · 2019-07-16 10:35
ntmusic 发表于 2013-9-29 12:37
最简单的解决办法:每个流水灯程序都加入按键检查,并跳出

好的 谢谢啦
Luyisiana
6楼-- · 2019-07-16 11:38
 精彩回答 2  元偷偷看……

一周热门 更多>