感谢LZ,看了这种处理方法我也将自己之前的问题一下给解决了。状态机按键放在定时中断中,每隔20ms进行按键扫描,每扫描一次得到一次按键值,怎样得到有效的按键值进而进行按键事件处理呢?这时就必须把这些按键值存入到键值缓冲区,这样才不至于造成将有效的按键值被上一次的按键值淹没覆盖或漏掉的情况,然后从缓冲区中读取键值,读一次进行一次按键事件的处理,这样能保证每次的按键值得到有效的处理。说白了这个键值缓冲队列目的就是让得到的按键值和对应的按键处理事件达成一致,一次按键值就要去执行一次按键处理事件,这样才不至于按键的动作没有得到及时有效的执行,LZ我这样的理解对么? |
|