二、井然有序

第6课 井然有序-计时红绿灯

任务场景:井然有序-计时红绿灯
任务场景:井然有序-计时红绿灯

一、任务目标

用计时控制红绿灯切换,到时自动变灯。

二、我们要学什么

  • 学习要点:用倒计时控制何时变灯
  • 本课过关:能完成:屏上有倒计时,到 0 时灯色切换。
  • 示例对齐:体验题对应 「2-2-1 井然有序-计时红绿灯」;完整代码对应 「2-2-2 井然有序-计时闪烁红绿灯」。

三、本节要点

本节要落地的是「用倒计时控制何时变灯」。上一课只看灯色轮换;本课把「还要亮多久」显示出来,到点再变灯。

1看任务倒计时牌
2抓关键倒数到0再变灯
3验现象屏上秒数在减

四、解题思路

关键能力「用倒计时控制何时变灯」。可对照:路口屏上 9、8、7…倒数,数到 0 才变灯,行人知道还要等几秒。 通道:输入=计时到达设定秒数,输出=彩屏倒计时 + 彩灯变色。成功时应见:倒数到 0 时灯是否切换。

本课主要用到:彩屏 TFT、彩灯/LED。

  1. 1屏上显示当前灯色剩余秒数,每秒减一。
  2. 2减到 0 再切换下一灯色并重新装秒数。
  3. 3和第 5 课区分:本课要看见「还要亮多久」。
  4. 4盯着倒数,到 0 时应变灯。

解题流程(只留关键词)

1. 倒数到 0 变灯2. 减到 0 再切换下一3. 运行核对

五、图形块功能讲解

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

图形块分类作用本课用法
遍历列表
控制依次取出列表中每一项并执行循环体。本课实际用途:依次取出列表中每一项并执行循环体。载入后到分类里确认。
计数循环范围
控制生成一段整数范围,常配合 for 循环。本课里用它做:生成一段整数范围,常配合 for 循环。载入后按名称在工具箱核对。
调用函数
函数执行已定义的函数。本课里用它做:执行已定义的函数。载入后按名称在工具箱核对。

六、知识点讲解

倒计时变灯:显示剩余秒数,数到 0 切换灯色。过关看倒数到 0 时灯色切换。

先对照屏幕/灯/声:倒数到 0 时灯是否切换。再改倒数秒数,看变灯时刻是否跟着变。

七、编程练习

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

六学期兴趣课程:2-2-1 井然有序-计时红绿灯.mix。载入后运行。

八、课堂练习

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

  1. 判断:倒计时只是摆设,数到 0 灯也不会变。

  2. 判断:按本课过关来核对:盯着屏上倒数,确认到 0 时灯色切换。

  3. 计时红绿灯变灯的依据是?

  4. 和一向路口灯相比,本课多了?

  5. 过关现象是?

九、本节小结

带走一句:已经能按「用倒计时控制何时变灯」做出对应现象。