:::tips 提示:
此教程为旧版教程,开发时选择的是扩展的通用模板。目前我们已针对Arduino扩展开发,提供了更快速便捷的预设模版,能够显著地提高开发效率。
有关 Arduino 预设模板的使用,参见“【Arduino 扩展】为 Arduino 编写 LED 扩展(Arduino 预设模板)”。 :::

在本教程中,我们将为 Arduino 添加一个 LED 积木来控制 Arduino 的 LED。外接LED来自 Seeed Studio 推出的 Grove初学者套件,你也可以使用其他电子套件的LED模块。


步骤一:登陆并创建扩展

1、访问 ext.makeblock.com,登陆 mBlock 帐号

:::info 注:如果没有帐号,请先注册。 :::

【Arduino 扩展】为 Arduino 编写 LED 扩展(通用模板) - 图1

2、在“我的插件”下,选择“我的扩展”,点击“新建扩展”。

【Arduino 扩展】为 Arduino 编写 LED 扩展(通用模板) - 图2

在弹出的模板选择对话框中选择“通用模板”,并点击“确定”。
image.png

3、填写标识ID、版本号、名称,选择支持的平台,设置支持的设备/角色,并点击“确定”。
image.png

将“支持的设备/角色”设置为“arduino_uno”,则当选中设备 “Arduino Uno”,可点击“+ 添加扩展”从扩展中心添加你所创建的扩展。
image.png


步骤二:添加新积木

1、在扩展列表中,点击扩展的名称“Seeed Grove Kit”进入编辑页面。
image.png

2、在添加新积木前,需要先设置转码语言。
点击“转码配置”,输入支持的转码语言“ArduinoC”,然后点击“保存”。
image.png

3、点击“积木配置”页签,点击“新增分类”。
image.png
4、将新的积木分类命名为“Seeed Grove”

:::info 注:分类名称和积木块颜色都可以自定义。 ::: image.png
5、点击“积木列表”底部的“+”添加新积木。
image.png

6、在此扩展中,新建一个积木:接口(D2)LED(点亮)。

7、设置内容,接口和LED状态都通过下拉框进行选择,通过输入“空格+@”配置参数。
image.png
8、配置第一个下拉框:接口。

分别设置“参数名”,“参数默认值”和“下拉框参数”。
Seeed Grove 套件的 LED 可以连接到 Arduino UNO 开发板上的 D1-D8 口。

:::info 注:点击“+”可批量设置参数。 :::

image.png
image.png
image.png

9、配置第二个下拉框:LED状态。
image.png
10、选择支持的平台并点击“保存”。
image.png


步骤三:转码配置

点击“上传转码”,进行如下几项代码配置:

  • declare:此处代码出现在 setup() 前,用于声明变量
  • setup:此处代码会嵌入 Arduino ONCE 中的 setup() 函数
  • code:此处代码会出现在该积木块使用的地方
  • loop:此处代码会嵌入 Arduino ONCE 中的 loop() 函数

image.png
通过查阅 Grove 套件的文档,其中的 LED 提供了以下的 Arduino 示例代码:

  1. void setup() {
  2. // initialize digital pin2 as an output.
  3. pinMode(2, OUTPUT);
  4. }
  5. // the loop function runs over and over again forever
  6. void loop() {
  7. digitalWrite(2, HIGH); // turn the LED on (HIGH is the voltage level)
  8. delay(1000); // wait for a second
  9. digitalWrite(2, LOW); // turn the LED off by making the voltage LOW
  10. delay(1000); // wait for a second
  11. }

根据上述代码,我们需要进行如下操作:

  • setup 需要用到 pinMode
  • code 需要用到 digitalWrite
  • /*{port}*/ 指代接口下拉框的值

完成后,点击“保存”。
image.png


现在,可以点击界面右上角的“预览”,测试刚刚添加的积木:接口(D1)LED(点亮)
image.png