搜索

micro:bit 教学

基本介绍

micro:bit 硬件规格 micro:bit 开发方式 使用 MakeCode 开始控制 micro:bit

程序积木

基本 输入 输入 ( V2 ) 输入 ( 更多 ) 音效 音效 ( V2 ) 灯光 灯光 ( 更多 ) 广播 广播 ( 更多 ) 循环 逻辑 变数 数学

进阶积木

函数 数组 文字 图像 游戏 引脚 引脚 ( 更多、V2 ) 控制 序列

扩展积木

超音波 ( 侦测距离 ) 温湿度 伺服马达 红外线接收 红外线发射 MAX7219 点矩阵 LCD1602 显示器 OLED1306 显示器 TM1637 七段显示器

入门范例

跳动的心 简单烟火动画 倒数计时放烟火 改变动画默认时间 剪刀石头布 ( 按钮 ) 摇骰子 一直向下的箭头 指北针 长条图显示亮度 光影魔术手 爱心呼吸灯 爱心小夜灯 按钮秀文字 按钮计数器 晃动计步器 显示随机图案 空中传爱 ( 广播 ) 超时空跑马灯 ( 广播 ) 长条图显示音量 ( V2 ) 拍手换图案 ( V2 ) 亮度乐器 ( V2 ) 翻转大黄蜂音效 ( V2 )

灯光范例

灯光绕圈 ( 座标 ) 灯光绕圈 ( 数字函数 ) 循环霹雳灯 依序点灯 ( 座标 ) 依序点灯 ( 数字函数 ) 随机不重复的灯 按钮依序开关灯 平衡灯 ( 姿势 ) 平衡灯 ( 旋转感测 ) 数组点灯 ( 显示图形 ) 数组点灯 ( 动画 ) 移动速度不同的灯

游戏范例

小玛莉游戏机 射击幽浮 记忆大考验 翻转吃豆子 猴子接香蕉 老鼠走迷宫 吃角子老虎机 太鼓达人 贪吃蛇 心电感应 ( 广播 )

电子元件范例

闪烁的 LED 灯 全彩 LED 光线变化 长条图显示土壤湿度 小夜灯 ( 光敏电阻 ) LED 显示温湿度 LCD1602 显示温湿度 超音波倒车雷达 七段显示器显示距离 人体红外线侦测 旋钮控制 LED 亮度 电流急急棒 OLED 绘制数学图形 OLED 显示手绘图案 触碰开灯 ( 引脚按下 ) 触碰开灯 ( 类比信号 ) 水果钢琴 ( 类比信号 )

MoonCar 自走车

MoonCar 教学导读 关于 MoonCar 自走车 程序积木介绍 控制移动和转弯 七彩魔幻 LED 超音波隔空推车 超音波倒车雷达 超音波隔空弹钢琴 超音波自动避障 侦测和辨识颜色 辨识颜色+演奏音乐 辨识颜色+控制移动 红外线遥控器控制移动 micro:bit 广播遥控 趋光性自走车 指北车 ( 永远转向北方 ) 循迹自走车 循迹自走车+辨识颜色 听到声音就移动 ( V2 )

EZStartKit 扩充板

EZ Start Kit 教学导读 关于 EZ Start Kit+ 程序积木介绍 LED 基本控制 LED + 按钮开关 LED + 可变电阻 LED 光感应小夜灯 RGB LED 基本控制 RGB LED + 红外线遥控器 OLED 显示文字与数字 OLED 显示动态数字 OLED 文字跑马灯 OLED 绘制图形 OLED 绘制正弦波图形 OLED 倒数计时器 OLED 显示手绘图案 继电器 + 红外线遥控器

OLED 文字跑马灯

这篇教学会使用 MakeCode 编辑 micro:bit 扩充板程序 ( EZ Start Kit+ ),使用文字、数组、变数、循环和函数互相搭配,做出在 OLED 显示器上显示文字跑马灯的效果 ( 单行跑马灯、多行跑马灯、多行不同速度跑马灯 )。

显示数组中的文字

文字跑马灯的原理,就是将“文字拆成数组,依序显示数组的每个项目”,所以第一步需要显示数组中的文字,下方的范例,会先将文字根据空字元“""”拆成数组,接着再将数组的前 16 个项目组合成新的文字,最后透过 OLED 显示 ( EZ Start Kit+ 的 OLED 一行最多 16 个字 )。

micro:bit 扩充板 ( EZ Start Kit+ ) - OLED 文字跑马灯

micro:bit 扩充板 ( EZ Start Kit+ ) - OLED 文字跑马灯

单行文字跑马灯

使用“重复判断 true”积木进行不断重复的动作,每次重复时除了组合要显示的文字外,也会将数组的第一个项目移动到最后,如此一来每次组合就都会是全新的文字 ( 少掉开头,结尾多一个 ),搭配暂停积木,就可以在 OLED 显示跑马灯的文字。

micro:bit 扩充板 ( EZ Start Kit+ ) - OLED 文字跑马灯

micro:bit 扩充板 ( EZ Start Kit+ ) - OLED 文字跑马灯

多行文字跑马灯

要实现多行文字跑马灯效果,除了可以多次重复单行文字跑马灯的程序,也可以使用函数来简化重复的程序码,新增一个名为 show 的函数,新增一个文字参数 text,以及三个数字参数 speed、x、y ( speed 为跑马灯速度、xy 为 OLED 显示位置 )。

micro:bit 扩充板 ( EZ Start Kit+ ) - OLED 文字跑马灯

将单行跑马灯的程序放入函数里,按照下图将部分固定的文字或数字,改成函数的参数 text、speed、x 和 y。

micro:bit 扩充板 ( EZ Start Kit+ ) - OLED 文字跑马灯

函数完成后,在启动时使用不同的变数建立多组文字,使用“不同的重复无限次”积木,呼叫函数,并调整函数的参数。

为什么要使用不同的重复无限次积木呢?因为函数里使用了“重复判断 true”积木,如果按照顺序执行函数,会因为这块积木导致后方的函数无法执行 ( 一直卡在前一个函数的无穷循环 ),所以必须使用不同的重复无限次积木避开这个问题。

micro:bit 扩充板 ( EZ Start Kit+ ) - OLED 文字跑马灯

由于 makecode 在定义变数时,通常是定义为“全域变数”,如果要同时呈现不同的跑马灯文字,需要切换到 JavaScript 修改程序码,按照下图,移除下方红色匡起来的部分剪下,上方红色匡起来的部分前方补上 let。

micro:bit 扩充板 ( EZ Start Kit+ ) - OLED 文字跑马灯

完成后“不要切换回积木”( 因为切换回积木会将修改的程序还原 ),直接将程序烧录到 micro:bit,就会看见多行跑马灯的效果 ( 文字不同、速度不同 )。

micro:bit 扩充板 ( EZ Start Kit+ ) - OLED 文字跑马灯

范例解答

延伸练习

如果已经熟悉了 EZ Start Kit+ OLED 文字跑马灯的原理,还可以尝试更多好玩的作法:

  • 修改“单行跑马灯”程序,加入按钮开关积木,按下 A 出现一组文字跑马灯,按下 B 出现另外一组文字跑马灯 ( 解答 )。

意见反馈

微信二维码 微信扫码关注 抖音二维码 抖音扫码关注