yotta (Mbed, C++, offline)
运行这个示例,需要连一个小扬声器到 Pin#0 和 GND,让人惊喜的是,makecode 上直接集成了一些简单的音效,直接就可以选择播放。This is a big surprise. 如果想用 Arduino 实现同样的功能,肯定没有这么简单,旋律以什么样的方式呈现在代码中,都是很抽象的事情,而 makecode 开发环境还能直接展示模拟的效果,真的是可以一下子就让小朋友们爱不释手。
配合应用市场上已有的 app,很方便就能体验 micro:bit 上的蓝牙服务。
这里开启的几个服务:加速度计、磁力计、温度计、LED、按键,通过 app 都能访问互动:
这里推荐:micro:bit blue
在 micro:bit blue 应用中,有一个游戏手柄的应用,这个是 micro:bit 非常吸引我的地方,而在以往的经验中,想作遥控车子,就要同时开发小车端和遥控端,如果还要移动端的话,还要折腾移动应用开发,一想就是头很大的事情。而 micro:bit blue / bitty controller 上已经提供了手柄应用的话,那么基本就只有小车端要开发了。而且,使用蓝牙还有个天然优势,就是配对的支持,这就可以同时跑多辆车,而不用担心干扰的问题。
就像之前扬声器播放旋律的示例一样,原先在其它平台比较复杂的应用,到 micro:bit 这边已经非常简化了。我一开始也以为控制小车,各种信号事件处理会很复杂,然而并没有……
原来 makecode 中已经集成了与手柄应用配对的各种事件,那么接下来的操作就很简单了,只要把相应了IO执行代码嵌入进去就行了,而IO操作的外设也只有2个:舵机1个,电机1个。舵机有三种状态:左中右,电机有三种状态:进停退。舵机只需要1条控制线;电机的话,通过电机控制模块,也只占2个IO口。电源部分比较纠结,车架上有个2个串联的AAA(7号)电池位。如果单纯使用3v供电,舵机力量不足,角度不到位,后使用2节3.2v磷酸铁锂电池(配合占位筒)并联,并升压至 4.2v 进行供电。