rzegkly 发表于 2020-2-16 11:51:30

【仿真】掌控板按键控制小灯


上一篇文章:【仿真】掌控板显示字符有光明的地方,就有人类文明。从粗糙的石灯到青铜灯,陶瓷灯到现代的电灯,灯具的历史变迁打上了深刻的时代烙印,同时也是社会经济和文化的缩影。今天利用mPython仿真功能分享一盏按键小灯 一、知识库1、了解机械按键A B2、掌握使用按键控制RGB灯的方法3、学会调用掌控板中的图片二、学一学1. 按键消抖   按键消抖通常的按键所用开关为机械弹性开关;   当机械触点断开、闭合时,由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开。   因而在闭合及断开的瞬间均伴随有一连串的抖动,为了不产生这种现象而作的措施就是按键消抖。   抖动时间的长短由按键的机械特性决定,一般为5ms~10ms。这是一个很重要的时间参数,在很多场合都要用到。   按键稳定闭合时间的长短则是由操作人员的按键动作决定的,一般为零点几秒至数秒。2.RGB色彩模式,RGB即是代表红、绿、蓝三个通道的颜色,常见颜色。三、想一想    如何通过A、B按键控制RGB灯的开关 四、做一做:1.在左侧找到显示块,获取内置图像块
2.认识内置图片代码的含义
3.在左侧找到输入块,按键输入块
4.在左侧找到RGB灯块,设置灯的开关
5.主程序,显示文字信息6.子程序,按下按键A开灯,按下按键B关灯,五、练一练    通过A、B按键控制RGB灯的开关
六、知识拓展    消抖是为了避免在按键按下或是抬起时电平剧烈抖动带来的影响。按键的消抖,可用硬件或软件两种方法。   1.硬件消抖,   在键数较少时可用硬件方法消除键抖动。下图所示的RS触发器为常用的硬件去抖。图中两个“与非”门构成一个RS触发器。当按键未按下时,输出为0;当键按下时,输出为1。此时即使用按键的机械性能,使按键因弹性抖动而产生瞬时断开(抖动跳开B),只要按键不返回原始状态A,双稳态电路的状态不改变,输出保持为0,不会产生抖动的波形。也就是说,即使B点的电压波形是抖动的,但经双稳态电路之后,其输出为正规的矩形波。这一点通过分析RS触发器的工作过程很容易得到验证。    2.软件消抖   如果按键较多,常用软件方法去抖,即检测出键闭合后执行一个延时程序,5ms~10ms的延时,让前沿抖动消失后再一次检测键的状态,如果仍保持闭合状态电平,则确认为真正有键按下。当检测到按键释放后,也要给5ms~10ms的延时,待后沿抖动消失后才能转入该键的处理程序。
一般来说,软件消抖的方法是不断检测按键值,直到按键值稳定。实现方法:假设未按键时输入1,按键后输入为0,抖动时不定。可以做以下检测:检测到按键输入为0之后,延时5ms~10ms,再次检测,如果按键还为0,那么就认为有按键输入。延时的5ms~10ms恰好避开了抖动期。https://v.youku.com/v_show/id_XNDU0ODk3MjM2MA==.html?spm=user.playlsit.page.26

DFrJ5KYVQaH 发表于 2020-2-17 09:59:37

很好,学习中

kylinpoet 发表于 2020-2-17 22:14:34

这个好,必须支持。
页: [1]
查看完整版本: 【仿真】掌控板按键控制小灯