二、可调台灯

第7课 呼吸灯

任务场景:呼吸灯
任务场景:呼吸灯

一、任务目标

用 PWM 占空比从 0 加到 65535 再减回 0,外接灯呈呼吸。体验只驱动彩灯红色 pin16。完整代码 pin16、pin17、pin18 同步呼吸。

二、我们要学什么

  • 学习要点:用 duty_u16 慢慢改亮度,而不是只有开和关
  • 本课过关:能指出体验只呼吸红色 pin16;白光三路是完整代码。
  • 示例对齐:体验题对应 「2-3-1 呼吸灯」;完整代码对应 「2-3-2 白光呼吸灯」。

三、本节要点

仿真里步长用 256,亮度仍会往返变化。没有按键。

1读场景明确真实任务
2对要点PWM 往返改变亮度
3载入运行本课积木/代码

四、解题思路

  • 输入:无传感,程序自己改占空比。
  • 输出:体验 pin16 PWM;完整代码三路接到 U3 彩灯。
  • 生活对照:夜灯慢慢亮再慢慢暗。
  • 验证现象:亮度连续起伏,不是闪烁开关。

本课主要用到:U3 红绿蓝彩灯、PWM 输出、计数循环。

  1. 1PWM 初始化。
  2. 2for 0..65535 写 duty。
  3. 3再反向写回 0。
  4. 4完整代码三脚写同一个 i。

流程示意(可对照左侧文字)

任务:呼吸灯搭出主循环,让程序一直运行…载入官方示例后先点运行,对…

五、图形块功能讲解

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

图形块分类作用本课用法
PWM 初始化
输入/输出把引脚配置为 PWM 输出。pwm16 = PWM(Pin(16))。
遍历列表
控制依次取出列表中每一项并执行循环体。配合 range 遍历占空比。
计数循环范围
控制生成一段整数范围,常配合 for 循环。0 到 65536 步进 1,再反向。
PWM 输出
输入/输出输出占空比,控制亮度或速度。duty_u16(i)。

六、知识点讲解

本课核心是PWM 呼吸:亮度是占空比,不是数字输出的 0/1。

正向

range(0, 65536, 1)。

反向

range(65535, -1, -1)。

三路

完整代码三个 PWM 写同一个 i。

  • 过关:能说出呼吸靠改 duty,不是 sleep 开关灯。

先弄清本课输入与输出,再进编程练习对照现象。

七、编程练习

点「载入」打开 MixVM(board=mixgo_zero_design)。外设课会自动导入对应外接模块到右侧仿真。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。

2-3-1 呼吸灯.mix。载入后运行。

八、课堂练习

先完成两道判断题,再完成选择题;全部选定后点「检查」。

  1. 判断:体验同时让 pin16、pin17、pin18 一起呼吸。

  2. 判断:占空比用 duty_u16 写入。

  3. 正向循环的终点开区间是?

  4. 本课有没有用外接按键控制呼吸?

九、本节小结

记住:体验只呼吸红色 pin16;三路白光是 2-3-2。