案例01:灯光控制器
Contents
3. 案例01:灯光控制器#
3.1. 目的#
使用basic:bit套件完成灯光控制案例。
3.2. 使用材料#
1 x basic kit 基础套件
3.3. 背景知识#
3.4. 硬件连接图#
如图所示,将按键开关连接到basic:bit主板的P1口,LED模块连接到P2口,电位器模块连接到P0口。
注意:将basic:bit侧面的拨动开关,拨到P0,否则P0口会被蜂鸣器占用。
3.5. 软件#
3.6. 编程#
步骤 1#
当开机时需要将P1口设置一个上拉,以初始化按键模块。
步骤 2#
以数字方式读取P1口返回值,赋值给
button
变量,来获取按键开关的状态。判断如果
button
变量等于 1 ,意为按键按下,延时消抖。判断
light
灯开关变量,如果light
变量为 0 ,意为灯灭,则把light
变量设为 1 ,如果不是,设置为0。
步骤 3#
判断
light
灯开关变量,如果为 1,开灯,则以模拟数字方式读取P0口,即电位器的返回值,同时以模拟写入方式直接写入到P2口,即作为LED模块的参数。如果
light
等开关变量不为 1 ,则意为关灯,向P2口模拟写入 0 ,关闭LED。
程序#
请参考程序连接:https://makecode.microbit.org/_DL87DfRpaL7z
你也可以通过以下网页直接下载程序。
---3.7. 结论#
按下按键灯亮,再次按下灯灭。当灯亮时调节电位器旋钮,可以调节灯的亮度。
3.8. 思考#
延时消抖的作用和意义是什么?