RB06 按键控制
课程概述
- 课程名称:见标题
- 课程时长:40 分钟 × 2
- 课程内容:学习电子按键的作用和操作方法
- 学生群体:3~6 年级
本课内容参考来源:
1. 《树莓派初级课程V1(吴俊杰老师18课时)》第 7 课
2. 课件 1.0 初级 1,第 06 课
3. 其它内容增删调整
教学目标
考察点
- 认识按钮元器件
- 了解按钮工作原理
- 能正确连接按钮
- 能使用按钮控制简单操作
知识与技能
- 按钮器件的使用
- 高低电平的概念
- 输入器件的循环检测
- 1/0检测(开关)和布尔逻辑
- 循环体的等待时间
情感价值和学科交叉
本课首次正式向程序中引入外界物理干预,连接物理世界和虚拟世界的“输入”部分。学生通过按钮控制,得到反馈,为下节课学习传感器打好基础。
难点和注意事项
开关电平和逻辑判断是本课重点。 循环中如果没有等待时间,会瞬间执行完成或者阻塞进程(无限空循环)。需要经常向学生传达。
教学准备
- 按教学准备基础要求进行准备
- 其它准备工作:(无)
课堂教学活动
暖场(10分钟)
活跃气氛,复习上节课内容,引入本节课主题
复习:
- 什么是呼吸灯
- 什么是 PWM
课堂讲解:按键控制(70分钟)
教学提纲:
前篇
- 认识按钮
- 任务一:连接和检查按钮
- 任务二:按钮控制小灯亮灭
- 巩固练习:按键控制练习
后篇
- 任务三:按键计数
- 任务四:按键控制灯光状态
- 巩固练习:按键切换灯的闪烁/常亮/常暗
扩展内容 (根据学生程度酌情加入,不影响主线课程进度)
- 逻辑运算:与、或、非
- 扩展练习:按键双击
授课内容:详见下文“讲义”部分。
讲义
(完整授课内容和补充知识)
认识按钮
生活中的按钮:
按键是通过高低电平检测的。
下面是两种不同类型的按钮
任务一:连接和检查按钮
按键的连接:
检测手中的按钮类型,是松开高电平还是按下高电平?
我们课堂上使用的这种按钮,按下的时候信号为 1
任务二:用按钮控制小灯的亮灭
首先连接小灯。
然后我们需要用一个循环来持续监测按钮状态,并控制灯的亮灭。
如下三种形式均能实现,哪一种更好?
注意看它们的差异部分。涉及到布尔量的使用。为了下一个知识点讲授,最终请同学使用第二或第三种形式。
尝试改变循环体的等待时间比如 1 秒,会有什么现象?
会发现按钮控制亮灭的灵敏度降低。
如果在控制小灯亮的条件分支中,小灯亮了之后插入一个等待呢?(延时熄灭)、
巩固练习:各种按键控制
- 试试看通过一个按钮控制多个灯;同步/不同步。
- 试试看通过一个按钮控制多个灯,但是一次只能亮一个灯(类似流水灯)。
- 两个按钮控制一个小灯,实现双(联)控?
任务三:按键计数
恭喜同学已经可以用按钮状态控制灯的亮灭了!
这一环节,让我们再来挑战按钮的数值:每按下一次按钮,调试输出的值增加1,开动脑筋,一起来尝试!
为什么要在计数加一的地方加延时?即使延时,是不是仍然有问题?有没有更好的方案?
巩固练习:按键计数减一
学生自行尝试完成。
任务四:按键切换状态
前面我们用按下开灯,松开灭灯。
生活中其实很多地方,按钮按下时会改变“状态”。比如按一下开灯,再按一下关灯。我们来试试实现。
这里,我们用到了一个“逻辑非”操作,来反转灯光的状态。逻辑值“真”/“假”在这块“设置 GPIO
扩展知识:与、或、非。
常见的逻辑运算:与、或、非 计算机原理,二进制的开关电路实现
巩固练习:按键切换灯的闪烁/常亮/常暗
扩展练习:按键双击
要实现“双击”的检测,我们不能简单地判断“状态”,而要判断“动作”。
一个按键,通常有这么几种动作:按下(注意和状态“按下”区分)、松开(注意和状态“松开”区分)、单击、双击、长按
- 按钮的单双击判断怎么做?
[TODO]: design the case
课件
根据本教学计划和讲义,以及具体授课对象编写。
文件名应为:
RB06-按键控制.pptx