544浏览
查看: 544|回复: 1

【临沂】第5课 小按钮 大用处

[复制链接]
本节内容要学习以下知识点:
1.认识按钮
2.数字信号的获取方法
3.程序分支结构
小小按钮用处大,生活中按钮绝对是无处不在。从我们身边常见的键盘、手机、汽车、遥控器到不常见的火箭升空、核弹引爆它们都由各式的按钮来控制运转的。本课我们将以生活中常见的按钮为例,来尝试使用按钮控制LED灯,让小灯乖乖听话,想怎么亮就怎么亮,有种“一钮在手,天下我有”的气势。
敲黑板:众多的按钮其实可大致划分为两大类,轻触按钮自锁按钮
202004089345..png
                              
本节课我们用两个小案例来体验这两类按钮的妙用,案例虽小但一通百通,认真学习相信我们很快就能实现“天下我有”。
本节课所用硬件设备:
树莓派主板,扩展板,LED灯一盏接扩展板5号接口,按钮一个
案例1.当按钮按下时,LED灯亮,当按钮松开时,LED灯灭(轻触按钮)。
认识按钮
202004081450..png
三个针脚分别连接正极,信号线,负极。我们可以直接把它插到扩展板25号接口,当然你也可以用杜邦线实现稍远距离操控。
数字信号的获取方法
刚拿到一个按钮如果不知道它的内部电路是按下去可以输出高电平“1”还是松开才能输出“1”,可以进行检测获得其按下弹起对应高低电平后再使用。
检测程序:
202004086273..png
思考:为什么要加一个等待积木
原因:机械按钮的一个老毛病--“抖动”,时间为5ms~10ms,按钮抖动会引起程序误读信号多次,所以加一个延时来消除抖动。
通过观察我们发现它有两个状态,按下按钮显示高电平1,松开按钮显示低电平0。
202004085243..png
程序分支结构
它常用于需要先条件判断再执行的场景,根据传感器的不同状态来执行不同的程序代码。说白了就是条件满足我就执行程序,条件不满足我就我就不执行程序,继续等待判断。
202004088726..png
接下来我们来编写程序:
202004084830..png
上传程序看下效果。动动手指就可以实现小灯的亮灭了吧,成就感瞬间爆棚有木有?
案例2.按钮按一下LED灯亮,再按一下LED灯灭(自锁按钮)。
在按钮的使用过程中我们会发现,我们不能老是把手放在按钮上,这样成了按钮控制我们的手了“天下我有”的霸气大打折扣,其实大部分时间按钮是不用去碰它的,其默认状态是松开,处于低电平状态,输出0。只有按下时才对应的是高电平,输出1。
该如何用程序来重振我们的那种霸气呢?
首先建立一个变量,变量是啥往下看。
202004089750..png

整体程序:
202004081669..png
知识拓展
202004081581..png
通过学习同学们还能做出哪些效果呢?期待你的分享。

zsqzsqzs  见习技师

发表于 2020-4-8 09:25:11

学习了,谢谢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2022 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail