安信可Ai-Thinker BW16模組是基于 RTL8720DN開發(fā)的雙頻Wi-Fi+藍(lán)牙SoC模組,具備超強(qiáng)性能。本文著重介紹安信可Ai-Thinker BW16及開發(fā)板如何搭建Arduino開發(fā)環(huán)境。
一、 BW16****模組產(chǎn)品特性
首先,我們先來了解一下BW16模組及開發(fā)板特性,BW16同時(shí)支持2.4GHZ/5.8GHZ雙頻WiFi+藍(lán)牙低功耗藍(lán)牙5.0雙模;因其雙頻設(shè)置,BW16具備更強(qiáng)的抗干擾能力、更穩(wěn)定的WiFi無線信號(hào)和更快的傳輸速度,可以節(jié)省更多的電量。
此外,安信可Ai-Thinker BW16集成了ARM V8(兼容 Cortex-M4F)高性能 MCU、ARM V8M(兼容 Cortex-M0)低功耗 MCU、WLAN(802.11 a / b / g / n)、MAC,藍(lán)牙基帶和 RF 基帶,BW16 同時(shí)集成了內(nèi)部存儲(chǔ)器,支持簡單的應(yīng)用程序開發(fā),可實(shí)現(xiàn)完整的 Wi-Fi 和 BT 5.0 協(xié)議功能,能被廣泛地應(yīng)用在物聯(lián)網(wǎng)領(lǐng)域。具備豐富的外圍接口,可以滿足開發(fā)者快速完成不同產(chǎn)品的硬件開發(fā);
值得一提的是,安信可Ai-Thinker BW16模組支持SSID混頻路由配網(wǎng),2.4GHz和5GHz兩個(gè)頻段的SSID合并成一個(gè),用戶只需要連接一個(gè)SSID就可以完成配網(wǎng),不僅簡化了配網(wǎng)流程,也提升了配網(wǎng)成功率;
且安信可Ai-Thinker BW16模組支持AWS IoT Core平臺(tái),使用戶能夠輕松地連接和控制設(shè)備;BW16模組支持Matter協(xié)議,將云端和物聯(lián)網(wǎng)設(shè)備緊密聯(lián)系起來,大大簡化了設(shè)備的管理和運(yùn)維工作,使用戶能夠更好地專注于業(yè)務(wù)開發(fā)和創(chuàng)新。
基本參數(shù)
l 支持 802.11a/b/g/n,2.4GHz or 5GHz;n
l 支持 HT20/HT40 模式; n
l 支持低功耗信標(biāo)監(jiān)聽模式,低功耗接收模式,低功耗掛起模式;n
l 內(nèi)置 AES / DES / SHA 硬件引擎; n
l 支持 TrustZone-M,支持安全啟動(dòng);n
l 支持 SWD 調(diào)試端口訪問保護(hù)和禁止模式;
l 支持 BLE 5.0;
l 藍(lán)牙支持高功率模式(7dBm,與 Wi-Fi 共享同一PA);
l Wi-Fi 和藍(lán)牙共用同一天線; n
l 支持 STA/AP/STA+AP 工作模式;n
l 支持安卓、IOS 的 Simple Config(APP)Wi-Fi 一鍵配網(wǎng);n
l 支持藍(lán)牙輔助配網(wǎng); n
l 支持串口本地升級(jí)和遠(yuǎn)程固件升級(jí)(FOTA);n
l 支持二次開發(fā),支持 Linux 和 Window 環(huán)境下編程;n
l 支持Arduino開發(fā);
二、如何搭建Arduino開發(fā)環(huán)境?
Arduino在國外也是非常火爆的開發(fā)方式,它包含硬件(各種型號(hào)開發(fā)板)和軟件(Arduino IDE),你只要在ArduinoIDE中編寫程序代碼,將程序上傳到Arduino電路板后,就能實(shí)現(xiàn)軟體對(duì)硬件的控制。
Arduino IDE可以在Windows、Macintosh OS X、Linux三大主流操作系統(tǒng)上運(yùn)行,而其他的大多數(shù)控制器只能在Windows上開發(fā)。
具體步驟如下:
1、 BW16****模組及開發(fā)板簡介
作為2.4GHZ/5.8GHZ雙頻WiFi+藍(lán)牙低功耗藍(lán)牙5.0雙模模組,BW16 開發(fā)板的尺寸為 50.4*25.4(±0.2) mm。它使用Micro USB供電,這在很多智能設(shè)備中都很常見。
更多資料見:
https://docs.ai-thinker.com/rtl87xx
BW16 的引腳圖和功能請參考下圖和下表。
BW16 Pinmap
清除flash或上傳固件時(shí),開發(fā)板需要上傳模式。
2、設(shè)置開發(fā)環(huán)境
步驟一、環(huán)境配置
BW16 (RTL8720DN) 開發(fā)板目前支持 Windows OS 32 位元或 64 位元、Linux OS (Ubuntu) 和 macOS。為了獲得最佳體驗(yàn),請使用最新版本的作業(yè)系統(tǒng)。
步驟二、設(shè)定 Arduino IDE
從 1.6.5 版本開始,Arduino IDE 支持第三方硬件。 Arduino IDE用于在BW16上開發(fā)應(yīng)用程序,以及Arduino基本范例(refer to the basic example link)。
Arduino IDE 可以在 Arduino 網(wǎng)站下載: https://www.arduino.cc/en/Main/Software
安裝完成后,打開Arduino IDE。請打開 “File” -> “Preferences”;
并將以下 URL 復(fù)制到“Additional Boards Manager URLs”欄位: https://github.com/ambiot/ambd_arduino/raw/master/Arduino_package/package_realtek.com_amebad_index.json
從 v3.0.8版本開始,Ameba Arduino將支持BW16開發(fā)板。
接下來,打開 “Tools” -> “Board” -> “Boards Manager”:
“Boards Manager”大約需要幾秒鐘來刷新所有硬件文件(如果網(wǎng)絡(luò)狀況不好,可能需要更長的時(shí)間)。在列表中找到“Realtek Ameba Boards (32-bits ARM Cortex-M33 @200MHz)”,點(diǎn)擊“Install”,Arduino IDE會(huì)自動(dòng)開始下載AmebaD包含BW16所需的文件。
如果您遇到 GitHub 下載問題,請參考以下連結(jié) 中的“下載/軟體開發(fā)套件”。有3個(gè)部分。
- “AmebaD_Arduino_patch1_SDK”,請至少選擇 1 個(gè) SDK。目前有 5 個(gè)最新發(fā)布的 SDK 選項(xiàng)。
- “AmebaD_Arduino_patch2_Tools”,請根據(jù)您的作業(yè)系統(tǒng)進(jìn)行選擇。有 Windows、Linux 和 MacOS。
- “AmebaD_Arduino_Source_Code”,此部分為可選下載,用來參考最新原始碼。
下載選擇的文件,然后解壓(patch1 和patch2 是必須的)。有“Install.doc”/“Install.pdf”供您參考安裝步驟。根據(jù)您的系統(tǒng),請運(yùn)行“Offline_SDK_installation_tool”文件夾中的安裝工具。
安裝運(yùn)行成功后,您可以打開Arduino IDE并選擇 “Tools” -> “Board” -> “Ameba ARM (32-bits) Boards” ->” BW16(RTL8720DN)” 來選擇AmebaD作為當(dāng)前連接的開發(fā)板。
步驟三、安裝串行端口
首先,通過 Micro USB 將開發(fā)板連接到電腦:
BW16
對(duì)應(yīng)連接后,會(huì)自動(dòng)安裝USB驅(qū)動(dòng)。如果連接板有驅(qū)動(dòng)問題,請到http://www.wch- ic.com/downloads/CH341SER_ZIP.html 參考 USB 驅(qū)動(dòng)程序。在 Windows 作業(yè)系統(tǒng)的裝置管理員中檢查 COM 端口號(hào):
到“Tools”->“Port”并選擇正確的 COM 端口。
進(jìn)入“Tools”->“Serial Monitor”,將baud rate設(shè)置為“115200”,然后按RST按鈕檢查串口連接。
步驟四、清除 flash
根據(jù)生產(chǎn)批次的不同,部分開發(fā)板可能內(nèi)置了預(yù)設(shè)的B&T固件,固件信息如下圖所示:
固件位于 OTA 部分。所有新編譯的固件將被 OTA 固件自動(dòng)替換。因此,需要先清除 OTA 固件才能使用已編譯的固件。
方法一:Arduino SDK V3.1.3 之后的“Erase Flash Enable”。
選擇“Tools”->“Erase Flash”->“Enable”
然后進(jìn)入上傳模式。
? 自動(dòng)。選擇“Tools”->“Auto Upload Mode”->“Enable”。
接下來,選擇“Sketch”->“Upload”。 “Erase flash done” 會(huì)出現(xiàn)。
按RST按鈕來檢查串行監(jiān)視器和重制開發(fā)板。如果只有“#”表示清除flash成功。記得選擇“Tools”->“Erase Flash”->“Disable”。
嘗試操作范例
Step 1. 編譯與上傳
Arduino IDE提供了很多內(nèi)建的范例,可以在開發(fā)板上直接編譯、上傳和運(yùn)行。這里,我們以“Blink”為例進(jìn)行第一次嘗試。
打開 “File” -> “Examples” -> “01.Basics” -> “Blink”:
板載 RGB LED,預(yù)設(shè)“LED_BUILTIN”為綠色。將“LED_BUILTIN”更改為“LED_R”、“LED_G”或“LED_B”以獲得紅色、綠色或藍(lán)色。
接下來,直接編譯范例代碼。 “Sketch”->“Verify/Compile”。然后如果沒有編譯錯(cuò)誤,接著“Sketch”->“Upload”。
? 檢查并選擇 “Tools” -> “Erase Flash” -> “Disable”。
? 進(jìn)入上傳模式。手動(dòng)或自動(dòng)。選擇 “Tools” -> “Auto Upload Mode” -> “Enable”/ ”Disable”。
? “Verify/Compile” 和 “Upload”. “Upload” 包括 “Verify/Compile”, “Verify/Compile” 可以跳過。
上傳成功會(huì)顯示“All images are sent successfully!”
Step 2. 執(zhí)行 Blink 范例
板子將自動(dòng)重置,如果板子不支持自動(dòng)上傳模式,請按 RST 按鈕。板載 RGB LED 將閃爍。
在每個(gè)范例中,Arduino 不僅提供了范例代碼,還提供了詳細(xì)的文檔,包括接線圖、范例代碼說明、技術(shù)細(xì)節(jié)等。這些范例可以直接在 BW16 上使用。請參閱以下連結(jié)中的 Blink 詳細(xì)信息:
https://www.arduino.cc/en/Tutorial/BuiltInExamples/Blink
以上就是本期分享的內(nèi)容,希望能幫助大家快速進(jìn)行BW16模組方案的開發(fā),如有其他疑問,也歡迎給我們留言,屆時(shí)為您解答哦!
審核編輯 黃宇
-
藍(lán)牙
+關(guān)注
關(guān)注
114文章
5767瀏覽量
169811 -
開發(fā)環(huán)境
+關(guān)注
關(guān)注
1文章
222瀏覽量
16586 -
Arduino
+關(guān)注
關(guān)注
187文章
6464瀏覽量
186650
發(fā)布評(píng)論請先 登錄
相關(guān)推薦
評(píng)論