五、高级无线通讯

第15课 高级无线通讯-带序号消息

任务场景:高级无线通讯-带序号消息
任务场景:高级无线通讯-带序号消息

一、任务目标

完成「高级无线通讯-带序号消息」:确认收发与显示是否对应。

二、我们要学什么

  • 学习要点:给每条无线消息带上序号
  • 本课过关:能完成:发送的消息带序号,接收端能看出第几条。
  • 示例对齐:体验题对应 「5-1 高级无线通讯-带序号消息」;完整代码对应 「5-1 高级无线通讯-带序号消息」。

三、本节要点

本节要落地的是「给每条无线消息带上序号」。普通广播分不清先后;本课给消息编号,方便发现丢包或乱序。

1看任务消息编号
2抓关键每条带序号
3验现象连发是1、2、3…

四、解题思路

关键能力「给每条无线消息带上序号」。可对照:快递贴单号:每件货有 1、2、3 号,对方核对少了哪一件。 通道:输入=按键发送带序号的消息,输出=对端显示序号和内容。成功时应见:连续发送时序号是否递增。

本课主要用到:板载按键。

  1. 1每发送一条,给计数器 +1 并写入消息体。
  2. 2接收端显示序号,便于发现丢包或乱序。
  3. 3不要只发固定内容不编号。
  4. 4连按发送,序号应递增。

解题流程(只留关键词)

1. 每条带上序号2. 接收端显示序号3. 运行核对

五、图形块功能讲解

下表是本课新出现的图形块。旧块不重复讲解;认完再点「载入」到工具箱核对。

图形块分类作用本课用法
创建字典
字典用若干键值对组成字典。搭积木时靠它完成:用若干键值对组成字典。载入后对照截图找块。
增改字典项
字典新增或修改键值。对应步骤中的:新增或修改键值。打开工具箱核对同名块。
取字典值
字典按键读取值。搭积木时靠它完成:按键读取值。载入后对照截图找块。
字典转 JSON
字典序列化为 JSON 字符串。本课里用它做:序列化为 JSON 字符串。载入后按名称在工具箱核对。
JSON 转字典
字典解析 JSON 为字典。本课里用它做:解析 JSON 为字典。载入后按名称在工具箱核对。

六、知识点讲解

带序号消息:每发一条给计数器 +1 并写入消息体,接收端可核对第几条、发现丢包。过关看连发时序号为 1、2、3…

先对照屏幕/灯/声:连续发送时序号是否递增。再连发三条,看序号是不是 1、2、3。

七、编程练习

先点「载入」进入 MixVM(board=sowl_design)。默认积木模式;程序来自 MixGo SOWL 六学期兴趣课程/学期3。若题目标了 design 外设,接线会一并导入。在 Mixly 里「运行 / 停止」,需要时点「检查」。动手前请看本页第四节和第五节。

提示:本活动依赖两块主控板配合实现,可点击仿真界面最右侧【切分】按键,打开双页面同时运行仿真程序,达成实验预期效果。

六学期兴趣课程:5-1 高级无线通讯-带序号消息.mix。载入后运行。

八、课堂练习

前两题是判断,后面是选择;选定答案后点击「检查」。

  1. 判断:消息可以都不编号,对方也无法知道第几条。

  2. 判断:按本课过关来核对:连续发送几条,核对接收端序号是否按顺序增加。

  3. 带序号是为了?

  4. 验证看?

  5. 本课还没要求?

九、本节小结

带走一句:已经能按「给每条无线消息带上序号」做出对应现象。