本文能够学到:
1. 怎么将micro:bit与手机进行蓝牙连接
2. 用micro:bit做一个遥控器,掌控手机播放器
Micro:bit 是英国广播机构(BBC)联合非常多企业推出的微型可编程计算机,设计初衷是为了让每一个孩儿都能零基本接触计算机编程,不需要任何编程语言学习就能够直接上手。更加多介绍请看之前的文案用micro:bit做一个能够用的指南针。
通常咱们是进入 https://makecode.microbit.org 这个网址,在这儿进行网页编程。写好指令后下载到micro:bit盘符,或把hex文件拷贝到盘符里。
这次咱们用micro:bit来做一个遥控器,掌控手机音乐播放,切换乐曲。
micro:bit自带蓝牙芯片,工作于低功耗蓝牙模式(BLE),安卓4.3和ios6以上系统都支持低功耗蓝牙模式。咱们要做的是经过手机或平板端的micro:bit应用把手机和micro:bit配对,而后让micro:bit运行相应的程序,经过蓝牙与手机通信就行了。 micro:bit能够跟ios、安卓或windows手机/平板配对。意见尽可能运用安卓设备来调试。
micro:bit与手机蓝牙连接,在部分机型上可能会显现问题,例如同事的一台三星手机就总是连接失败。即使连接成功了,ios机型上可能亦不可正常地相应micro:bit的蓝牙通信请求,咱们在一台iPhone手机上的所有尝试都不成功,最后是换了一个安卓手机才实验成功的。ios设备开放性可能有有些问题,详细原由还需要后续分析。
ios设备和安卓设备都能够用micro:bit应用与micro:bit进行蓝牙配对,办法基本类似。
点击应用上的配对按钮,根据提示操作,这儿重视要同期按住A键和B键不放,而后按下板子背面的reset键,按一会再松开,全部过程中A键和B键始终保持按下状态。而后micro:bit会显现pairing mode字样,并表示一个图形,咱们把这个图形画到应用里。点击下一步
这儿会提示起始连接,中间会需求输入一个6位数字,点击micro:bit的A键表示这个6位数字,ios版本直接输入就行,安卓版本则要从屏幕顶部下拉出通告框,点击请求配对的通告,输入6位数字,有一个30秒的时间限制。
详细配对细节亦能够看这个视频
首次配对成功后,倘若连接中断,需要再配对时,点击connect,再点那个小的连接图标就能够重新连接,变绿了便是连接好了。这个重新连接功能在安卓上比较方便,ios设备上有可能重连不上。
材料和工具名单
Micro:bit主控板
数据线
Makecode在线网站,如 https://makecode.microbit.org
手机或平板电脑一部,音乐播放应用
写程序
Martin Woolley是一位英国技术人员,曾参与了micro:bit的蓝牙模块研发。他在博客上分享过有些micro:bit蓝牙编程实例,这次咱们就直接照着操作一下。
首要咱们进入 https://makecode.microbit.org 或其他在线编程网页,打开模块化编程界面,在进阶—>添加软件包选项中,把bluetooth和devices包加进来。
之后会提示radio模块和这两个模块不兼容,点击继续。
能够看到蓝牙和设备模块已然添加进来了。
设备模块中的命令实现,直接依赖于蓝牙模块(添加设备模块会自动把蓝牙模块亦加进来),咱们这儿直接运用设备模块中的“指示遥控”命令就行了。
手机和外边设备经过蓝牙通信不是什么鲜嫩事,例如有些自拍杆便是经过蓝牙跟手机连接的,连接后按自拍杆上的按键就能够掌控手机相机应用拍照了。上图中能够看到设备模块中有不少命令,除了能够掌控播放器,亦能够掌控相机。
程序如图,按A键切下一曲,按B键放上一曲,同期按下A+B键起到播放或暂停的功效,playing变量为1暗示正在播放音乐,为0时暗示已暂停。
不论音乐播放应用是在前台表示还是后台播放,micro:bit的命令都有效。表示LED命令是随便画的,只是为了晓得程序正常运行了,标识一下是哪个设备,电脑还是手机上编译的。
有些说明
micro:bit上刷入编译好的带蓝牙指令的hex格式文件,当板子和手机/平板蓝牙配对成功之后,就可成功地与手机进行通信交互。
这个hex文件能够是网上直接找来的,亦能够是自己在电脑上编译的。
另外,还能够在手机/平板上打开网页编程界面,在手机上进行编程后编译成hex文件保留到手机,而后经过micro:bit应用的flash选项把手机上的这个hex文件经过蓝牙传输刷进micro:bit里,这般全程就只用一台手机/平板就行,数据线都不消了。(然则有些手机或浏览器可能打不开网页编程界面)
在手机/平板上打开网页编程界面进行编译并刷入micro:bit这个过程不是必须的,咱们的实验中,便是直接在电脑上编译了一个hex文件,拷进micro:bit盘符中,把安卓手机跟micro:bit进行蓝牙配对后,就能够掌控手机音乐播放器切换曲子了。手机端的micro:bit应用仅起到跟micro:bit进行蓝牙配对的功效。
在咱们的实验中,iPhone和iPad在国内网络下,不论是用4g还是wifi,都几乎没法用safari浏览器打开在线编程界面。然则安卓设备就无问题 :-D,虽然亦要费有些时间,况且不是所有浏览器都能够成功。一样的当蓝牙配对断开时,安卓手机点重新连接能够很容易地连接上,ios则可能重连会失败,需要重新配对。
看一下程序运行的效果吧
这次的编程很简单,大众直接在任意网页编程界面用模块化界面编译hex文件就行。倘若是安卓版本的micro:bit应用,亦能够试试应用自带的几个演示程序。
后续改进
此刻的代码还有些缺陷,倘若同期运用micro:bit和手机应用屏幕按键来掌控播放的话,那样判断音乐是在播放状态还是暂停状态就不准确。
例如,倘若用micro:bit的A+B键掌控音乐起始播放后,在手机播放器上按暂停,micro:bit程序还是会认为音乐处在播放状态,此时再按A+B键会起步暂停命令,这个指令不会生效,表现为按键后无反应,再按一次才可正常掌控手机播放器。不外这并不会影响运用便是了。
近期咱们推出了micro:bit系列教程,点击链接认识更加多:
用micro:bit做一个能够用的指南针
用micro:bit和3D打印做一个摩尔斯电码发报机
石斧创客
石斧(Handaxe)可能是人类最早制造出的工具。从石器木棒到3D打印,让咱们像祖先同样愉快地造点东西。
|