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

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





