单元一
第3课 生日蜡烛-播放音乐

一、任务目标
两侧都点亮后播放生日歌,RGB 灯珠继续闪。
二、我们要学什么
- 学习要点:两侧都亮|再播放生日歌
- 本课过关:能完成:说出两侧点亮状态都为真才播放生日歌;载入编程体验,指出主循环里闪灯,两侧都真就播放旋律;再运行完整程序,指出约每 0.1 秒的定时回调里闪灯,主循环里两侧都真才播放生日歌。
- 示例对齐:编程体验对应 「1-3-1 生日蜡烛-播放音乐」;完整程序对应 「1-3-2 生日蜡烛-循环播放」。
三、本节要点
本课要利用光照传感认识两侧都亮才播歌:点亮状态和播放是两步。重难点是分清两套——编程体验在主循环里既闪灯又播歌;完整程序用定时器回调闪灯,主循环负责播歌。要点对齐「两侧都亮|再播放生日歌」。
四、解题思路
任务:利用光照传感,用两套程序认识播放音乐——两侧点亮状态都为真才播放生日歌。编程体验主循环里闪灯并播歌;完整程序定时回调闪灯,主循环播歌。请对照灯珠和蜂鸣器。
本课主要用到:左侧、右侧光照;板载 RGB 灯珠;蜂鸣器。
- 1利用光照传感,观察两侧都亮之后会不会响起生日歌。
- 2光照大于 1000 把对应侧点亮状态写成真,状态为真则随机亮度闪灯。
- 3当「点亮01」和「点亮23」都为真,播放生日歌旋律。
- 4编程体验这些步骤都在主循环;完整程序把闪灯放进周期 100 毫秒的回调。
- 5完成补全与从头编写,并对照现象。
流程示意
五、图形块功能讲解
下面只列出本课首次出现的 Mixly 图形块(真积木截图)。已在前面课讲过的不再重复;先认新块,再点「载入」对照拖搭。
| 图形块 | 分类 | 作用 | 本课用法 |
|---|---|---|---|
![]() | 执行器 | 按音符列表连续播放。 | 两侧点亮状态都为真时播放生日歌。编程体验在主循环调用;完整程序也在主循环调用。 |
![]() | 控制 | 按固定周期触发回调,适合节拍、采样。 | 完整程序周期 100 毫秒、周期模式,到点调用闪灯回调。 |
![]() | 函数 | 封装一段可重复调用的积木。 | 完整程序定义 tim_callback,在回调里按点亮状态写随机亮度。 |
六、知识点讲解
先弄清:先点亮两侧,再播歌;再进编程练习对照灯珠和声音。
七、编程练习
点「载入」打开 MixVM(board=sant_design)。默认图形化积木;起步程序与积木均来自 MixGo SANT 十学期兴趣课程/学期7。若题目带外设 design,载入时会自动导入接线。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。
十学期兴趣课程:1-3-1 生日蜡烛-播放音乐.mix。载入后运行。
正在载入编程环境
正在载入 MixGo SANT 仿真编程环境…
八、课堂练习
先完成两道正误判断,再做其余题目;选出后点「检查」。
判断:编程体验在两侧点亮状态都为真时会播放生日歌。
判断:完整程序把播放生日歌放在定时器回调里,主循环只负责闪灯。
本课什么时候播放生日歌?
编程体验和完整程序的主要差别是?
运行完整程序,只有左侧点亮时会?
九、本节小结
本课认识两侧都亮才播放生日歌。编程体验在主循环里闪灯并播歌;完整程序用 100 毫秒定时回调闪灯,主循环负责播歌。


