三、广播遥控
第10课 防丢测试

一、任务目标
双方定时互发心跳;收到则点阵打勾并刷新 lastmsgtime。超过 10 秒没新消息就打叉。完整代码还能按 T2 发 BEEP 让对方响一声。
二、我们要学什么
- 学习要点:防丢看的是「多久没收到心跳」,不是信号格
- 本课过关:能指出超时阈值 10000 毫秒;完整代码 T2 中断发送 BEEP。
- 示例对齐:体验题对应 「3-2-1 防丢测试」;完整代码对应 「3-2-2 带查找防丢测试」。
三、本节要点
体验 3-2-1 没有蜂鸣查找。BEEP 是 3-2-2。
1读场景明确真实任务
2对要点心跳超时才打叉
3载入运行本课积木/代码
四、解题思路
- 输入:无线心跳;完整代码另用 T2。
- 输出:点阵 YES/NO;完整代码对方可蜂鸣。
- 生活对照:定位器一直「还在」,突然不跳就报警。
- 验证现象:正常收到打勾;卡住超 10 秒打叉。
本课主要用到:无线广播、点阵、ticks_ms;完整代码另用 T2、蜂鸣器。
- 1收到消息:YES 并记下 lastmsgtime。
- 2每 2 秒 send 当前 ticks。
- 3若 now-last > 10000 则 NO。
- 4完整代码 T2.irq 发送 BEEP。
流程示意(可对照左侧文字)
五、图形块功能讲解
下面只列出本课首次出现的 Mixly 图形块(真积木截图)。已在前面课讲过的不再重复;先认新块,再点「载入」对照拖搭。
| 图形块 | 分类 | 作用 | 本课用法 |
|---|---|---|---|
![]() | 控制 | 读取开机以来的毫秒数,用于计时、测反应。 | 用 ticks_ms 记上次收到心跳的时刻。 |
![]() | 数学 | 加、减、乘、除等运算。 | 载入后可在工具箱对照本课用法。 |
六、知识点讲解
本课核心是心跳超时:不是测距离,而是看多久没联系。
lastmsgtime
每次收到都刷新。
10000
超过 10 秒无新消息就显示 NO。
查找
完整代码按 T2 让对方 BEEP。
- 过关:能口述超时和打叉的关系。
先看勾/叉,再试完整代码的查找音。
七、编程练习
点「载入」打开 MixVM(board=mixgo_zero_design)。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。
3-2-1 防丢测试.mix。载入后运行。
正在载入编程环境
正在载入 MixGo ZERO 仿真编程环境…
八、课堂练习
先完成两道判断题,再完成选择题;全部选定后点「检查」。
判断:体验题超时阈值是 1 秒。
判断:收到心跳会显示 YES 并刷新 lastmsgtime。
完整代码按 T2 发送什么?
主循环大约多久发一次心跳?
九、本节小结
记住:10 秒无心跳就打叉;查找音是 3-2-2。

