键盘的键盘扫描

时间:2014-02-17 10:21:03

标签: c driver microcontroller keypad

我开发了一个用于微控制器键盘的c驱动程序。我想改变它,以便当我按下1时,它会显示1,直到我按下另一个数字。截至目前,只有按下数字才会改变数字,这意味着一旦我松开键盘上的按钮,它就会消失。请大家了解我将如何实施我想要的改变。

2 个答案:

答案 0 :(得分:2)

将最后一个按下的键存储在您“显示”的变量中(或按照您的意愿执行操作),直到您将变量更改为新的键值时按下下一个键。

答案 1 :(得分:1)

您应该创建一个变量来保持按下的键值,然后在单击特定按钮(键)时更新屏幕。假设您有一个名为getPressedKey()的函数,它返回按下的键的数值,这就是如何根据按下的键实现片段更新屏幕。

    char pressedKey = 0;
    /*
    *loop endlessly
    *wait for keypress
    *update screen with with pressed key value
    */
    while(1)
    {
    pressedKey = getPressedKey(); //store pressed key in pressedKey variable
    updateDisplay("Pressed key is %c",pressedKey); // display key value
    }
相关问题