Micro:bit系列教程3:LED点阵和按键控制

摘要: 本章将介绍如何操作Micro:bit上的LED点阵,使得Micro:bit能够显示图标,数字,字符串,以及自定义图案等。此外还将介绍按键的使用。

本章将介绍如何操作Micro:bit上的LED点阵,使得Micro:bit能够显示图标,数字,字符串,以及自定义图案等。此外还将介绍按键的使用。

1.基本介绍

       Micro:bit板载5*5 LED点阵,可显示系统预设图标,数字,字符串,以及自定义图案。

  Micro:bit板载3个按键,其中靠近USB接口一侧的按键是复位键,LED点阵一侧有AB按键,可自定义其功能。

2.单个LED显示

       接下来将讲解如何进行单个LED控制,并结合按键进行控制。

       打开makecode,采用积木块编写以下程序:


在该程序中,首先,在开机的时候启用LED(默认启用LED,该句可不写),然后,在无限循环里面,执行以下程序:

1.切换坐标点(2,0)LED的亮灭状态,持续500ms

2.再次切换坐标点(2,0)LED的亮灭状态,持续500ms

3.点亮坐标点(2,4)LED,持续500ms

4.熄灭坐标点(2,4)LED,持续500ms

5.执行下一轮循环

    关于Micro:bitLED的坐标说明如下:


在本次实验中,可先通过makecode观察实验结果,同时,下载,可观测到实验现象为:坐标点(2,0)与坐标点(2,4)的点循环点亮,熄灭,实现了对单个LED的控制。

3.LED点阵图案显示

       打开makecode,采用积木块编写以下程序:


    当开机时积木块,表示刚刚插上电的时候所执行的程序。

刚插上电后,依次执行以下程序:

    1.显示数字3

    2.显示数字2

    3.显示数字1

    无限循环积木块,表示积木块里面的程序执行完后将从头开始执行。

将无限循环执行的程序为:

1.显示字符Go

2.显示心形图案

3.显示自定义向上箭头

4.显示向下箭头(南,满足上北下南,左西右东的条件)

5.清空屏幕

6.暂停500毫秒(执行完后,将从1重新开始)

可仿真执行,点击makecode左侧的“重启模拟器按钮”按钮,如下图所示:


LED显示可通过仿真预先观测现象,若观测结果无误后,点击下载,可观测到LED点阵实际显示的现象与仿真现象一致。

4.通过按键实现对LED的亮度控制

     Micro:bit板载两个按键的功能可自定义,即:当按键按下的时,执行的操作可自定义,接下来,将实现按键对LED的操作:

    打开makecode,采用积木块编写以下程序:


    该程序实现的功能为改变坐标点为(2,2)LED的亮度,当A按键按下的时候,LED的亮度级别增加50,当B按键按下的时候,LED的亮度级别减小50,其中LED亮度的级别取值范围为0255,并且,当亮度级别小于0时,将亮度级别设置为0,当亮度级别大于255时,将亮度级别设置为255

    以上定义了按键A增加LED亮度的功能,按键B减少LED亮度的功能.

5.通过按键控制LED点阵图案变化

    Micro:bit自带的积木块中,可通过屏幕(LED矩阵)绘制条形图,本节将通过按键来改变条形图的值。

    打开makecode,采用积木块编写以下程序:


    该程序实现的功能为更改条形图的高度,其中,设置了条形图的最大范围为25,当A按键按下的时候,条形图的高度值增加5,表现为LED矩阵亮的行数增加,如下图所示:


    以上定了按键A增加条形图高度,按键B减少条形图高度的功能。

TAG: TTL串口转CAN迷你模块 支持TTL和CAN数据双向收发转换 多种工作模式教程 X1301 树莓派5 HDMI转CSI-2模块1080P@60fp音频视频 兼容Pi4B/3B ST总线舵机 Modbus 1.5寸LCD 树莓派Pico显示屏1.54寸LCD模块 240×240像素 树莓派5外壳Argon ONE V3 Case带风扇红外IR ¥215 ESP32桌面小摆件 STM32烧录器 数据手册 TVOC气体总挥发性有机化合物传感器兼容Arduino树莓派ESP32/Pico 远红外 树莓派USB摄像头1200万IMX378 30fps双麦克风Jeston RDK 树莓派PICO远距离通信 ESP32-S3开发板4寸LCD显示触摸屏 480x480 86盒中控兼容Arduino LVGL TVbox SHT20温湿度 继电器 RS485 ESP32开发板 工业级USB转TTL串口UART线原装FT232RNL多种保护适用于树莓派5调试 桌面小摆件 传感器开发板 ESP32-S3开发板2.8寸LCD显示屏480x640触摸屏 QMI8658传感器 SD槽