一、传感妙用
第3课 按钮显示实时时钟

一、任务目标
主循环不断打印时钟字符串;按 T2 才把时:分:秒滚到点阵。完整代码再给 T3:中断里 input 重新对时。
二、我们要学什么
- 学习要点:显示时钟用按键中断,打印时钟放在主循环,两件事分开
- 本课过关:能指出 T2 回调里才 scroll;完整代码 T3 才负责输入设定。
- 示例对齐:体验题对应 「1-3-1 按钮显示实时时钟」;完整代码对应 「1-3-2 按钮设置实时时钟」。
三、本节要点
体验 1-3-1 已 settime((2022,7,1,14,20,45,0,0))。不按 T2 时点阵不必动,控制台仍每秒 print strtime。
1读场景明确真实任务
2对要点T2 才滚屏,T3 才对时
3载入运行本课积木/代码
四、解题思路
- 输入:体验:T2 上升沿。完整代码另加 T3。
- 输出:串口 strtime;按 T2 后点阵滚动时分秒。
- 生活对照:表一直在走,你按一下才抬头看。
- 验证现象:不按键控制台仍出时间;按 T2 才滚屏。
本课主要用到:RTC、T2 中断、点阵;完整代码另用 T3 与串口输入。
- 1T2.irq 绑定滚动函数,trigger 用 IRQ_RISING。
- 2主循环 print(strtime) + sleep 1。
- 3完整代码给 T3 绑第二段回调:input 后 settime。
流程示意(可对照左侧文字)
五、图形块功能讲解
下面只列出本课首次出现的 Mixly 图形块(真积木截图)。已在前面课讲过的不再重复;先认新块,再点「载入」对照拖搭。
| 图形块 | 分类 | 作用 | 本课用法 |
|---|---|---|---|
![]() | 板载传感 | 按键变化时触发中断回调。 | 体验:T2 上升沿滚动时钟;完整代码 T3 再绑设定。 |
六、知识点讲解
本课核心是按键中断显示:时间一直在走,滚屏只在按下那一下发生。
主循环
负责周期性打印,不负责「等你按键」。
irq
T2 上升沿进入回调再 scroll,避免循环里漏检短按。
T3 对时
设定时钟放在完整代码的另一段中断里,不要写进体验题。
- 过关:能说出「谁在打印、谁在滚屏」。
- 不要把 T3 设定写进 1-3-1。
先看串口是否出时间,再按 T2 看点阵。
七、编程练习
点「载入」打开 MixVM(board=mixgo_zero_design)。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。
1-3-1 按钮显示实时时钟.mix。载入后运行。
正在载入编程环境
正在载入 MixGo ZERO 仿真编程环境…
八、课堂练习
先完成两道判断题,再完成选择题;全部选定后点「检查」。
判断:体验题必须按 T2,控制台才会打印 strtime。
判断:体验题按 T2 才把时分秒滚到点阵。
完整代码里用哪个键 input 重新对时?
T2 中断的 trigger 在示例里是?
九、本节小结
记住:时间一直打印;T2 才滚屏,T3 才对时。
