一、远程灯光
第3课 远程开关双LED

一、任务目标
订阅「开灯」主题:报文 1 打开两盏指示灯,0 关闭。完整代码用 JSON 的 l1/l2 分别开关。
二、我们要学什么
- 学习要点:MQTT 回调里用 setonoff 控制双指示灯;报文 1 全开、0 全关
- 本课过关:能说明远程控制的是两盏开关量指示灯,并用 setonoff 演示亮灭。
- 示例对齐:体验参考 「5-2 远程开关灯」思路 + setonoff;完整代码 JSON 分灯。
三、本节要点
体验在回调里直接 setonoff;完整代码用 JSON 的 l1/l2 分别开关两盏灯。
1读场景明确真实任务
2对要点MQTT 开关双指示灯
3载入运行本课积木/代码
四、解题思路
- 输入:MQTT 主题报文。
- 输出:1 号、2 号指示灯(setonoff)。
- 生活对照:课堂任务「远程开关双LED」。
- 验证现象:对照官方示例现象核对。
本课主要用到:Wi-Fi、MixIO、指示灯(setonoff)。
- 1订阅「开灯」主题,主循环 check_msg。
- 2报文为 1 时 setonoff 打开两盏灯。
- 3报文为 0 时 setonoff 关闭两盏灯。
- 4完整代码改为 JSON 的 l1/l2 分灯控制。
流程示意(可对照左侧文字)
五、图形块功能讲解
下面只列出本课首次出现的 Mixly 图形块(真积木截图)。已在前面课讲过的不再重复;先认新块,再点「载入」对照拖搭。
| 图形块 | 分类 | 作用 | 本课用法 |
|---|---|---|---|
![]() | 变量 | 声明在函数内外都能用的变量。 | 完整代码回调里解析 JSON 再 setonoff。 |
![]() | 板载执行 | 打开或关闭指定指示灯。 | setonoff 开关双灯。 |
六、知识点讲解
本课核心是远程开关双LED:MQTT 报文驱动 setonoff,控制两盏开关量指示灯。
setonoff
开=1、关=0,没有颜色通道。
回调
先订阅,主循环 check_msg。
JSON 分灯
完整代码 l1/l2 各控一盏。
- 易错:在回调里漏写 setonoff,或只开一盏忘了另一盏。
- 过关:能说明远程控制的是两盏开关灯,并用报文演示亮灭。
关注 MixIO 订阅与 LED 亮灭积木。
七、编程练习
点「载入」打开 MixVM(board=mixgo_zero_design)。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。
官方示例:5-2/自编 远程开关双LED(setonoff)。载入后运行。
正在载入编程环境
正在载入 MixGo ZERO 仿真编程环境…
八、课堂练习
先完成两道判断题,再完成选择题;全部选定后点「检查」。
判断:本课要把 R/G/B 写入板载彩灯并 write。
判断:远程报文可以通过 setonoff 开关两盏灯。
Zero 板载灯光能力是?
完整代码 JSON 字段通常是?
九、本节小结
记住:远程开关双LED,用 MQTT + setonoff。

