- 用户指南
- 概览 Overview
- 编写脚本 Working with Scripts
- 积木块操作 Block Operations
- 积木块的右键菜单 Block Right-Click Menu
- 复制 duplicate
- 复制全部 duplicate all
- 取出积木 extract block
- 帮助 help
- 复制到剪贴板 copy to clipboard
- 作为URL复制到剪贴板 copy to clipboard as URL
- 保存脚本的图片 save picture of script
- 保存带有结果的脚本图片 save picture of script with result
- 显示指令 show instructions
- 显示字节代码 show compiled bytes
- 查找该积木块的用途 find uses of this block
- 查找变量访问器 find variable accessors
- 显示积木块定义 show block definition
- 查找变量修改器 find variable modifiers
- 显示积木定义 show block definition
- 删除积木 delete block
- 脚本区右键菜单 Block Right-Click Menu
- 菜单栏 Menu Bar
- 菜单说明 Menu Description
用户指南
如何使用 MicroBlocks 编辑器。
概览 Overview
下图显示了 MicroBlocks 编辑器的主要区域。
积木分类区(积木抽屉) Block Categories
这个区域包含了所有用于 MicroBlocks 编程的积木类别。它们被分成 9 个颜色组。随着类别的选择,该类别中相应的块将被列在旁边的积木展示区域(像拉开一个抽屉里面摆放着积木块)。
菜单栏 Menu Bar
提供三个系统菜单,以及图表和连接图标。下面将详细介绍这些菜单。
项目名称 Project Name
在脚本区显示项目的名称。
同步指示器 Synch Indicator
当新的程序被加载到IDE,或现有的脚本被编辑时,该指示灯显示与所连接的微控制器板同步的进度。
开始/停止按钮 Start / Stop Buttons
由两个图标组成,开始和停止,用于控制 MicroBlocks 程序的执行。
启动按钮执行所有的事件驱动块,如启动时和当[条件]时,来模拟微型设备通电。
库列表 Library List
这个区域的内容反映了根据用户脚本和微处理器的要求而加载的各种库。列表可以为空(不引用任何库)也可以引入多个库。详细说明请见下面的库。
积木展示区 Blocks Palette
当在积木块分类区域进行选择时,具有这类特定功能的积木块将被列在这个区域。在这里,可以将这些积木块拖放到脚本区来编写程序。 如果需要删除脚本区域中的块,只需将它们拖到该区域即可。垃圾桶图标将可见以指示这种可能性。
如果将脚本区域中的自定义块定义移动到此区域,它不会被删除,而是会被隐藏。为了表明这一点,将可见一个带有横条的眼睛图标。
脚本区 Scripting Area
这是 MicroBlocks 开发环境的主要界面,所有的编码活动都在这里进行。积木块被拖放到这个区域来建立用户脚本和自定义积木块(功能)。
积木块信息/帮助区 Block Info / Help Area
当鼠标移动到黄色突出显示的各种积木块和 IDE 区域时,该区域会显示积木块的类型和简短帮助信息;以及各区域的功能。详细的块信息可通过每个块的右键菜单获得。
积木块大小控制 Block Sizing Controls
这三个控件使人们能够向上(+)或向下(-)调整块的大小,以及将它们设置为默认(=)大小。
编写脚本 Working with Scripts
由于脚本区是编辑器中使用最频繁的部分,介绍该区域特有的操作和使用惯例能帮助你更好的使用编器。
积木块操作 Block Operations
放在脚本区的积木块可以用鼠标自由移动。 此外,人们还可以对放在这里的积木块和脚本进行各种操作。
键盘快捷键与 CONTROL 和 SHIFT 键的组合一起使用:
CONTROL意味着重复
SHIFT 的意思是“仅提取或复制一个块” (即并非其下方序列中的所有块)
按住拖拽 像往常一样,拖动(无修饰符)提取块及其下面的任何块
按住 Control 键拖动与“全部复制”相同
按住 Shift 键并拖动与“提取块”相同
Control-Shift-拖动与“复制块”相同
拖放 drag & drop
如上所述,几乎所有使用过基于块的开发环境(Scratch、SNAP!、MakeCode 等)的人都非常熟悉块的拖放移动。 https://wiki.microblocks.fun/ide_user_guide/dragdrop_conv.mp4
Microblocks 的不同之处在于,被点击的积木块会有一个漂亮的阴影,在背景中突出它。这种3D效果使人们很容易感觉到目标块实际上是在运动,漂浮在脚本区的表面,甚至在其他脚本块之上。
积木拼接 block snap
当用鼠标移动的单个或一组积木块接近附近的其他积木块时,会出现一条水平白线,指定一个捕捉点。
如果这时松开鼠标,鼠标下的积木就会与白线另一边的积木相扣。
积木块的右键菜单 Block Right-Click Menu
右键点击一组块(脚本)中的任何块,将显示一个块级别的菜单。
复制 duplicate
选择它将复制鼠标所处的单个积木。 某些区块形状像 C 的积木(C-Blocks) ,条件积木(IF-Blocks)可能包含一组其他积木块。 当复制应用于这些积木块时,整个组将被复制。
复制全部 duplicate all
这个选项与复制类似,不同的是,它复制所选积木块下面的全部积木。 基于我们一直在使用的例子,点击重复块并选择复制全部,就会复制重复当前积木块和它下面的所有积木块。
在这里,需要记住的一点是,如果 “下面的积木 “在一个C形状(C-Block)积木内,那么所有被复制的都被限制在C形状包含的积木范围内。
第二个例子显示了点击重复块中的第一个块时发生的情况。只有重复区块内的区块被复制。
取出积木 extract block
积木图形化编程的一个缺陷是,对处于一组积木块中间的单个积木块进行操作是相当麻烦的。 MicroBlocks 是少数几个能很好地处理这种情况的 IDE 之一,它提供了从一组积木中提取一个积木块的方法。 右键单击组内的任何积木块,将显示一个积木块选择菜单,其中列出了取出积木选项。
当点击时,目标积木块(或积木组)将被提取并附着在鼠标指针上,以便移动并放置在其他地方。
帮助 help
帮助块提供一个链接到描述目标积木块的WIKI网页。该网页在一个新的标签中打开,并自动定位到所选择的积木块。
复制到剪贴板 copy to clipboard
这是一个非常方便的操作,它可以将选定的块组复制到剪贴板上。然后不仅可以在同一项目中粘贴,也可以在不同项目之间粘贴。它甚至可以在 MicroBlocks 编辑器的不同实例(浏览器版本或离线版本)之间进行复制/粘贴。这个操作有一个类似的操作,即复制所有脚本到剪贴板,当点击脚本区的背景时就可以弹出操作。该操作会复制项目中的所有脚本。
作为URL复制到剪贴板 copy to clipboard as URL
这是一个主要用于将 MicroBlocks 程序嵌入网页组成的功能,因为其格式是URL编码的。下面是上面使用的程序的一个例子。
而这是以URL格式保存的同一个程序。 https://microblocksfun.cn/run/microblocks.html#scripts=GP%20Script%0A%0Ascript%20328%2071%20%7B%0AwhenStarted%0AsetUserLED%20true%0A%7D%0A%0A
虽然这个URL保存样本是一个非常小的程序(只有两个积木),而且 URL 版本只有大约一行,但一个实际的程序会有相当大的规模,其URL版本也会有相当长的长度。
保存脚本的图片 save picture of script
另一个方便的操作是为所选的脚本或区块制作一个图像拷贝。该图片将以PNG格式保存。
这个操作有一个相关的对子,即保存所有脚本的图片,当点击脚本区的背景时就可以访问。 这个操作会生成项目中所有脚本的图像。
保存图片的大小由右击 IDE 区域时显示的菜单上的选项设置导出的脚本大小来控制。
下一步是显示一个系统文件对话框,用户可以在自己的电脑上指定保存位置。
保存带有结果的脚本图片 save picture of script with result
只有在选择了 MicroBlocks 菜单中的显示高级积木时,你才能看到这个操作。
和其他的 “保存脚本图片” 积木块一样,这个积木也是为所选的脚本或块制作一个图片副本。然而,在图片快照之前,块/脚本的内容会被执行,其结果(如果显示的话)会包括在快照中。参考手册中提供的许多例子都是用这个选项完成的。
下面是一些演示这一操作的序列图片。
显示一个系统文件对话框,用户可以在他们的电脑上指定保存位置。
注意:由于该操作要等到脚本执行完毕后才能拍摄快照,所以不可能拍摄那些长循环或无休止循环的脚本。
看看到目前为止使用的这个版本的例子吧。
因为在说显示之前有一个永远重复执行,所以脚本永远不会结束,说信息永远不会显示,脚本的保存图片与结果操作永远不会得到保存图片的机会。
记住:上面描述的两种保存操作都是在单个区块层面上进行的,也可以在一个区块序列或整个脚本上进行。
显示指令 show instructions
只有在选择了 MicroBlocks 菜单中的显示高级积木时,你才能看到这个操作。
显示字节代码 show compiled bytes
只有在选择了 MicroBlocks 菜单中的显示高级积木时,你才能看到这个操作。
这个信息中最重要的部分是第一行,显示的是编译的字节数。这个信息很重要,因为MicroBlocks的脚本有一个大小限制,因为微控制器的内存大小有限。一个脚本的最大编译字节数必须不超过1000字节。
查找该积木块的用途 find uses of this block
这个操作列出了整个脚本中所有被选中的块的出现,包括正在使用的自定义块和库。
当点击显示出现的结果列表中的项目时,包含特定积木块的具体程序部分将被显示出来,该块将闪烁几下,然后停止。
查找变量访问器 find variable accessors
两个特殊版本的 “查找 “块与变量一起使用:访问器和修改器。当一个变量被右键点击时,下面的菜单会显示查找选项。
这个操作列出了在整个脚本中出现的所有变量块使用,包括自定义块和库。
当显示出现的结果列表中的项目被点击时,包含特定积木的具体程序部分将被显示,该块将闪烁几次,然后停止。
显示积木块定义 show block definition
该块用于显示用户编写的自定义块和MicroBlocks中编写的任何库块的内容。一些库块是用低级别的代码实现的。这些是不可能显示的,当点击时,不会显示显示块定义的选项。
查找变量修改器 find variable modifiers
这个操作列出了在整个脚本中所有改变数值的变量积木块的出现,包括自定义积木和库。
当显示出现的结果列表中的项目被点击时,包含特定积木的具体程序部分将被显示,该块将闪烁几次,然后停止。
显示积木定义 show block definition
该积木用于显示用户编写的自定义积木块的内容,以及 MicroBlocks 中编写的任何库积木的内容。一些库积木是用低级别的代码实现的。这些是不可能显示的,当点击时,不会显示显示块定义的选项。
删除积木 delete block
它删除了目标积木或脚本。
要小心,目前删除是不可恢复的。
脚本区右键菜单 Block Right-Click Menu
用户在脚本区工作时可能遇到的最后一个菜单是右键单击脚本区的空白位置时显示的菜单。
设置积木块大小 set block size
当选择设置积木块大小时,将显示一个积木块大小的菜单。
块的大小将根据用户的选择进行调整。 下面是100%和250%选择的结果。
撤消 undrop (ctrl-Z)
撤销已完成的最后一个块的移动。编辑(复制、删除和粘贴)不算作移动。移动基本上只限于通过点击鼠标来改变块的位置。 实际上,如果在右键点击脚本区域时,没有完成任何块或脚本的移动,菜单中就不会显示撤消选项。
整理积木 clean up
将屏幕上的脚本段和松散的块组织成自上而下、从左到右排列在脚本区的左侧。块的排列方式是由IDE区域的宽度决定的多列。 该操作不能撤消 !
将所有脚本复制到剪贴板 copy all scripts to clipboard
这是对复制到剪贴板操作的补充,之前只复制目标块或脚本,而这个则复制项目的所有脚本。
将所有脚本作为URL复制到剪贴板 copy all scripts to clipboard as URL
这是一个主要用于将 MicroBlocks 程序纳入网页组成的功能,因为其格式是URL编码的。下面是上面使用的程序的一个例子。
而这是以URL格式保存的同一个程序。
虽然这个URL保存样本是一个非常小的程序(只有两个区块),而且URL版本只有大约一行,但一个实际的程序会有相当大的规模,其URL版本也会有相当长的长度。
将所有可见脚本保存为图片 save a picture of all scripts
这是对保存脚本操作图片的补充版本。它不是一个单独的块或脚本,而是将脚本区中所有可见的脚本做成PNG格式的图片。你可以使用上面的设置块大小命令来调整块的大小,以防它们不适合可视区域。
请注意,如果你有很多脚本,可能无法使它们全部可见。
设置导出的脚本的比例 set exported script scale
控制保存的脚本的块大小和分辨率。默认是200%。
除了鼠标和窗口滚动控件之外,键盘箭头键还提供在此区域工作时的滚动支持。
菜单栏 Menu Bar
前三个图标在点击时呈现下拉菜单。
选择显示高级区块会使一些额外的区块出现在软件面板上。它还可以启用更多高级用户所需要的额外功能和菜单选项。
图表和连接 Graph and Connect
图表打开一个图形窗口,由图表积木块用来绘制数据图。(详情请见参考手册中的图表积木块描述)。
连接用于显示和连接到连接有微型设备的系统 USB 端口。还有一个 Open Boardie 选项用于连接到虚拟板 Boardie。
从试点版本 1.2.52 VM 216(2024 年 1 月)开始,MicroBlocks 开始通过 BLE(低功耗蓝牙)连接支持编程活动,从而实现不受限制的编程(无需 USB 电缆)。目前 micro:bit v2 和 ESP它还不是标准版本的一部分。
有关详细信息,请参阅蓝牙详细信息。
同步指示器 Synch Indicator
通常情况下,这个指标是不可见的。然而,当新的程序/库被加载到 IDE或 任何现有的程序块被编辑时,该指示器显示程序块与所连接的微控制器板同步的进度。
开始/停止按钮 Start / Stop Buttons
在主菜单栏的最右端有两个图标 “开始 “和 “停止”,用于控制程序的执行。
菜单说明 Menu Description
以下部分详细描述了菜单的所有内容和功能。
语言 Language
这个菜单项允许用户选择许多语言中的一种的语言。一旦设定所有的菜单、信息和代码块将以该语言显示。 菜单底部的自定义…选项在为编辑器创建翻译时使用。 编辑器时使用。它允许翻译者测试新创建的 它允许翻译者通过从系统菜单中选择并应用它来测试新创建的翻译文件。
设置 MicroBlocks
关于 about…
显示有关 MicroBlocks 编辑器和固件(Firmware)版本的信息。(固件版本需要连接硬件才能显示)
升级主板固件 update firmware on board
该项使用户能够将最新版本的固件加载到所连接的微型设备上。根据条件的不同,可能会出现一个设备选择菜单供用户选择。
选择之后,将显示不同的信息,提示进一步的操作。 MicroBlocks 支持许多微控制器板。详细情况见板卡部分。 下面是 Adafruit CLUE 设备的一些提示示例。
随着固件更新的进行,绿色的USB图标将被关闭。更新完成后,需要重新建立微型设备和USB端口之间的连接。见USB部分。
显示高级积木 show advanced blocks
当选择时,菜单中的高级选项,以及积木块类别中的高级积木将被启用。 一旦启用,菜单项将变为隐藏高级积木块。
高级配置项 MicroBlocks Advanced
固件版本 firmware version
显示主控板设备的虚拟机固件版本。
擦除信息并升级ESP固件 erase flash and update firmware on ESP board
ESP 板是 Espressive 公司的一类特殊板子,具有 WIFI 功能。它们在更新方式上有不同的技术规格。这个项目完全擦除板子的内存内容并加载最新的固件。
会显示一个设备选择菜单供其选择。选择完毕后,固件更新开始。图形显示告知进展情况。
当更新完成后,你可能会被要求重新建立USB连接。见USB部分。
禁止自动加载和主板相关的积木库 disable autoloading board libraries
MicroBlocks 编辑器的一个优点是,它总是试图让用户的事情更简单。由于每个微处理器设备都有不同的特性、特点和能力,MicroBlocks 自动尝试通过加载各种库来补充基本功能。
这里,作为一个例子,是为 micro:bit 设备加载的两个库。
选中后,该项将禁用这一功能;而由用户来加载所需的库。
允许项目为空时从主板里获取代码 enable PlugShare when project empty
MicroBlocks 编辑器的另一个超级功能是,如果没有其他项目加载到编辑器中,它将自动从连接的微型设备中加载一个项目。为了确保编辑器中没有任何项目块,在使用这个功能之前,请从文件菜单中选择新。
要启用这个功能,只需要在菜单中选择这个项目。一旦完成,编辑器将从设备中读取项目,然后继续将其加载到编辑器中。
下面是来自一个 micro:bit 设备的显示,自动加载一个项目。
这一功能使用户能够通过简单地将他们的设备插入 PC,在他们之间分享项目。
文件 File
新建 New
如果工作区有加载的程序,它将显示一条信息,要求确认清除活动项目。
确认后,启动一个干净的新脚本区,如下图所示。
脚本区被清除了以前的脚本积木块。所有用户添加的库都被清空。根据微型设备的类型和选项 允许自动加载和主板相关的积木库 的设置,某些库将被加载。
如果连接图标不是绿色的,并且选择了允许项目为空时从主板获取代码,那么一旦建立USB连接,MicroBlocks 就会从连接的主板中读取并加载项目。
打开 Open
这是将用户个人电脑上先前保存的项目加载到工作区的方式。除了用户自己的项目外,还可以加载其他不同类别的样本项目。 如果在脚本区有一个活动的项目,会显示一个确认信息。见上面的文件新建。 会出现一个文件打开对话框。
首先显示的重点是例子类别,那里有许多针对不同微处理器和硬件选项的 MicroBlocks 项目。 用户自己的PC 目录可以通过切换到左边的计算机标签选择来达到。这将呈现标准的系统文件打开对话框,在这里可以选择以前保存的项目。
从主板上打开 Open from board
如果连接图标不是绿色的,并且在项目没选择项目清空时启用PlugShare,那么这个选项将在文件菜单中可见。如果USB连接已经建立并且连接图标是绿色的,则该选项将不可见。 如果在脚本区有一个活动的项目,会显示一个确认信息。见上面的文件新建。
假设上述条件得到满足,那么只要选择了该项目,就会显示连接设备的信息。
保存 Save
一旦一个项目准备好了,就需要把它保存到用户的电脑上。 选择 “保存 “将显示一个系统文件对话框,用户可以给程序起一个名字,并将其保存到他们的电脑上。
MicroBlocks 中没有预先配置的文件保存位置或选项。 用户可以指定PC上的文件保存位置。
文件高级 File Advanced
将自制积木导出为库 export functions as library
当在一个项目中创建自定义块时,它们通常会被保存为用户项目文件的一部分,扩展名为UBP。
但是,如果希望将自定义块做成一个库,并将它们作为库的代码独立保存和加载(扩展名为UBL),那么就需要将它们从脚本中导出并保存到一个单独的文件中。
这个选择可以实现这个目的。
它将显示一个对话窗口,在那里可以指定并保存库的名称。新的文件将有一个UBL扩展名。
USB 有线连接
USB 连接图标用于显示一个菜单,其中列出了支持的不同连接选项:
连接主板 - 有线连接主板的 USB 端口
无线连接 (BLE) - 无线连接支持 BLE 蓝牙的设备
连接模拟器 - 连接到模拟器 BOARDIE
单击连接时,将显示系统 USB 端口菜单,其中列出了 PC 上所有 USB 连接的设备。
选择一个条目并单击“连接”将建立与相应微型设备的连接。 连接成功后,USB 图标将变为绿色圆形背景:
单击无线连接 (BLE) 时,会显示系统 BLE 端口菜单,其中列出了 PC 上已加载 BLE 固件的所有蓝牙连接设备。
请注意 MicroBlocks 条目中显示的三字母代码:
MKU - 已配对表示已检测到具有 BLE 支持固件的微控制器并为用户进行了注释。如果有更多具有类似功能的设备,它们都会在此处列出,并分配不同的三字母代码。
通电后,带 LED 显示屏的主板上也会显示相同的三字母代码。这可用于定位将与其建立 BLE 连接的正确设备。 选择一个条目并单击“配对”将建立与相应微型设备的 BLE 连接。 连接成功后,USB 图标将变为绿色圆形背景:
确认 MicroBlocks 连接状态的另一种方法是单击/移到 MicroBlocks IDE 的浏览器选项卡。根据建立的 USB 或 BLE 连接,您将看到如下所示的两个显示之一:
请务必注意该图标的状态。 MicroBlocks 有很多内部自动化流程,可以让用户在编辑器中工作时更加轻松。在附加设备上自动更新和同步项目代码就是其中之一。仅当图标处于绿色模式时才可能实现。
有时,由于各种原因,与微型设备的连接可能会被切断。此时图标将不会显示绿色圆圈。如果遇到这种情况,应暂停程序编辑并调查断开连接的原因。
当与所连接的微型设备的连接断开(USB 图标周围没有绿色圆圈表示)时,建议不要开发程序或排除程序故障。
蓝牙无线连接
BLE 连接支持是 MicroBlocks 的一项新功能,从试点版本 1.2.52 VM 216(2024 年 1 月)开始引入。
BLE 低功率蓝牙连接使人们能够不受运行 MicroBlocks IDE 的 PC 的束缚进行工作。通常,您的微控制器通过 USB 电缆连接到 PC,这提供了必要的电源,并支持 IDE 提供的编程活动。此连接还要求您的微控制器位于连接USB电缆长度范围内。
当您通过 BLE 连接时,其想法是放弃 USB 电缆连接并获得将编程设备远离 PC 的能力。使用蓝牙技术,这意味着理论距离为 100米(300英尺)左右。更有可能的是,实际距离约为 25米(75英尺)。即便是25米,这也远超有线连接板子的活动范围。
随着距离优势的获得,新的问题也随之而来:为微控制器供电,远离电脑。如果没有提供电源的 USB 电缆,人们现在必须使用不同的电源。这可以是 USB 电源连接或连接到微控制器的电池的形式。许多项目套件还提供自己的独立电源选项。
通常会提供以下几种电池连接选项:
如果您以前从未连接过 BLE,很可能您的 micro:bit 固件不支持 BLE。(micro:bit 需要v2.0 版本)因此,您需要将固件更新到上面所示的最低版本。由于您的 micro:bit 尚不具有 BLE 连接,因此该固件更新必须通过 USB 连接进行。
一旦您更新 micro:bit 以支持 BLE,您未来的所有固件更新都可以通过 BLE 连接完成。
连接模拟器
Boardie 是 MicroBlock 的新虚拟主板功能。现在,即使没有连接到计算机的物理板,也可以使用 Boardie 探索使用 MicroBlock 进行编程。
Boardie 模拟器属性:
具有 240x240 尺寸、64K 颜色 TFT 屏幕的虚拟板。通过使用标准的 TFT 和 Turtle 库,可以在 Boardie 上-显示文本和图形
使用浏览器 LocalStorage 功能存储 5MB,可通过文件库访问
A、B 和 A+B 按钮
扬声器,可通过音调库访问
目前,Boardie 正在开发中,其功能一直在变化。当 Boardie 在版本中稳定后,我们将对其进行完整记录。
启动 Start
MicroBlocks始终是可执行的;用户可以点击单个块或脚本来运行它们,而不必点击开始按钮。
启动按钮的主要作用是通过启动所有带有 yy# when started
的脚本和所有 yy# when <condition>
的脚本,来模拟设备上电。
停止 Stop
停止 STOP 图标会停止项目的执行。所有的变量都被取消分配。所有带有 yy#when started
和 yy# when <condition>
的脚本被停止。
加载到你的主板上的项目将保持原样。事实上,你可以断开它的连接,从外部电源打开它,并在编辑器之外执行你的项目。
词汇表 Glossary
短语 Phrase | 定义 Definition |
---|---|
自定义积木 Custom Blocks | 由用户开发的一组脚本积木块,以实现特定的功能。它也可以被称为自义功能。 |
脚本 Script | 一组积木块。 |
积木库 Library | MicroBlocks 提供的特定用途的脚本,用于处理各种微设备特性和功能,以及增强 MicroBlocks 的标准功能。 |
项目 Project | 脚本、自定义积木和库的组合。 |
文档原地址: User Guide