三、广播遥控
第11课 带序号消息

一、任务目标
按 T2 把字典里的序号加一,再把整段 JSON 广播出去;收到后打印序号。完整代码若对方不是回复,就加「回复=True」再发回去。
二、我们要学什么
- 学习要点:带序号的消息用 JSON 字典,不要只发一个整数
- 本课过关:能指出体验只打印序号;完整代码会回带 回复 标记的同一条。
- 示例对齐:体验题对应 「3-3-1 带序号消息」;完整代码对应 「3-3-2 可靠消息发送」。
三、本节要点
体验 3-3-1 没有自动回复。回执是 3-3-2。
1读场景明确真实任务
2对要点JSON 带序号,再谈回执
3载入运行本课积木/代码
四、解题思路
- 输入:T2 短按。
- 输出:广播 JSON;回调 print 序号。完整代码再回传。
- 生活对照:快递单号:发出去要有编号,签收再回一票。
- 验证现象:每按一次序号变大;对端打印同一序号。
本课主要用到:无线广播、JSON 字典、T2。
- 1mydict 含 序号 和 消息。
- 2T2:序号+1 后 dumps 发送。
- 3收到 loads 后 print 序号。
- 4完整代码无 回复 则补 True 再 send。
流程示意(可对照左侧文字)
五、图形块功能讲解
下面只列出本课首次出现的 Mixly 图形块(真积木截图)。已在前面课讲过的不再重复;先认新块,再点「载入」对照拖搭。
| 图形块 | 分类 | 作用 | 本课用法 |
|---|---|---|---|
![]() | 字典 | 用若干键值对组成字典。 | mydict={"序号":0,"消息":'light'}。 |
![]() | 字典 | 新增或修改键值。 | 载入后可在工具箱对照本课用法。 |
![]() | 字典 | 按键读取值。 | 载入后可在工具箱对照本课用法。 |
![]() | 字典 | 序列化为 JSON 字符串。 | send 前 json.dumps(mydict)。 |
![]() | 字典 | 解析 JSON 为字典。 | 收到后 json.loads。 |
![]() | 字典 | 键不存在时返回默认值。 | 完整代码 dictcmd.get('回复', False)。 |
六、知识点讲解
本课核心是带序号的 JSON。整数广播升级成可扩展字典。
序号
每按 T2 加一,用来认是哪一条。
loads/dumps
无线里走字符串,两端都要会编解码。
回复
完整代码避免把回执再当新命令处理。
- 过关:能说出体验不自动回执。
先看打印的序号,再看完整代码的 回复。
七、编程练习
点「载入」打开 MixVM(board=mixgo_zero_design)。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。
3-3-1 带序号消息.mix。载入后运行。
正在载入编程环境
正在载入 MixGo ZERO 仿真编程环境…
八、课堂练习
先完成两道判断题,再完成选择题;全部选定后点「检查」。
判断:体验题收到消息后会自动把 回复=True 发回去。
判断:按 T2 会把字典里的序号加一再 dumps 发送。
体验收到后打印的是?
完整代码给回执加上的键是?
九、本节小结
记住:T2 发送带序号的 JSON;回执是 3-3-2。





