一、疯狂打地鼠

第1课 外接按键-双按键开关灯

任务场景:外接按键-双按键开关灯
任务场景:外接按键-双按键开关灯

一、任务目标

理解两键分工,能对比「按着开/关」和「点一下翻转」。

二、我们要学什么

  • 学习要点:一个键专管开、一个键专管关,不要写成同一个键翻转
  • 本课过关:能指出体验:3号引脚 开两灯、4号引脚 关两灯;完整代码等松手后 setonoff(...,-1) 分别翻转。
  • 示例对齐:体验题对应 「1-1-1 外接按键-双按键开关灯」;完整代码对应 「1-1-2 外接按键-单按键开关灯」。

三、本节要点

体验 1-1-1 是电平检测:按着 3号引脚 就亮、按着 4号引脚 就灭。翻转开关在 1-1-2。

1读场景明确真实任务
2对要点3号引脚 开灯,4号引脚 关灯
3载入运行兴趣课程积木/代码

四、解题思路

  • 输入:外接 3 号脚、4 号脚(双轻触,接扩展口)。
  • 输出:1 号和 2 号板载灯。
  • 生活对照:墙上两个键:一个只开、一个只关。
  • 验证现象:按 3 号脚两灯亮;按 4 号脚两灯灭。

本课主要用到:外接数字输入、板载灯。

  1. 1初始化 3 号脚、4 号脚为输入。
  2. 2循环里若 3 号脚有电平则两灯开。
  3. 3若 4 号脚有电平则两灯关。
  4. 4完整代码:等松开后再翻转对应那一盏。

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

初始化 3 号脚、4 号脚为输入循环里若 3 号脚有电平则两灯开若 4 号脚有电平则两灯关完整代码:松开后再翻转对应灯

五、图形块功能讲解

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

图形块分类作用本课用法
数字引脚初始化
输入/输出把引脚设为输入或输出。体验:3号引脚、4号引脚 设为输入。
重复执行
控制按条件反复执行内部积木;条件为「真」时相当于 「重复执行」 无限循环。载入后可在工具箱对照本课用法。
如果…那么…
控制满足条件时执行对应分支,用于按键、传感阈值的判断。载入后可在工具箱对照本课用法。
数字输入
输入/输出读取引脚高低电平。体验:读 3号引脚 开灯、读 4号引脚 关灯。
LED 亮灭
板载执行打开或关闭指定 LED。体验:同时开关 1 号和 2 号灯。
先执行再判断
控制先跑一遍循环体,再根据条件决定是否继续。完整代码:按住时延时 1ms,直到松开。
延时
控制暂停指定时间,常用于动画节奏或等待。完整代码:等松手时 延时(1)。
取反
逻辑把真变假、假变真。完整代码:not pin.value() 表示松开。

六、知识点讲解

两键分工:3号引脚 只负责开两灯,4号引脚 只负责关两灯。不是按一下翻转。开:3号引脚.value() 为真时 setonoff(1,1) 和 setonoff(2,1)。关:4号引脚.value() 为真时两灯都写 0。翻转:完整代码等松手后 setonoff(1,-1)/setonoff(2,-1)。

对照与过关:能对比「按着开/关」和「点一下翻转」。先弄清本课输入与输出,再进编程练习对照现象。

七、编程练习

点「载入」打开 MixVM(board=mini_design)。本学期外设课会自动导入对应外接模块到右侧仿真;默认图形化积木,起步程序与积木来自兴趣课程/学期5。在 Mixly 工具栏点「运行 / 停止」,「检查」做关键字核对。请先读本页「四、解题思路」与「五、图形块功能讲解」,再点载入。

兴趣课程:1-1-1 外接按键-双按键开关灯.mix。载入后运行。

八、课堂练习

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

  1. 判断:体验程序是按一下 3号引脚 灯亮,再按一下同一键灯灭。

  2. 判断:3号引脚 有电平时,1 号和 2 号灯都会被打开。

  3. 体验里按下 4号引脚 会?

  4. 完整代码里 -1 表示?

九、本节小结

本课主题是外接两键开关:一个键专管开、一个键专管关,不要写成同一个键翻转。体验程序3号引脚开两灯、4号引脚关两灯;完整程序等松手后分别翻转对应的灯。