一、心随我动

第3课 按着心跳

任务场景:按着心跳
任务场景:按着心跳

一、任务目标

按住 T2 时点阵才交替大心/小心;松开后循环里不再刷新画面。

二、我们要学什么

  • 学习要点:用 touched 判断 T2 是否按住;按住才执行大心/小心交替
  • 本课过关:按住 T2 时大心/小心交替;松开后画面停在最后一帧,不再继续跳。
  • 示例对齐:体验题对应 「1-2-1 按着心跳」;完整代码对应 「1-2-2 不同按钮不同速度心跳」。

三、本节要点

本节抓住「按住检测」:用 touched 判断按键是否按住,从而带动心跳节奏。读场景后对照按键积木,载入运行,按住与松开对比。

1读场景明确真实任务
2对要点按住检测跟节奏
3载入运行本课积木/代码

四、解题思路

  • 输入:板载按键是否按住(touched)。
  • 输出:点阵上的心跳动画。
  • 生活对照:用手按节拍,动画跟着走。
  • 验证现象:按住才跟拍;松开后与按住时明显不同。

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

  1. 1明确任务「按着心跳」:要观察的输入/输出主要是 点阵屏、板载按键。
  2. 2用「重复执行」搭出主循环,让程序一直运行,而不是只执行一次就结束。
  3. 3在循环里判断按键:刚按下用 was_touched(触发一次),按住用 touched(持续有效)。
  4. 4交替显示大/小心形(或表情),形成「心跳」节奏,对照生活场景验证。
  5. 5加入延时(约 0.1 秒/单位),控制节奏,避免画面闪太快或采样过密。
  6. 6载入后先运行,对照「点阵屏」;再只改一处参数看差异。

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

任务:按着心跳搭出主循环,让程序一直运行…在循环里判断按键:刚按下用…交替显示大/小心形(或表情…加入延时(约0.1秒/单位…

五、图形块功能讲解

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

图形块分类作用本课用法
如果…那么…
控制满足条件时执行对应分支,用于按键、传感阈值的判断。本课编程练习中首次使用,载入后可在工具箱对照。
按键正被按住
板载传感电平检测:当前是否按住不放。本课编程练习中首次使用,载入后可在工具箱对照。

六、知识点讲解

本课核心是按住检测:用 touched 判断按键现在有没有按住,心跳跟着走。

touched(电平)

问的是「此刻是否按着」。按住为真、松开为假,适合跟拍、按住才动作。

如果…那么…

把按键判断放进循环:按住走一条分支,松开走另一条(停下或恢复默认节奏)。

不要和点一下搞混

按住检测看的是持续状态。若你希望「点一下触发一次」,应改用下一课的 was_touched。

  • 对照实验:按住时动画跟手,松开后必须能看出变化(停下或变慢)。
  • 过关:能口述「按住用哪块积木」,并演示按住/松开两种现象。

分清「按住」和「点一下」后,下一课用边沿触发做开始/停止。

七、编程练习

点「载入」打开 MixVM(board=mixgo_zero_design)。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读自学精讲与解题思路,再点载入。

1-2-1 按着心跳.mix。载入后运行。

八、课堂练习

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

  1. 判断:touched 与 was_touched 含义相同,都只在按下的瞬间为真。

  2. 判断:touched 表示按键当前是否被按住,适合让心跳节奏跟随按住状态变化。

  3. 若要求「按住时动画跟随、松开后状态改变」,应优先选用?

  4. 按住时画面与松开时完全相同,最可能的原因是?

九、本节小结

记住:touched 表示「现在按着」;本课体验是按住才跳,不是点一下就一直跳。