单元一
第3课 晨钟暮鼓-按钮显示实时时钟

一、任务目标
用按键中断滚出完整时刻,一按屏上整行时间滚过去。
二、我们要学什么
- 学习要点:按键中断|按下瞬间插入回调,不必等主循环轮到
- 本课过关:能完成:说出按键中断就是按下瞬间插入一段回调;载入编程体验,指出主循环仍显示「时:分:秒」,按 B1 会滚动一整段时钟字符串;再运行完整程序,指出还多了按 B2:从键盘输入时刻并重新设定时钟。
- 示例对齐:编程体验对应 「1-3-1 晨钟暮鼓-按钮显示实时时钟」;完整程序对应 「1-3-2 晨钟暮鼓-按钮设置实时时钟」。
三、本节要点
本课要利用板载时钟认识按键中断:按下瞬间插入回调,主循环可以继续刷新「时:分:秒」。重难点是分清两套——都是 B1 滚动整段时钟字符串;完整程序还用 B2 输入并重新设定时钟。要点对齐「按键中断|按下瞬间插入回调,不必等主循环轮到」。
四、解题思路
任务:利用板载时钟,用两套程序认识按键中断——主循环刷新「时:分:秒」,按下时另做一件事。编程体验按 B1 滚动整段时钟字符串;完整程序再加 B2 输入并设定时钟。请对照按键后彩屏和键盘。
本课主要用到:按键 B1、B2;键盘;彩屏 TFT。
- 1利用板载时钟,观察按键时插入的动作,和主循环刷新是不是两回事。
- 2主循环读取时间元组,显示「时:分:秒」,约每秒刷新。
- 3给 B1 登记中断:按下就滚动一整段时钟字符串。
- 4完整程序再给 B2 登记中断:按下就从键盘输入并设定时钟;对照:按 B1 看滚动文字;完整程序再按 B2 看能否改时刻。
- 5完成补全与从头编写,并对照现象。
流程示意
五、图形块功能讲解
下面只列出本课首次出现的 Mixly 图形块(真积木截图)。已在前面课讲过的不再重复;先认新块,再点「载入」对照拖搭。
| 图形块 | 分类 | 作用 | 本课用法 |
|---|---|---|---|
![]() | 板载传感 | 按键变化时触发中断回调。 | 编程体验只给 B1 登记;完整程序再给 B2 登记另一段回调。 |
![]() | 函数 | 封装一段可重复调用的积木。 | 编程体验定义 B1 回调去滚动时钟字符串;完整程序再定义 B2 回调去输入并设定时钟。 |
![]() | 显示 | 在点阵或屏幕上滚动字符串。 | 两套都在 B1 回调里滚动一整段时钟字符串。 |
六、知识点讲解
先弄清:主循环和按键回调各管各的;再进编程练习对照 B1 和 B2。
七、编程练习
点「载入」打开 MixVM(board=sant_design)。默认图形化积木;起步程序与积木均来自 MixGo SANT 十学期兴趣课程/学期3。若题目带外设 design,载入时会自动导入接线。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。
十学期兴趣课程:1-3-1 晨钟暮鼓-按钮显示实时时钟.mix。载入后运行。
正在载入编程环境
正在载入 MixGo SANT 仿真编程环境…
八、课堂练习
先完成两道正误判断,再做其余题目;选出后点「检查」。
判断:编程体验按 B1,彩屏会滚动一整段时钟字符串。
判断:完整程序按 B2,也会滚动一整段时钟字符串。
本课说的「按键中断」指的是?
编程体验和完整程序的主要差别是?
运行编程体验,不按任何键时,彩屏应看到?
九、本节小结
本课认识按键中断:按下瞬间插入回调。两套主循环都刷新「时:分:秒」,B1 滚动整段时钟字符串;完整程序还用 B2 输入并设定时钟。


