按钮依序开关灯
这篇文章会延续“依序点灯”一文,搭配“按钮按下”、“函数参数”积木,做出按下按钮 A 就依序亮灯,按下按钮 B 就反向依序关灯的效果。
积木程序原理
打开“依序点灯”文章里面的范例解答,使用范例积木继续编辑 ( 打开后点击上方 Edit Code 按钮 )。
范例链接:依序点灯
将鼠标移到“定义函数”积木上方,按下右键,点选编辑函数。
将函数新增一个“布尔值”参数,命名为“关灯”。
在函数的下方,放入“如果...否则...那么”积木,判断如果关灯为 true 就不点亮这个 LED,如果关灯为 false 就点亮这个 LED。
接着要放入按钮的程序,步骤如下:
- 移除“重复无限次”积木与内容
- 新增“当按钮 A 被按下”,设定按下 A 按钮时,先让 n 增加 1,再点亮第 n 颗灯。
- 新增“当按钮 B 被按下”,设定按下 B 按钮时,先熄灭第 n 颗灯,再将 n 减少 1。
- 新增“当按钮 A+B 被按下”,设定 AB 同时按下时,清空画面并且将 n 归零。
完整得程序积木长相如下:
micro:bit 启动之后,按压 A 或 B 按钮,就可以看到灯号依序亮起或关闭的效果。
范例解答
范例解答:按钮依序开关灯
延伸练习
如果已经熟悉了按钮依序开关灯的原理,还可以尝试更多好玩的作法:
微信扫码关注
抖音扫码关注