控制
micro:bit 的控制积木可以在开发板发生特定事情时发出“事件通知”,并针对这些事件进行控制,例如,按钮按下可以发送按下事件,引脚被触发可以发送触碰事件,甚至可以将循环放入背景执行,实现许多进阶的特殊效果。
控制积木有几个分类:背景运行、等待、事件来源、事件结果 ( 数值 )、引发事件、等待事件、当事件发生、事件时间戳记、事件结果、重置、毫秒、装置名称、装置序号。
背景运行
“背景运行”积木可以让要运行的程序,进入背景执行,不受其他程序的影响。
下图的例子,左边基本的写法,只能让“先让爱心动画闪烁五次,之后才播放声音五次”,若改成背景运行的做法,则可以让爱心动画与声音“同时出现”,闪烁并播放五次后一起停止。
等待
“等待”积木可以将程序暂停 ( 等待 ) 指定的时间,时间过后再接续进行下方程序,单位是微秒 ( 1/1000000 秒或 1/1000 毫秒 )。
注意,等待积木只能使用于“实体”micro:bit,无法在模拟器展示。
下图的例子,micro:bit 启动后,正中间的 LED 灯会以 1000000 微秒 ( 1 秒 ) 的频率闪烁四次。
事件来源
“事件来源”积木表示默认事件来源的名称,如果不想要使用默认名称,可以用“变数”或“数字”重新定义。
默认的“来源”有以下几种 ( MES 开头为外接装置,不在此处列出 ):
| 默认来源 | 说明 |
|---|---|
| MIRCOBIT_ID_BUTTON_A | A 按钮 |
| MIRCOBIT_ID_BUTTON_B | B 按钮 |
| MIRCOBIT_ID_BUTTON_AB | A 按钮和 B 按钮 |
| MIRCOBIT_ID_RADIO | 广播 |
| MIRCOBIT_ID_GESTURE | 手势动作 |
| MIRCOBIT_ID_ACCELEROMETER | 加速度计 |
| MIRCOBIT_ID_IO_P0~P20 | P0~P20 的引脚 |
事件结果 ( 数值 )
“事件结果 ( 数值 )”积木表示默认事件要回传的“数值”,如果不想要使用默认数值,可以用“变数”或“数字”重新定义。
默认的“数值”有以下几种 ( MES 开头为外接装置,不在此处列出 ):
| 默认数值 | 说明 |
|---|---|
| MIRCOBIT_EVT_ANY | 任何事件 |
| MIRCOBIT_BUTTON_EVT_DOWN | 按钮按下 |
| MIRCOBIT_BUTTON_EVT_UP | 按钮放开 |
| MIRCOBIT_BUTTON_EVT_CLICK | 按钮按压 |
| MICROBIT_RADIO_EVT_DATAGRAM | 收到广播数据 |
| MICROBIT_ACCELEROMETER_EVT_DATA_UPDATE | 加速度数据更新 |
| MICROBIT_PIN_EVT_RISE | 引脚信号提升 |
| MICROBIT_PIN_EVT_FALL | 引脚信号降低 |
| MICROBIT_PIN_EVT_PULSE_HI | 引脚脉冲高 |
| MICROBIT_PIN_EVT_PULSE_LO | 引脚脉冲低 |
引发事件
“引发事件”积木可以针对指定的“来源”引发事件,并产生一个事件的“数值”,当“侦测到特定事件又满足指定数值”,就可以触发特定的程序内容。
引发事件的“来源”和“数值”可以使用默认值,也可以使用变数或数字,引发事件后,会透过“等待事件”或“当事件发生”来获取事件,进一步完成后续程序内容。
注意!因为事件来源的数字往往介于 0~9 之间,所以如果是用变数或数字自订,尽量避开这些数字,避免自订数值和默认值互相影响造成程序错误。
等待事件
“等待事件”积木可以让程序暂停,直到接收到特定事件后,才会接续进行程序内容。
下图的例子,重复无限次积木里先放上“等待事件”积木,等待事件积木后方有显示爱心的积木,micro:bit 启动后,并不会显示爱心图示,直到按下 A 按钮,发送事件之后,才会显示爱心图示。
当事件发生
“当事件发生”积木可以不断侦测事件来源,直到侦测到特定事件数值,就会执行内容程序。
下图的例子,第一个“当事件发生”积木是侦测“按下 A 按钮”事件发生时,显示爱心图案,第二个“当事件发生”积木是侦测“放开 A 按钮”事件发生时,清除屏幕。
事件时间戳记
“当事件发生”积木可以显示事件发生当下的时间,单位是微秒 ( 1/1000000 秒 )。
事件结果
“事件结果”积木可以显示侦测到事件的结果数值。
重置
“重置”积木可以将 micro:bit 重新启动。
毫秒
“毫秒”积木可以显示 micro:bit 启动后到目前的时间,单位是毫秒 ( 1/1000 秒 )。
装置名称
“装置名称”积木可以显示 micro:bit 的装置名称。
装置序号
“装置序号”积木可以显示 micro:bit 的装置序号。
微信扫码关注
抖音扫码关注