多功能按键的实现方法,单击,双击,三击,短按,长按
公司一个刚毕业不久的小朋友在做一个多功能的按键驱动,他想不出方法,于上老大让我帮忙,我看了一下需求,写起来确实有点复杂,所以要借助一些思维导图写一个状态机比较好解理。以下我将一个功能的按键的实现画成了状态机(单击,双击,三击,短按,长按),话不多说直接上代码:#define KEY_PRESS (1)#define KEY_RELEASE (0)struct keypad_msg { uint8_t click_cnt; // key_cnt 1~3 times
原创
2021-02-23 14:37:44 ·
4251 阅读 ·
2 评论