3374| 2
|
[入门教程] 【仿真】掌控板按键控制小灯 |
上一篇文章: 有光明的地方,就有人类文明。 从粗糙的石灯到青铜灯,陶瓷灯到现代的电灯, 灯具的历史变迁打上了深刻的时代烙印,同时也是社会经济和文化的缩影。 今天利用mPython仿真功能分享一盏按键小灯 一、知识库 1、了解机械按键A B 2、掌握使用按键控制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恰好避开了抖动期。 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed