1.8.3.串口输出和按键消抖

朱老师笔记

1.8.3.1、基于串口标准输出的按键调试

(1)以之前的串口stdio的工程为基础来移植添加轮询方式按键处理。
(2)注意USB下载方式可能有错误(有可能不下载,也有可能下载了执行不对),解决方案是用SD卡启动来替代。
1.8.3.2、什么是按键消抖
(1)按键这种物理器件本身会有抖动信号,抖动信号指的是在电平由高到低(也就是按键按下时)或者电平由低到高(也就是按键弹起时)过程中,电平的变化不是立刻变化,而是经过了一段时间的不稳定期才完成变化,在这个不稳定期间电平可能会时高时低反复变化,这个不稳定期就叫抖动(抖动期内获取按键信息是不可靠的,要想办法消抖)。
(2)什么叫消抖?消抖就是用硬件或者软件方法来尽量减小抖动期对按键获取的影响。消抖常用2种思路:第一是硬件消抖,消抖思路就是尽量减小抖动时间,方法是通过硬件添加电容等元件来减小抖动;第二是软件消抖,消抖思路是发现一次按键按下/弹起事件后,不立即处理按键,而是延时一段时间(一般10~20ms,这就是消抖时间)后再次获取按键键值,如果此次获取和上次一样是按下/弹起,那就认为真的按下/弹起了。
(3)一般比较精密需要的时候,需要硬件消抖和软件消抖一起配合。

1.8.3.3、编程实践


《朱老师物联网大讲堂》学习笔记

学习地址:www.zhulaoshi.org


串口输出,

即在上节移植printf的基础之上,

在按键按下中,调用printf函数进行输出,

效果就是,按键按下,串口printf输出内容,


按键消抖


理想状态:按键按下与弹起,电压是直上直下的,非常规整,

现实中好一点的情况是,有一定弧度的上下变化,

实际情况可能是高地电平的变化,电压一上一下,抖动。


在此我们需要去消抖,用硬件或软件的方式。


硬件方式是缩短这个抖动期,软件消抖是绕过这个抖动期。


软件消抖有个麻烦的地方是,这个延时时间不好掌握。


软件实现,就是在按下某个案件后并不立即作出反应,

而是等待某个时间,如果获取的按键状态一致则做出相应的反应。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值