stm32怎么实现流水灯的一键亮灭

殉929 2021-04-04 01:27:25
我的思路是把按键扫描函数放到主函数里,闪烁函数放到中断里,可还是无法实现
...全文
583 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xws245925587 2021-04-11
  • 打赏
  • 举报
回复
修改你的按键检测代码,按键按下没释放的时候(注意做好消抖,可用定时器来做),下一个轮询时间片发现按键状态没改变,不触发按下时间
GlenXu_007 2021-04-09
  • 打赏
  • 举报
回复
中断里用不用延时看你的程序总体了,如果你愿意,在开个定时更好了。
Ayyee 2021-04-09
  • 打赏
  • 举报
回复
用外部中断,按键按下,触发外部中断;然后进行一系列的灯的处理,你想灯是什么样都行。不用定时器,不用扫描。
yishumei 2021-04-06
  • 打赏
  • 举报
回复
消抖延时增加到20ms
殉929 2021-04-05
  • 打赏
  • 举报
回复
引用 1 楼 GlenXu_007 的回复:
请采用如果 KeyNum==1 延时,20ms, 再判断是否为0,如果是零开始执行,否则不动作,这样就好来, 否则按下时程序反复执行,没有稳态!
刚刚实验了一下,还是不稳定,有时能关闭有时关不了
殉929 2021-04-05
  • 打赏
  • 举报
回复
引用 1 楼 GlenXu_007 的回复:
请采用如果 KeyNum==1 延时,20ms, 再判断是否为0,如果是零开始执行,否则不动作,这样就好来, 否则按下时程序反复执行,没有稳态!
不是说中断里最好不要用延时函数吗?
GlenXu_007 2021-04-05
  • 打赏
  • 举报
回复
请采用如果 KeyNum==1 延时,20ms, 再判断是否为0,如果是零开始执行,否则不动作,这样就好来, 否则按下时程序反复执行,没有稳态!

27,511

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧