二、点阵与节奏

第7课 闪烁测试

任务场景:闪烁测试
任务场景:闪烁测试

一、任务目标

用定时器回调翻转板载指示灯:主循环空转,灯仍按设定频率闪烁。

二、我们要学什么

  • 学习要点:Timer + setonoff(1,-1):周期到了就翻转灯 1,频率变量决定 period
  • 本课过关:能指出回调在翻转灯、主循环在 pass;改「频率」后闪烁疏密变化。
  • 示例对齐:体验与完整代码均对齐「18-1 闪烁测试」(完整代码可对照同例改频率)。

三、本节要点

本节把单元一的定时器接到指示灯开关上:只有亮/灭,没有变色。

1读场景灯自己闪
2对要点回调里翻转
3载入运行官方示例积木/代码

四、解题思路

  • 输入:定时器周期(由频率算出)。
  • 输出:板载灯 1 亮灭翻转(setonoff 的 -1 表示取反)。
  • 生活对照:警示灯按固定节拍闪。
  • 验证现象:主循环 pass 时灯仍闪;频率变大,闪得更快。

本课主要用到:定时器、板载指示灯(onboard_led.setonoff)。

  1. 1明确任务「闪烁测试」:定时器驱动灯翻转。
  2. 2定义回调:onboard_led.setonoff(1, -1)。
  3. 3period = 500 // 频率,创建 PERIODIC 定时器。
  4. 4主循环 while True: pass,让回调一直生效。

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

任务:闪烁测试设频率与 period回调 setonoff 翻转主循环 pass

五、图形块功能讲解

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

图形块分类作用本课用法
设置定时器
控制按周期触发回调。体验:period=500//频率。
板载指示灯开关
板载执行setonoff 开/关/翻转。体验:setonoff(1,-1) 翻转。

六、知识点讲解

闪烁靠定时器翻转开关灯:Zero 只有两盏单色指示灯,用 setonoff,不要用 setcolor。

翻转 -1

setonoff(灯号, -1) 表示在亮与灭之间切换,不必自己记当前状态。

频率与 period

示例用 500 // 频率 得到毫秒周期。频率越大,周期越短,闪得越快。

回调要短

回调里只翻转灯;复杂逻辑留给主循环,避免打乱节拍。

  • 指示灯只有开/关两态,不要讲成多色变灯。
  • 过关:改频率后闪烁明显变快或变慢,并能指出是哪行在算 period。

先回忆单元一定时器,再看回调里换成灯翻转。

七、编程练习

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

官方示例:18-1-定时控制-闪烁测试.mix。载入后运行。

八、课堂练习

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

  1. 判断:必须在主循环里 sleep 才能闪烁。

  2. 判断:体验用 setonoff 的 -1 翻转灯状态。

  3. 闪烁节奏主要由什么决定?

  4. 板载指示灯本课用法是?

九、本节小结

记住:闪烁靠定时器翻转开关灯,不是交通灯相位。