• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

能否提供一个实现单按键长按开关机短按调光功能实现思路

xbk_361719 2021-03-30 浏览量:793
目前用状态机+定时器中断(按键检测函数放在中断服务函数里每10ms扫描一次)实现按键长短按,长按灯亮,短按可以循环调光,再次长按灯灭。如果要结合低功耗模式(如:待机)应该怎么实现呢?希望长按开机点亮灯,开机后短按循环调光,开机状态长按关机?被卡了很久,请各位大佬指点一下,谢谢
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 你自己其实想的差不多啦

    关键的还是按键处理,其实分成2种

    1. 普通状态下的按键处理,又分为2种

       1.1 短按,循环设置一个状态

       1.2 长按,切换到待机(关机)状态

    2. 待机状态下的按键处理,只有长按有效,切换到普通状态(开机亮灯)


    从这里看其实有2个大的循环,1个是普通状态循环,1个是待机状态循环

    再有就是对按键处理需要区分2个情况,长按和短按而已。

    • 发布于 2021-03-31
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:1
  • 你都说了状态机了,检测各种状态就好了。难点在于,启动的时候,检测长按,启动后启动状态机。要记住状态机要在开机后才启动,还有就是一键开关机电路要做好。
    • 发布于2021-03-31
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

能否提供一个实现单按键长按开关机短按调光功能实现思路