入門指南

Ameba ARDUINO: Getting Started with AMB21/AMB22 (RTL8722)

介紹

Ameba是一個易於編程的微控制器平台,可用於開發各種物聯網應用程序。AMB21/AMB22有各種外圍接口,包括WiFi, GPIO INT, I2C, UART, SPI, PWM, ADC。通過這些接口,AMB21/AMB22可以連接LED、開關、壓力計、濕度計、PM2.5粉塵傳感器等電子元件。

Ameba所收集的數據可以通過WiFi無線上傳,並被智能設備的應用程序使用,實現物聯網的應用。

../../../_images/image188.png

AMB21/AMB22和Arduino Uno的尺寸類似,如上圖所示,並且AMB21/AMB22上的引腳與Arduino Uno兼容。AMB21/AMB22使用Micro USB來供電,這在許多智能設備中很常見。引腳圖和功能請參考下圖和表格。

../../../_images/image279.png

#

GPIO Pin

GPIO INT

ADC

PWM

UART

SPI

I2C

IR

SWD

0

PB2

A5

SERIAL2_RX (b)

1

PB1

A4

SERIAL2_TX (b)

2

PB3

A6

SWD_CLK (b)

3

PB31

IR_TX (c)

4

PB30

5

PB28

6

PB29

IR_RX (c)

7

NC

8

PB22

IR_RX (a)

9

PB23

IR_TX (a)

10

PB21

SERIAL1_RTS (b)

SPI_SS

11

PB18

SERIAL1_RX (b)

SPI_MOSI

SWD_CLK (a)

12

PB19

SERIAL1_TX (b)

SPI_MISO

SWD_DATA

13

PB20

SERIAL1_CTS (b)

SPI_SCLK

14

PA7

LOG_TX

15

PA8

LOG_RX

16

PA25

SERIAL2_RX (a)

I2C_SCL (a)

IR_TX (b)

17

PA26

SERIAL2_TX (a)

I2C_SDA (a)

IR_RX (b)

18

PB7

A3

SPI1_SS

19

PB6

A2

SPI1_SCLK

I2C_SDA (b)

20

PB5

A1

SPI1_MISO

I2C_SCL (b)

21

PB4

A0

SPI1_MOSI

22

PA28

23

PA24

SERIAL1_CTS (a)

I2C1_SDA

24

PA23

SERIAL1_RTS (a)

I2C1_SCL

25

PA22

SERIAL1_RX (a)

26

PA21

SERIAL1_TX (a)

27

PA20

28

PA19

設置開發環境

步驟1. 環境配置

AMB21/AMB22 (RTL8722CSM/RTL8722DM) 開發板目前支持 Windows OS 32 位元或 64 位元、Linux OS (Ubuntu) 和 macOS。 為了獲得最佳體驗,請使用最新版本的作業系統。

步驟2: 安裝驅動程序

首先,通過Micro USB將AmebaD連接到電腦:

../../../_images/image354.png

如果這是您第一次將AMB21/AMB22連接到您的電腦,那麼AMB21/AMB22的USB驅動程序將自動安裝。如果遇到開發板連接到電腦的驅動程序問題,請參考下列USB 驅動程序https:// ftdichip.com/drivers /。在你的電腦的設備管理器中檢查COM端口號:

../../../_images/image442.png

步驟3:設置Arduino IDE

從1.6.5版本開始, Arduino IDE支持第三方硬件。因此,我們可以使用Arduino IDE在AmebaD上開發應用程序,Arduino的示例也可以在AmebaD上運行。Arduino IDE可以在Arduino網站下載: https://www.arduino.cc/en/Main/Software

Arduino IDE可以在Arduino網站下載:https://www.arduino.cc/en/Main/Software

安裝完成後,打開Arduino IDE。為了在Arduino IDE 中正常使用AmebaD,請打開 “File”—>“Preferences”。

../../../_images/image530.png

並將一下網址粘貼到“Additional Boards Manager URLs” 欄位

https://github.com/ambiot/ambd_arduino/raw/master/Arduino_package/package_realtek.com_amebad_index.json

接下來,選著 “Tools” -> “Board” -> “Boards Manager”:

../../../_images/image618.png

“Boards Manager”大約需要10~20秒來刷新所有硬件文件(如果網絡狀況不好,可能需要更長的時間)。每次連接新硬件時,我們都需要重新打開Boards Manager。在列表中找到“Realtek Ameba Boards”,點擊“Install”,Arduino IDE會自動開始下載AmebaD所需的文件。

../../../_images/image715.png

如果您遇到 GitHub 下載問題,請參考以下 “Download/Software Development Kit” 中的鏈接。有3個部分。

  1. “AmebaD_Arduino_patch1_SDK”,請至少選擇 1 個 SDK。目前有 5 個最新發布的 SDK 選項。

  2. “AmebaD_Arduino_patch2_Tools”,請根據您的作業系統進行選擇。有 Windows、Linux 和 MacOS。

  3. “AmebaD_Arduino_Source_Code”,此部分為可選下載,用來參考最新原始碼。

https://www.amebaiot.com.cn/en/ameba-arduino-summary/

下載選擇的文件,然後解壓(patch1 和patch2 是必須的)。有“Install_中文.doc”/“Install_中文.pdf”供您參考安裝步驟。根據您的系統,請運行“Offline_SDK_installation_tool”文件夾中的安裝工具。

安裝工具運行成功後,您可以打開Arduino IDE並選擇 “tools” -> “Board“ -> “Boards Manager…”。嘗試在列表中找到“Realtek Ameba Boards”,點擊“Install”,Arduino IDE開始下載AMB21/AMB22所需的文件。

最後我們在“tools”->“Board”->“Arduino AmebaD”中選擇了AmebaD作爲當前連接的開發板:

../../../_images/image811.png

測試第一個示例

步驟1:編譯並上傳

Arduino IDE提供了很多内置的範例,可以在開發板上直接編譯,上傳和運行。這裏,我們以“Blink”爲例進行第一次嘗試。

../../../_images/image97.png

Arduino IDE打開一個帶有完整示例代碼的新窗口。

接下來,我們直接編譯示例代碼,點擊“Sketch”->“Verify/Compile”

../../../_images/image107.png

Arduino IDE在IDE窗口的底部區域打印編譯消息。編譯完成後,會得到如下圖所示的消息:

../../../_images/image1113.png

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

請確保AmebaD已連接到您的計算機,然後單擊“Sketch” -> “Upload”。

Arduino IDE將首先編譯,然後上傳。用戶需要將開發板調至上傳模式。要進入上傳模式,首先按住 UART_DOWNLOAD 按鈕,然後按下並鬆開 RESET 按鈕,最後鬆開 UART_DOWNLOAD 按鈕。 設置了 5 秒倒計時提醒進入上傳模式。

../../../_images/image1210.png ../../../_images/image1310.png

用戶可選擇檢查開發板是否進入上傳模式。打開串行監視器並查找 “#Flash Download Start” 。請注意,某些串口終端可能會顯示如下圖所示的未知字符是正常的。

備註

某些串口終端可能會顯示如下圖所示的未知字符是正常的。

../../../_images/image1410.png

同樣,在上傳過程中IDE會自動顯示消息。上傳過程要需要相當長的時間(大約30秒到1分鐘)。上傳完成後,您會看到“Done uploading”消息。