一段错误的按键扫描程序引起的疑问

2019-07-21 08:11发布

一段错误的按键扫描程序引起的疑问
总是只有第一个键值(如下图的2)是正确的,为什么?当我把if (KEY_Scan(0)==1)放在最前面的时候,就只有1对应的按键有效,其余没用。
这段代码我大概知道问题出在哪里,可是我觉得应该每个按键都无法正常工作,可是排第一的总是可以正常工作为什么呢?
        while(1)
        {               
        if (KEY_Scan(0)==2)
        {
                p=50;
        }
        if (KEY_Scan(0)==1)
        {
                p=10;
        }
       
        if (KEY_Scan(0)==3)
        {
                p=80;
        }
        if (KEY_Scan(0)==4)
        {
                p=110;
        }
        LCD_Fill(50,p,70,p+20,BLUE);

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
1208
1楼-- · 2019-07-21 09:41
改成else if
xiatianyun
2楼-- · 2019-07-21 14:26
这个可能和KEY_Scan的执行有关。不妨只执行一次存入临时变量再判断这个变量。
csmjmcc
3楼-- · 2019-07-21 18:42
 精彩回答 2  元偷偷看……

一周热门 更多>