Ameba ARDUINO: Getting Started with AMB82 MINI (RTL8735B)

介绍

Ameba 是一个易于编程的平台,用于开发各种物联网应用程序。 AMB82 MINI配备丰富的外围接口,包括WiFi、BLE、GPIO INT、I2C、UART、SPI、PWM、ADC。通过这些接口,AMB82 MINI可以连接LED、开关、压力计、湿度计、PM2.5粉尘传感器等电子元器件。此外,AMB82 MINI 具有 3 个主要功能,音频编解码器、视频编解码器和 NN(内置 NPU,用于 AIoT)。

收集到的数据可以通过WiFi上传,供智能设备上的应用程序使用,实现物联网应用。

AMB82 MINI 使用最广泛的开发环境之一 Arduino。 HDK、SDK、API文档、范例教学等更多资讯,请参考以下Ameba Arduino SDK页面

AMB82 MINI 开发板

get-start-1

AMB82 MINI采用Micro USB供电,这在很多智能设备中都很常见。
AMB82 MINI 的引脚图和功能请参考下图和下表。

AMB82 MINI Pinmap

get-start-2

 GPIO pinGPIO INTADCPWMUARTSPII2CSWDLED
0PF5   SPI1_MISO   
1PF6  SPI1_SCLK   
2PF7  SPI1_MOSI   
3PF8  SPI1_SS   
4PF11      
5PF12      
6PF13      
7PF14      
8PF15      
9PF2A2   I2C1_SDA  
10PF1A1   I2C1_SCL  
11PF0A0      
12PE4   SPI_SSI2C_SDA  
13PE3   SPI_MOSII2C_SCL  
14PE2  SERIAL3_RXSPI_MISO   
15PE1  SERIAL3_TXSPI_SCLK   
16PD18       
17PD17       
18PD16  SERIAL2_RX    
19PD15  SERIAL2_TX    
20PD14       
21PA2A6 SERIAL1_TX    
22PA3A7 SERIAL1_RX    
23PF9     LED_BUILTIN / LEB_B (blue)
24PE6      LED_G (green)
25PF4  LOG_TX    
26PF3*A3 LOG_RX    
27PA1A5   I2C2_SDASWD_CLK 
28PA0A4   I2C2_SCLSWD_DATA 
29PF10       

设置开发环境

步骤一、 环境配置

AMB82 MINI 开发板目前支持Windows作业系统64位元(Windows 10及以上),Linux作业系统(Ubuntu22及以上)与 MacOS (Intel 和 Apple Silicon)。为了获得最佳体验,请使用最新版本的作业系统。

任何 Linux 作业系统 (Ubuntu) 相关问题,请参考 https://forum.amebaiot.com/t/ubuntu-linux-environment/2259

任何 macOS 作业系统相关问题,请参考 https://forum.amebaiot.com/t/macos-environment/2260

步骤二、 安装驱动程式

首先,将AMB82 MINI通过Micro USB连接到电脑:

get-start-3

如果这是第一次将开发板连接到电脑,则会自动安装此板的 USB 驱动程序。
如果您有连接开发板到电脑的驱动程序问题,请到http://www.wch-ic.com/downloads/CH341SER_ZIP.html下载相关驱动程式。

在电脑的设备管理器中查看COM端口:

get-start-4

步骤三、 设定 Arduino IDE

从 1.6.5 版本开始,Arduino IDE 支持第三方硬件。因此,我们可以使用Arduino IDE开发应用程序,并且Arduino有基础范例可供参考。
Arduino IDE 可以在 Arduino 网站下载: https://www.arduino.cc/en/Main/Software
安装完成后,打开Arduino IDE。请打开 “File” -> “Preferences” 来正确设置。

get-start-4

并将以下 URL 粘贴到“Additional Boards Manager URLs”字串中:https://github.com/ambiot/ambpro2_arduino/raw/main/Arduino_package/package_realtek_amebapro2_index.json

接下来,打开 “Tools” -> “Board” -> “Boards Manager”:

get-start-3

“Boards Manager”大约需要10~20秒钟来刷新所有硬件文件(如果网络状况不好,可能需要更长的时间)。每次与新硬体重新连接时,需要重新开启Board Manager。在列表中找到“Realtek Ameba Boards”,点击“Install”,Arduino IDE会自动开始下载AmebaD包含AMB82 MINI所需的文件。

get-start-4

安装运行成功后,您可以打开Arduino IDE并选择 “Tools” -> “Board” -> “Boards Manager…”。尝试在列表中找到“Realtek Ameba Boards”,点击“Install”,然后Arduino IDE开始下载所需的文件。

最后,选择“Tools” -> “Board” -> “AmebaPro2 ARM (32-bits) Boars” -> “AMB82-MINI”作为当前连接的开发板。

get-start-4

尝试第一个例子

步骤一、 选择Ameba模式

对于不同的编译和上传设置,有多种不同的模式供用户选择。请参考以下图片和表格。

get-start-14

Mode NameUsageRemarks
* Erase All Flash Memory (16MB)• Erase only. Erase entire flash.
• Erase then Upload. Erase entire flash then upload the current application.
• Disable. Disable this option.
 
* Auto Flash Mode• Enable. Avoid manual process when uploading.
• Disable. Disable this option.
 
* Standard Lib• Arduino_STD_PRINTF. Choose the standard library function for compile and upload.
• Disable. No standard library function.
 
* Upload Speed• Different upload baud rate to select. The default is 2000000. 

步骤二、 编译

Arduino IDE提供了很多内建的例子,可以直接在板子上编译、上传、执行。在这里,我们以“Blink”示例作为第一次尝试。
开启 “File” -> “Examples” -> “01.Basics” -> “Blink”:

get-start-14

Arduino IDE 开启一个包含完整范例代码的新视窗。

接下来,我们直接编译范例代码; 单击“Sketch” -> “Verify/Compile”。

Arduino IDE 在 IDE 窗口的底部区域打印编译信息。编译完成后,您将收到如下消息。

get-start-14

之后,我们将编译后的代码上传到开发板。

步骤三、 上传

请确保开发板已连接到电脑,然后点击“Sketch” -> “Upload”。

Arduino IDE 会先编译再上传。用户需要进入此板上传模式。要进入上传模式,首先按住 UART_DOWNLOAD 按钮,然后按下并释放 RESET 按钮,最后释放 UART_DOWNLOAD 按钮。

另外,如果开发板有硬件更新并启用了“Auto Flash Mode”,请忽略以上说明。

get-start-14

用户可以选择检查板子是否进入上传模式。打开串行监视器/终端并检查以下资讯。

get-start-14

上传完成后,将印出“上传完成”讯息。

步骤四、 执行Blink范例

在每个范例中,Arduino 不仅提供了范例代码,还提供了详细的文件,包括接线图、范例代码解释、技术细节等。 Blink范例的详细信息请参考:
https://www.arduino.cc/en/Tutorial/Blink
简而言之,此范例使on-board LED 闪烁。

get-start-14

影片教学与示范

YouTube 频道:
https://youtu.be/_rLiih5RkXY
https://youtube.com/playlist?list=PLEQfNjOZQRyPnmXCuRqE1f5au2HT4E9CP
https://youtu.be/-jQDpDFX2ao
https://youtube.com/playlist?list=PLEQfNjOZQRyOxXFV7X_2fIcnd_J6VBmyM
BiliBili 频道:
https://space.bilibili.com/457777430

参考连结

Ameba Arduino SDK: https://www.amebaiot.com/ameba-arduino-summary/
FAQ: https://forum.amebaiot.com/t/welcome-to-ameba-faq/1748
论坛: https://forum.amebaiot.com/
Facebook 中文社群: https://www.facebook.com/groups/AmebaIoT
Facebook 英文社群: https://www.facebook.com/groups/amebaioten

请先确认已安装QQ通讯软体