一、秒表计时

第3课 精度改变计时器

任务场景:精度改变计时器
任务场景:精度改变计时器

一、任务目标

暂停时用 T2/T3 改「计时间隔」,再按 T0 开始:同样真实时间里,间隔越小屏上数字加得越快。

二、我们要学什么

  • 学习要点:计时间隔(period)就是精度:体验题改间隔变量;完整代码用 period=计时间隔 真正生效
  • 本课过关:能在暂停时改间隔,再开始后看出读数变快或变慢。
  • 示例对齐:体验题对应 「1-3-1 精度改变计时器」;完整代码对应 「1-3-2 精度改变计时器」。

三、本节要点

本节抓住「period」。体验 1-3-1 已能改「计时间隔」,但启动仍 init(period=100);完整代码 1-3-2 才用 period=计时间隔。

1读场景明确真实任务
2对要点暂停时改计时间隔
3载入运行本课积木/代码

四、解题思路

  • 输入:T0 开始/暂停;暂停时 T2、T3 改计时间隔。
  • 输出:点阵上的计时;间隔变化后加数快慢改变。
  • 生活对照:秒表可调「一格代表多久」。
  • 验证现象:完整代码把间隔改小再开始,同样时间内读数更大。

本课主要用到:点阵屏、板载按键、定时器。

  1. 1明确任务「精度改变计时器」:同一套秒表,改的是加一的周期。
  2. 2暂停时才允许改间隔,避免走表中途乱改节拍。
  3. 3开始时用 tim.init 把当前间隔交给定时器(完整代码用变量,不要写死 100)。
  4. 4载入后先走停,再对照完整代码看改间隔是否生效。

流程示意(可对照左侧文字)

任务:精度改变计时器…判断传感或变量是否达到阈值…搭出主循环,让程序一直运行…把计算结果映射到可观察输出…载入官方示例后先点运行,对…

五、图形块功能讲解

下面只列出本课首次出现的 Mixly 图形块(真积木截图)。已在前面课讲过的不再重复;先认新块,再点「载入」对照拖搭。

图形块分类作用本课用法
初始化定时器
控制创建板载定时器对象。开始走表时 tim.init;完整代码 period=计时间隔。

六、知识点讲解

同样在走秒表,计时间隔(period)一改,屏上数字变快或变慢——这就是精度。间隔越小,同样真实时间里加得次数越多,读数越「细」。

period 就是精度旋钮

定时器每次触发,回调把「计时」加 1。period=100 大约每 0.1 秒跳一格;改成 10 则几乎快十倍。数字本身不是「秒」,要乘间隔才是真实时间。本课重点是看见间隔如何改变跳格速度。

改精度要重新初始化

只改变量「计时间隔」不够,还要用「初始化定时器」把新 period 写进去。常见做法:开始走表时 tim.init(period=计时间隔, …)。T2 设成 10、T3 设成 100,是两档可对比的精度。

走表时别乱改键

改精度、清零往往放在「未开始」分支:正在走表时按 T2/T3/T1 不生效或另有约定,避免数字乱跳。完整示例会在改间隔后把新间隔也显示到点阵,方便确认旋钮已拧动。

  • 对照实验:同一段真实时间,interval=10 与 100 的读数差大约一个数量级——这就是「精度改变」的现象。
  • T0 仍负责开始/暂停,T1 清零;精度键与走表键要分开,才不会抢同一颗键。
  • 过关:能指出 period 在哪改、改完为何必须 init,并能口述「数字快了是因为触发更勤,不是时间变快了」。

先分清「计时」和「计时间隔」,再载入示例按 T2/T3 看跳格快慢。

七、编程练习

点「载入」打开 MixVM(board=mixgo_zero_design)。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。

1-3-1 精度改变计时器.mix。载入后运行。

八、课堂练习

先完成两道判断题,再完成选择题;全部选定后点「检查」。

  1. 判断:体验 1-3-1 里 T2/T3 一改,「计时间隔」立刻作为 Timer 的 period 生效。

  2. 判断:间隔越小,同样时间内「计时」加得次数越多,读数越细、看起来越快。

  3. 改精度应在什么时候进行?

  4. 完整代码开始走表时,init 的 period 应取?

九、本节小结

记住:period 就是精度。完整代码用「计时间隔」启动定时器,改完再走表才看得出差别。