【micro:bit扩展】如何用慧编程扩展设计器为 micro:bit 编写扩展

慧编程-microbit 设备简介

慧编程支持 micro:bit 硬件,打开慧编程,选择硬件栏,点击添加,添加micro:bit

图片

可以看到慧编程官方现在支持的语句块如下:

图片 图片 图片 图片

转码实现原理

目前microbit支持的是离线代码上传,对于 microbit 的转码,如图所示

图片

积木块拖拽到帽子头下,点击侧边栏转码对照栏图标,可以看到对应的工作区转码,一个语句块对应的是一条microbit的 python API 语句。具体是怎么实现的呢,下面会讲到。

microbit 的 python API 参考官方文档:https://microbit-micropython.readthedocs.io/en/latest/
API 列表如下

图片

如何制作一个 microbit 扩展?

慧编程的扩展设计器,提供了开发者给慧编程制作扩展的能力。无论是想要增加一个新的设备支持,还是为已有的设备增加新传感器,或者增加积木块增强功能,扩展设计器都能满足你的需求。具体那应该怎么做呢?下面来手把手教你怎么给 microbit 增加一个增强扩展吧。

扩展设计思路

在制作一个扩展之前,我们先得想一想准备为目前的 microbit 增加些什么功能呢?对比慧编程已经支持的的 microbit 语句块和 microbit 官方的 api 来看,我们会发现,慧编程官方其实缺少了一些 api 的实现,比如

显示表情接口 (https://microbit-micropython.readthedocs.io/en/latest/tutorials/images.html图片

外接的音乐模块 API (https://microbit-micropython.readthedocs.io/en/latest/tutorials/music.html图片

好的,选择好了目标 API,下面我们就来具体实现将这两个 API 转化为积木块。

步骤1:登陆扩展设计器

第一步,我们进入扩展设计器:https://ext.makeblock.com

(如果你没有账号,可以非常方便的在扩展设计器主页注册一个。 这个账号可以后续用在 makeblock 的所有产品体系中,包括慧编程的社区、移动端、pc端、web端等等,用该账号还可以同步自己的作品,使用慧编程的人工智能服务哦,会非常有用滴!)

图片

步骤2:新建扩展

注册好了账号,我们就直接登陆进去,在左侧栏,点击【我的插件】,选择【我的扩展】。

(在扩展设计器中,【我的设备】和【我的扩展】是两个不同的概念,设备指的是具体的一个硬件设备,也可以理解为一个硬件角色,和舞台角色相对应。而扩展是需要依赖一个硬件角色或者舞台角色而存在)

比如我们这次为 microbit 开发增强扩展,选择的就是【新建扩展】,而不是一个设备。

图片

点击【新建扩展】后再次选择“通用模版”,点击确定,可以填写基本信息:

图片

图片

步骤3:填写基本信息

图片

点击【确定】后,回到扩展列表,点击【扩展名称】进入编辑页

图片

步骤4:添加分类和积木

点击添加分类后,出现弹窗,填写信息,标志ID默认即可。

图片

点击积木列表下面的 + 号,添加一个新积木块

图片

出现如下图

图片

步骤5:设计语句块

这里我们以音乐语句块为例,首先我们需要选中需要的 api。

查看 API 文档:https://microbit-micropython.readthedocs.io/en/latest/tutorials/music.html,找到 API

import music

music.play(music.NYAN)

确定该 api,只有一个参数,但是一个参数列表

图片

我们在【内容】这一栏的输入框中,输入“播放音乐”,然后输入一个空格,并紧跟着输入一个@,就会发现有一个下拉列表,该下拉列表代表慧编程积木所支持的所有参数类型,这里我们选择下拉框

图片

回车后看到

图片

改写参数名为 musicType,后面会用到

图片

点击 + 号,按照提示批量添加参数,点击确定

图片

得到参数如图 (如果参数第一行是空的,删掉第一行),这里左边是输入框中显示出来的描述文字,右边是该选项真正对应的值。

图片

这样我们就得到一个带参数的语句块

图片

勾选支持的平台后,并点击【保存】 (**注意点保存哦**)

图片

步骤6:填写转码

我们只做的是microbit离线语句块,所以每一个语句块在拼接后,都会对应生成一条 python 代码,最终所有 python 代码会被上传到 microbit 中进行执行。

在填写转码之前,我们先设置该扩展的转码语言为 python。点击【转码设置tab栏】,输入框中选择 python,然后点击最底部的【确认】按钮

图片

回到 【积木配置tab栏】,点击“上传转码”。

双击黑色区域,侧边栏会弹出代码编辑器,在编辑器中填写如下信息。 (在编辑器中输入API 语句,本质是在填写转码字符串,慧编程最后会拼接所有转码,在上传过程中,将这些代码内容上传到 microbit中。)

图片

(注意:lib 编辑区中填写的是引入的 python 模块,参考API,有就填写,没有可以不填)

【code】区域中会有特别的语法符号 {},该符号中填写语句块中的参数名,即可获取设置的参数值。

图片

点击底部的保存,一个语句块的转码就完成啦!

验证 microbit 扩展

在完成上述步骤以后,一个基本的扩展我们就算是完成了!下面我们来验证一下,该扩展是不是能正常工作。

步骤1:下载扩展到本地

图片

图片

得到 microbit_extended.mext

步骤2:拖拽 microbit_extened.mext 到慧编程中

出现提示扩展添加成功的提示

图片

在设备栏,先添加microbit 设备

图片

在积木边栏会惊喜的发现,我们的扩展已经成功加载进来啦!

图片

点击积木边栏底部的【添加扩展】按钮,也会发现我们的扩展处在列表中

图片

步骤3:验证积木块

拖拽积木到工作区,点开转码查看

图片

我们刚才添加的积木和api转码已经生效了。

连接 microbit 硬件到慧编程,连接蜂鸣器模块到 microbit 的 P0 口,

图片

点击上传代码

图片

图片

上传代码成功以后,就可以验证 microbit 的硬件功能啦,试试按下A键,效果怎么样?这样一个完整的扩展就开发完啦!

小结

参考上述步骤,大家会发现,给microbit添加一个扩展是不是还挺容易呢?主要步骤为:

确定API语句 > 配置积木描述和参数 > 配置转码 > 加载扩展到慧编程 > 上传到硬件

另一个表情语句块也可以按同样步骤,快速开发出来

图片

扩展存储位置

这些你拖拽到扩展设计器中的扩展,都是存放在你的电脑目录中的

windows系统存放于:C:\Users\用户名\mblock\exts\
mac 系统存放于:/Users/用户名/mblock/exts/

microbit 扩展包源码下载与导入

这里将教程中制作的扩展已经发布出来了,可以下载下来,拖拽到慧编程中直接使用 microbit_extended.mext

下载下来的 .mext 文件,也可以参考教程 《如何导入一个已经存在的 .mext 格式的慧编程扩展到扩展设计器》导入到扩展设计器,看看是怎么配置的参数。

大家也来试试制作一个属于你的 microbit 扩展吧~ 制作好了,还可以发布到慧编程的官方软件中,让其他慧编程的小伙伴也能分享到你制作扩展所带来的乐趣和便捷!

相关教程文章

敬请期待【慧编程扩展设计器系列教程】

【添加weixin:mBlock_helper,可以加入到慧编程扩展开发者微信群】

图片

results matching ""

    No results matching ""