单元一

第4课 生日蜡烛-吹蜡烛

任务场景:生日蜡烛-吹蜡烛
任务场景:生日蜡烛-吹蜡烛

一、任务目标

声音够大就清掉点亮状态,RGB 灯珠熄灭。

二、我们要学什么

  • 学习要点:声音熄灭|够大就清掉点亮状态
  • 本课过关:能完成:说出吹蜡烛就是声音够大就把点亮状态写成假;载入编程体验,指出回调里声音大于 2000 时清掉两侧状态并把全部灯珠写成黑色,同时打印声音读数;再运行完整程序,指出同样清状态,还调用停止发声,主循环播歌用尝试执行包住。
  • 示例对齐:编程体验对应 「1-4-1 生日蜡烛-吹蜡烛」;完整程序对应 「1-4-2 生日蜡烛-吹蜡烛音乐」。

三、本节要点

本课要利用光照传感认识声音熄灭:声音强度大于 2000 就清掉点亮状态,RGB 灯珠熄灭。重难点是分清两套——编程体验打印读数并填黑;完整程序还停止发声,播歌放在尝试执行里。要点对齐「声音熄灭|够大就清掉点亮状态」。

1读场景对着蜡烛吹一口气,灯要灭掉
2对要点声音熄灭|够大就清掉点亮状态
3载入运行十学期兴趣课程积木/代码

四、解题思路

任务:利用光照传感,用两套程序认识吹蜡烛——声音大于 2000 就清状态、灯珠熄灭。编程体验打印读数;完整程序还停止发声。请对照灯珠、串口和旋律是否停下。

本课主要用到:左侧、右侧光照;板载麦克风;板载 RGB 灯珠;蜂鸣器;串口。

  1. 1利用光照传感,观察声音够大后灯珠是否熄灭、歌是否停下。
  2. 2定时回调里读取声音强度。大于 2000 就把两侧点亮状态写成假。
  3. 3编程体验打印声音读数,并把全部灯珠写成黑色再刷新。
  4. 4完整程序清状态后停止发声,每次回调先填黑再按状态重画闪烁;两侧都真时播生日歌。完整程序用尝试执行包住播放。对照灯珠和声音。
  5. 5完成补全与从头编写,并对照现象。

流程示意

回调里读声音大于2000清状态灯珠写成黑色完整程序停止发声完成补全与从头编写并对照现象

五、图形块功能讲解

下面只列出本课首次出现的 Mixly 图形块(真积木截图)。已在前面课讲过的不再重复;先认新块,再点「载入」对照拖搭。

图形块分类作用本课用法
全局变量
变量声明在函数内外都能用的变量。回调里声明「点亮01」「点亮23」是全局量,清掉的才是主循环里同一对状态。
打印输出
串口在控制台打印一行信息,便于调试。编程体验在回调里打印声音读数;完整程序在尝试执行失败时打印异常。
声音强度
板载传感读取麦克风音量大小。回调里读取麦克风。大于 2000 就清点亮状态。
设置全部彩灯颜色
板载执行一次设置灯带上所有灯珠颜色。清状态后把全部 RGB 灯珠写成黑色,看起来熄灭。
打印
串口把内容显示到输出区。把声音读数或异常送到输出区,和熄灭对照。
尝试执行
控制捕获运行错误并保证收尾代码执行。完整程序播放生日歌时包一层:播不下去就把异常打印出来。
停止发声
板载执行停止蜂鸣器/音乐播放。完整程序声音大于 2000 时停止发声,旋律停下。

六、知识点讲解

声音熄灭在回调里读声音强度。大于 2000 就把点亮状态写成假,RGB 灯珠填成黑色;完整程序同时停止发声。

先弄清:声音够大就清状态,灯才会灭;再进编程练习对照灯珠和旋律。

七、编程练习

点「载入」打开 MixVM(board=sant_design)。默认图形化积木;起步程序与积木均来自 MixGo SANT 十学期兴趣课程/学期7。若题目带外设 design,载入时会自动导入接线。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。

十学期兴趣课程:1-4-1 生日蜡烛-吹蜡烛.mix。载入后运行。

八、课堂练习

先完成两道正误判断,再做其余题目;选出后点「检查」。

  1. 判断:编程体验在声音强度大于 2000 时会把两侧点亮状态写成假,并把全部灯珠写成黑色。

  2. 判断:编程体验在声音够大时会调用停止发声。

  3. 本课熄灭灯珠的条件是?

  4. 编程体验和完整程序的主要差别是?

  5. 运行完整程序,声音大于 2000 后应看到?

九、本节小结

本课认识声音熄灭:声音够大就清掉点亮状态。编程体验填黑并打印读数;完整程序还停止发声,播歌用尝试执行包住。