以下內容由安信可社區用戶
AndyL提供
目錄
低功耗精準定位開發板BU03-Kit ——【硬件篇】
一、開發板硬件介紹
1、關于BU03-Kit
2、BU03主要特性 / 性能
3、按鍵及指示燈說明 / 引腳示意圖 / 原理圖
二、關于BU03模組功能介紹
1、關于超寬帶(Ultra Wide Band,UWB)
2、UWB(超寬帶)定位方法介紹
3、不同定位技術的差異
三、功能效果測試
1、快速上手使用測試
2、UWB 功能測試
3、功耗測試
四、測距精度矯正 / 串口數據解析
五、個人使用體驗
低功耗精準定位開發板BU03-Kit ——【軟件篇】
一、開發方式
1、AT指令
2、二次開發SDK
二、程序燒錄
1、使用SWD接口下載 / 調試
2、使用串口USB下載
低功耗精準定位開發板BU03-Kit ——【硬件篇】
一、開發板硬件介紹
1、關于BU03-Kit
BU03-Kit 是一款 UWB 開發板。該開發板是基于 BU03 (DW3000) 收發模組, 搭載一顆 ST 主控 (STM32F103C8T6) 設計而成的一款測試評估板。其上的 BU03 模組集成了板載天線, RF 電路, 電源管理。
BU03-Kit 可以用于 雙向測距 或 TDOA 定位系統中, 定位精度可達到 10 厘米, 并支持高達 6.8 Mbps 的數據速率。可廣泛應用于物聯網(IoT)、 移動設備、 可穿戴電子設備、 智能家居等領域。
2、BU03主要特性 / 性能
●采用 SMD-40 插針封裝
●符合 IEEE 802.15.4-2015 UWB 標準
●符合 IEEE802.15.4z(BPRF mode)
●支持信道 5、 信道 9
●集成簡單, 無需 RF 設計
●集成 MAC 支持功能
●使用 RTLS 的基礎架構, 擴展了通信范圍
●數據速率 850 Kbps, 6.8 Mbps
●支持雙向測距和 TDOA 和 PDOA 定位方案
●提供精確定位和數據傳輸
●定位精度 10 厘米
●支持高標簽密度
●集成 HW AES 256
●支持 SPI 接口
●模組支持 9 個可配 GPIO
●可編程調節發射功率大小
●BU03 模組睡眠模式下功耗<1uA
●適用于紐扣電池方案
基于 3.3V 的電源, 25° C 的環境溫度,功耗表:
管腳功能定義表:
注:除了 SPICSn 外, 所有 GPIO 引腳都有一個軟件可控的內部下拉電阻器, SPICSn 具有上拉功能, 以確保輸入引腳未被驅動時的安全操作。內部電阻器的值可隨 VDD 電源電壓的變化而變化, 范圍從 10 k? (VDD 為 1.8V) 到 30 k? 。
3、按鍵及指示燈說明 / 引腳示意圖 / 原理圖
按鍵及指示燈說明圖:
引腳定義示意圖:
相關部分原理圖:
二、關于BU03模組功能介紹
BU03 是基于 Decawave 的 DW3000 系列芯片設計的超寬帶(UWB)模組。
1、關于超寬帶(Ultra Wide Band,UWB)
UWB 全名:Ultra Wideband。是一種無線通信技術,即超寬帶技術。
在傳統通信體制中,數據傳輸一般都需要使用載波來承載,UWB 則不需要,取而代之的是通過發送和接收具有納秒甚至亞納秒級的極窄脈沖來傳輸數據,一個信息比特可映射為數百個這樣的脈沖。
根據傅里葉時頻變換規則可知,單周期 UWB 脈沖時域寬度越短,對應的頻域帶寬就越寬,這種納秒級時域脈沖信號,往往能產生具有 GHz 量級的頻域帶寬,因此這種技術也稱 UWB 超寬帶技術(帶寬非常大)。
IEEE802.15.4z是UWB無線通信的代表性標準,其中有使用Impulse Radio的方式,Impulse Radio使用持續時間短的脈沖信號。
主要特征如下:
高精度測距和定位
安全性高
對其他通信干擾弱
低功耗
2、UWB(超寬帶)定位方法介紹
參考資料:【詳細介紹點此查看】https://pdf.hanspub.org/CSA20200800000_47906344.pdf
基于測距的定位技術
(1) TOA(Time of Arrival,到達時間法)
原理:通過測量信號從標簽(Tag)到基站(Anchor)的傳播時間計算距離,需至少 3個基站 進行三角定位。
特點:厘米級精度(±5cm)、要求設備間嚴格時鐘同步
(2) TWR(Two-Way Ranging,雙向測距)
SS-TWR(單邊):依賴一端時鐘,響應時間固定。
(SS-TWR是一種僅由一方的設備測量往返時間的方法。在這種手法中,設備A向設備B發送信號,設備B收到該信號后,向設備A發送回復信號。設備A測量從發送到接收所花費的時間并計算往返時間。此方法僅使用設備A就能進行測量,但需要兩個設備的時鐘同步)
DS-TWR(雙邊):兩次測距抵消時鐘偏差,精度更高(±2cm)。
(DS-TWR是一種用兩臺設備測量往返時間并共享結果的方法。在這種手法中,設備A向設備B發送信號,設備B收到該信號后,向設備A發送回復信號。設備 A和設備B分別測量各自從發送到接收所需要的時間,并使用這些結果計算往返時間。
這種方法不需要時鐘同步,因此測量更容易,精度更高)
特點:無需嚴格同步,但功耗較高。
(3) TDOA(Time Difference of Arrival,到達時間差法)
原理:利用信號到達不同基站的時間差進行雙曲線定位。
特點:僅需基站間同步,適合大規模部署 同步誤差影響精度
基于角度的定位技術
(1) AoA(Angle of Arrival,到達角法)
AoA是一種計算從設備A看到的設備B放置方向的角度的方法。如圖所示,UWB無線中通過AoA進行的角度測量的原理。
設備B發射的電波被設備A的多根天線接收,并且根據接收的電波的相位差計算角度。使用這種方法,能通過用2根天線進行的角度測量(2D AoA)進行平面定位,以及通過用3根天線進行的角度測量(3D AoA)進行三維定位。
原理:通過天線陣列測量信號入射角度。
PDOA(Phase Difference of Arrival):基于相位差測角,精度更高(±1°~5°)。
ADOA(Amplitude Difference of Arrival):基于信號強度差測角,成本低但精度較差。
3、不同定位技術的差異
UWB 與其他定位技術的核心區別:
三、功能效果測試
1、快速上手使用測試
UART1
UART1是BU03-Kit上標有TTL絲印字樣的type-C接口,主要用來收發AT指令,進行模式配置的UART口,此UART口使用的是CH340的串口驅動。
(1)接入type-C數據線接到電腦上,打開串口調試助手,并且按下復位按鍵,調試助手打印如圖信息所示,即說明復位按鍵正常;
(2)發送指令AT,返回OK,則說明收發測試成功;
USB
USB口是BU03-Kit上標有USB絲印字樣的type-C接口,主要用來打印測距或者其他信息,此USB口使用的是ST的單片機自帶的USB驅動,一般電腦不會自動識別安裝,所以需要手動安裝驅動。
UART2
UART2的端口測試需要借助USB轉TTL工具
(USB 口 / UART2 輸出相關測距信息,將在后面章節介紹)
流水燈測試
2
UWB 功能測試
測距 / 零位、一維定位
使用1個基站多個標簽可實現基站于標簽的實時測距功能。
由于只有1個基站參與標簽的測距,所以只有標簽的距離沒有方向(零位定位,是否在這個區域周邊)。在這個系統基礎上再增加一個基站就可以通過2個基站的相對位置和標簽與基站之間的距離,實現1條線上的定位(一維定位)
二維定位系統
使用3個基站多個標簽可實現最小2維定位系統。
此系統缺點存在是,當出現某個基站有遮擋、干擾時,因為沒有多的基站數據用于冗余計算會影響標簽定位效果。使用時要注意基站標簽之間要互相可視。3基站系統,只需其中任意一個模塊(基站/標簽都可以輸出定位數據)通過USB/UART/WIFI/以太網鏈接電腦上傳定位數據即可,其余基站供電(其余基站會通過UWB無線通訊,將定位數據匯總到自身)
使用4個基站多個標簽的2維定位系統。
此系統優點是,當出現某個基站有遮擋、干擾時,因為有多的基站數據用于冗余計算,所以定位精度會有一定保障不受干擾。使用時要注意基站標簽之間要互相可視。4基站系統,只需其中任意一個模塊(基站/標簽都可以輸出定位數據)通過USB/UART/WIFI/以太網鏈接電腦上傳定位數據即可,其余基站供電(其余基站會通過UWB無線通訊,將定位數據匯總到自身)
三維定位系統
使用6個以上基站多個標簽可實現更大面積的2維定位或3維定位。
此系統優點是,定位區域更大,當出現多個基站有遮擋、干擾時,因為有多的基站數據用于冗余計算,所以定位精度會有一定保障不受干擾。使用時要注意基站標簽之間要互相可視。6基站系統,只需其中任意一個模塊(基站/標簽都可以輸出定位數據)通過USB/UART/WIFI/以太網鏈接電腦上傳定位數據即可,其余基站供電(其余基站會通過UWB無線通訊,將定位數據匯總到自身)
部分AT指令
【AT指令表詳見】
上位機下載地址https://docs.ai-thinker.com/_media/ai_thinker_twr.rar
測距配置是標簽和基站之間的距離測算,一塊BU03-Kit需配置為標簽,另一塊配置為基站
(基站的OLED屏幕 / USB口 將實時顯示標簽和基站的距離)
(1)測試時要保持天線的凈空區域(即標簽和基站之間不能有阻擋,否則將會造成測試誤差過大或者距離嚴重折損)
(2)基站或者標簽測試時不能放置桌面,否則會出現誤差較大
(3)上述兩點點確認后仍需要提高精度時可以使用矯正指令來提高精度
測距
1、連接TTL口,通過AT指令來配置,一個設置為基站(A設備),另一個設置為標簽(B設備)
在A設備上使用 AT+SETUWBMODE=0 AT+SETCFG=0,1,1,1 以及 AT+SAVE
在B設備上使用 AT+SETUWBMODE=0 AT+SETCFG=0,0,1,1 以及 AT+SAVE
2、A設備(基站) OLED屏顯示當前與 B設備的距離信息
升高開發板后測得的數據
未矯正前,實測多次 發現誤差大約在20cm左右波動
二維定位
采用二維平面的的坐標測試,使用三基站一標簽搭建的室內定位需求。
效果:電腦上位機上顯示20米區域范圍內定位導航,軌跡顯示。
(1)連接TTL端口使用AT指令逐一配置,使用串口調試助手配置時我們需要配置3個基站1個標簽
指令配置完畢后三個基站的OLED屏幕上都將顯示與0號標簽的實時測距信息(多基站同理)
(2)上述角色配置成功以后,并且打開TWR上位機進入如圖示界面,此過程需要連接上0號基站的USB口,并且其他基站和標簽保持持續上電。
注意
上位機軟件無法識別USB口,此時需要先關閉軟件,再插拔USB口,再次打開上位機操作;
測試所找空地要求空曠無遮擋,并且基站需要離地1.5M以上豎直放置,用三腳架固定等;
PDOA算法測距、測角度
PDOA 上位機下載
注意
方式一不能掉電保存(需重新配置),方式二可以保存
方式一【PDOA上位機】
1、連接TTL口,通過AT指令來配置,一個設置為基站(A設備),另一個設置為標簽(B設備)
在A設備上使用 AT+SETUWBMODE=1 AT+SETCFG=0,1,1,1 以及 AT+SAVE
在B設備上使用 AT+SETUWBMODE=1 AT+SETCFG=0,0,1,1 以及 AT+SAVE
若TTL口出現報錯打印,無需理會
2、連接A設備的USB口,并打開PDOA上位機
(1)點擊加入標簽以后,上位機將識別到標簽出現在區域內,隨著移動標簽,上位機上實時顯示標簽的角度A和距離D。
(基站的 OLED 屏幕也會顯示距離D和角度A)
方式二【AT指令綁定】
1、連接TTL口,通過AT指令來配置,一個設置為基站(A設備),另一個設置為標簽(B設備)
在A設備上使用 AT+SETUWBMODE=1 AT+SETCFG=0,1,1,1 以及 AT+SAVE
在B設備上使用 AT+SETUWBMODE=1 AT+SETCFG=0,0,1,1 以及 AT+SAVE
此時繼續觀察基站TTL口,將會打印出一串標簽 ID,需要填寫進AT指令進行綁定。
上述指令設置有后我們從基站的TTL口得到了標簽 ID,我們將此ID綁定到基站上,使用如下指令
AT+ADDTAG=267F1313,8834,1,64,0
AT+SAVE
267F1313 為標簽 ID,其他參數不變默認填寫
此時,基站OLED屏幕顯示與標簽的距離D和角度A
角度范圍(-60° ~ 60°)
移動設備定位功能(AirTag)
主要通過包含UWB芯片(BU03模組)、藍牙芯片主控(NRF52832)、PDOA算法等,以實現與手機(UWB芯片)交互
【手冊 / 開發SDK】https://www.qorvo.com/products/p/DWM3000#documents
目前,支持UWB芯片的相關設備:
功耗測試
在功耗測試設備有限的情況下,固件為出廠固件,TWR算法下:一個為基站,一個為標簽
所測得的大致功耗如下:
標簽:318.2mW
基站:487.3mW
四、測距精度矯正 / 串口數據解析
1
串口數據解析
TWR算法
(1) 連接至基站的USB口,在串口助手上,將收到以下的Hex數據格式
例幀說明:
(2) 連接至基站的UART2,在串口助手上,將收到以下的數據格式
幀協議格式
數據域協議格式
PDOA算法
USB 口和 UART2 輸出協議相同, 且可通過 AT 指令切換 Json 和 hex 兩種格式
JSON 協議文本
JS006C{"TWR": //006c 為長度
{ "a16":"4096", //Tag 地址
"R"':115, //Tag 序列號
"T":0 //Tag 時間
"D":76, //Tag 與 Node 距離值
"P":-123, //Tag 與 Node 相位差
"Xcm":-57, //Tag 的 X 軸坐標
"Ycm":50, //Tag 的 Y 軸坐標
"O":408, //時鐘偏移
"V":49152, //Tag 的信息
"X":0, //Tag 的加速度 X 軸信息 "Y":0, //Tag 的加速度 Y 軸信息 "Z":0 //Tag 的加速度 Z 軸信息 } }
例幀解析
JS006D{"TWR": {"a16":"8834","R":128,"T":1490981,"D":37,"P":56,"Xcm":14,"Ycm":32,"O":0,"V":49152,"X":0,"Y":0,"Z":0}}
關鍵的值是 Xcm 和 Ycm,用它們來計算角度。
角度的計算公式:
angle = arctan(14/32)×180/ = arctan(0.4375)×57.2958 ≈ 23.62°
HEX 協議文本
例幀解析
距離:38(Hex) -> 56cm
角度:EFFFFFFF(Hex) -> -17°
2
測距精度矯正
若測距過程中發現偏差過大,那么需要執行相關校準
(1)下載自動計算標定系數的表格Excel【下載地址】
(2)以TWR算法為例,打開Excel,根據OLED屏幕 / USB串口 / 上位機輸出的數據,計算系數
在測試環境中已經搭建好設備,利用測量工具(如卷尺或者皮尺)依次按照間隔1米刻度,將標簽分別放在刻度上,根據OLED屏幕 / USB串口輸出數據 / 上位機 讀數,分別填寫在表格中,表格中會得出一個系數值,如下圖;
(3)使用矯正AT指令
上述的系數我們將使用這條AT指令來矯正,指令中我們將參數進行替換,并且發送保存指令即可,如下圖所示(其他參數保持不變,僅改變圖示框選參數值)
y=0.9924x-317.68
指令:
AT+SETDEV=10,16336,1,0.018,0.642,0.9924,-317.68,0,0
AT+SAVE
五、使用體驗
使用一基站 / 一標簽,在默認的AT固件下,很容易上手開發使用,未矯正前,實際距離與測試距離會有誤差,但在經過精度矯正后,可以實現不錯的距離/角度測量。
當然通過屏幕OLED讀數,會因為屏幕尺寸以及數據變化過快,讀數起來會相對不易,但可以使用上位機來獲取讀數,上位機的參數配置、使用起來也很容易。
優化:
1、BU03-Kit的MCU主控,可以換成低功耗的STM32C / L系列,或者具備藍牙功能(NRF52832)、WiFi / BLE功能的ESP32C / S系列等,可以讓后續的二次開發使用,有更多的拓展性。
2、開發板的板載的LED指示燈并非全部都是必須的,過多會增加不必要的消耗, 可以適當縮小開發板尺寸,以及引出鋰電池接口,可以用作鋰電池供電開發板使用(低功耗)、方便移動攜帶使用,以及后續的二次DIY開發制作等。
低功耗精準定位開發板BU03-Kit ——【軟件篇】
一、開發方式
1、AT指令
【AT指令表詳見】https://docs.ai-thinker.com/_media/bu03_bu04_at%E6%8C%87%E4%BB%A4_v1.0.2.pdf
在出廠固件下,使用相關AT指令,能快速上手使用。可以進行算法選擇、距離、角度測量配置等
(1)用數據線連接至開發板的TTL口,并打開串口助手連接
(2)連接后,使用指令 AT進行測試,若返回 OK,即代表AT指令處理成功
主要相關指令:
保存配置:AT+SAVE
恢復出廠模式:AT+RESTORE
獲取配置信息:AT+GETCFG (getcfg ID:65535, Role:0, CH:1, Rate:1)
算法切換指令:AT+SETUWBMODE=X
算法選擇 X=0:TWR 1:PDOA)
配置完需執行保存配置 AT+SAVE指令
設置配置信息:AT+SETCFG=X1,X2,X3,1
X1: 設備ID(0~10)
X2:設備角色(0:標簽 1:基站)
X3:設備信道(0:信道 9 1:信道 5)
1:(設備速率6.8M) 【目前只支持6.8M】
配置完需執行保存配置AT+SAVE指令
流水燈測試指令
AT+TESTLED=X
開始 / 停止開發板LED(流水燈)測試
X:1:開始測試LED 0:停止測試LED
注:執行AT+SETCFG配置設備信息前使用
獲取加速度傳感器數據
AT+GETSENSOR
獲取加速度傳感器數據 (BU03模組支持,BU04模組硬件不支持)
acc_x:80.000000acc_y:960.000000acc_z:144.000000angle: 81.493958
使用串口助手的定時發送功能,此時再移動開發板的位置,即可獲得此時開發板傳感器的實時數據
TWR算法指令
TWR測距
(1)用數據線連接至A開發板的TTL口,使用AT指令 AT+SETUWBMODE=0 AT+SETCFG=0,1,1,1 以及 AT+SAVE 配置為“基站”
(2)用數據線連接至B開發板的TTL口,使用AT指令 AT+SETUWBMODE=0 AT+SETCFG=0,0,1,1 以及 AT+SAVE 配置為“標簽”
此時,“基站”開發板的OLED屏幕將會顯示,當前“標簽”與“基站”之間的距離
也可以在“基站”上使用 AT+DISTANCE指令,顯示距離
專用指令
獲取設置的相關系數參數
AT+GETDEV
(getdev cap:10 anndelay:16336, kalman_enable:1, kalman_Q:0.018, kalman_R:0.642, para_a:1.0142, para_b:-173.75, pos_enable:0, pos_dimen:0)
設置設備的系數
AT+SETDEV=X1,X2,X3,X4,X5,X6,X7,X8,X9
X1:標簽容量(標簽刷新速率)
X2:天線延遲參數
X3:是否卡爾曼濾波使能位
X4:卡爾曼濾波參數 Q
X5:卡爾曼濾波參數 R
X6:校正參數 a
X7:校正參數 b
X8:是否定位使能位
X9:定位維度設置
配置完需執行保存配置AT+SAVE指令
PDOA算法指令
PDOA測距 / 角度
(1)用數據線連接至A開發板的TTL口,使用AT指令 AT+SETUWBMODE=1 AT+SETCFG=0,1,1,1 以及 AT+SAVE 配置為“基站”
此時繼續觀察“基站”TTL口,將會打印出一串標簽 ID,使用AT指令 AT+ADDTAG=267F1313,8834,1,64,0 AT+SAVE進行綁定。
(2)用數據線連接至B開發板的TTL口,使用AT指令 AT+SETUWBMODE=1 AT+SETCFG=0,0,1,1 以及 AT+SAVE 配置為“標簽”
此時,“基站”OLED屏幕顯示與標簽的距離D 和 角度A
專用指令
以下指令,僅適用與“基站”:
AT+GETDLIST
獲取 [發現列表]
AT+GETKLIST
獲取 [配對列表]
AT+ADDTAG
增加標簽到 [配對列表]
(AT+ADDTAG=267F1313,8834,1,64,0)
AT+DELTAG
從 [配對列表] 刪除標簽
更多指令
【AT指令表詳見】https://docs.ai-thinker.com/_media/bu03_bu04_at%E6%8C%87%E4%BB%A4_v1.0.2.pdf
2、二次開發SDK
Github地址:https://github.com/Ai-Thinker-Open/STM32F103-BU0x_SDK.git
Gitee地址:https://gitee.com/Ai-Thinker-Open/STM32F103-BU0x_SDK.git
注意:此SDK只適用于安信可BU03或BU04系列模組或開發板
開發環境
(1)此開發板的主控MCU為STM32系列,因此可以使用 Keil 開發,SDK文件夾下的README.md有相關的配置使用方法
(2)打開下載好的SKD文件夾,在ProjectsUSER目錄下面找到Project.uvprojx文件雙擊打開工程
SDK工程目錄結構
文件夾
名稱及路徑
說明
(3)Keil環境配置
若提示報錯,將報錯的misc.c的131行的NVIC->IPR[NVIC_InitStruct->NVIC_IRQChannel] = tmppriority;
更改為 NVIC->IP[NVIC_InitStruct->NVIC_IRQChannel] = tmppriority;
快速上手例程
Example下有不同的例程,以ds_twr_sts_sdc_init(雙邊測距發起者例程)、ds_twr_sts_sdc_resp(雙邊測距回復者例程) 為例
TWR雙邊測距回復者例程(UWB基站),負責接收發起者(UWB標簽)的數據,并計算距離數據,實現在串口上顯示TWR下的距離
此應用程序發送一個 “輪詢 ”幀(記錄輪詢的 TX 時間戳)
然后等待 “ds_twr_sts_sdc_resp”示例代碼(此應用程序的配套代碼)發出 “響應 ”信息。
收到響應后,記錄其 RX 時間戳,然后發送 “最終 ”報文完成交換。
最終報文包含本應用程序記錄的所有時間戳,包括計算/預測的最終報文本身的 TX 時間戳。
配套的 “ds_twr_sts_sdc_resp”示例應用程序(回復者)可計算出空中飛行時間,并由此估算出兩地之間的距離。
從而估算出兩個設備之間的距離。
發起者:發起雙邊定位的設備,負責發送定位數據包,可視為"UWB標簽"
回復者:負責接收定位數據包,并計算測距距離,可視為 "UWB基站"
(1)打開 example_defines.h ,把宏 #define EXAMPLE_DEMO 的值改成 1,打開 example_selection.h,取消宏 #define TEST_DS_TWR_INI_STS的注釋
(2)編譯后,連接開發板的TTL口,下載并燒錄到開發板中,配置為“標簽”
(3)打開 example_selection.h ,
取消宏 #define TEST_DS_TWR_RESP_STS 的注釋
example_selection.h 每次只能運行一個例程,所有要注釋 #define TEST_DS_TWR_INI_STS
(4)讓距離信息從UART上打印出來
打開 “ ds_twr_sts_sdc_resp.c ” 定位到 285 行
取消相關的注釋
定義 dist_str 數組變量
(5)編譯后,連接另一塊開發板的TTL口,下載并燒錄到開發板中,配置為“基站”
上電運行ds_twr_sts_sdc_init例程的設備A “標簽”
上電運行ds_twr_sts_sdc_resp例程的設備B “基站”
(6)打開串口助手,輸出標簽到基站之間的距離數據 (間隔1s)。
SDK相關代碼介紹
UWB 驅動API指南
main.c:若沒有打開 EXAMPLE_DEMO 宏 ,則執行主要任務 nt_task();
nt_task:主要是根據設備的不同配置、角色進行不同初始化和操作;
根據工作模式的不同,處理不同的數據傳輸模式(TWR / PDOA模式)
void nt_task (void) { //讀取上次flash存儲數據 load_bssConfig(); if (sys_para.param_Config.s.userConfig.workmode == 0) { OLED_ShowStr (19, 2, "Please Send", 2); OLED_ShowStr (19, 4, "AT Command", 2); while (app.pConfig->s.userConfig.nodeAddr == 0xFFFF) //AOA是否有設置 { App_Module_Sys_Work_Mode_Event(); } if (app.pConfig->s.userConfig.twr_pdoa_mode == 0) { if (sys_para.flag == 0xAAAA) { if (sys_para.param_Config.s.userConfig.role == 1) //node { node_start(); } else if (sys_para.param_Config.s.userConfig.role == 0) //tag { tag_start(); } } } else { if (sys_para.param_Config.s.userConfig.role == 1) { ds_twr_sts_sdc_responder(); } else if (sys_para.param_Config.s.userConfig.role == 0) { ds_twr_sts_sdc_initiator(); } } } else { while (1) { App_Module_Sys_Work_Mode_Event(); } } for (;;); }
二、程序燒錄
1、使用SWD接口下載/調試
接線方式
Keil 燒錄配置
2、使用串口USB下載
Uart燒錄軟件:點擊http://www.mcuisp.com/software/FlyMcu.rar
(1)使用數據線連接至TTL口
(2)打開燒錄軟件
選擇固件,已編譯出來的Hex文件
點擊搜索串口,選擇對應的Port。
長按板載的BOOT0不松開,再按一下RESET后松開BOOT0。進入燒錄模式,開始編程即可開始燒錄。等待燒錄完成即可。
審核編輯 黃宇
-
UWB
+關注
關注
32文章
1166瀏覽量
62406 -
開發板
+關注
關注
25文章
5573瀏覽量
102958
發布評論請先 登錄
正點原子Z20 ZYNQ 開發板發布!板載FMC LPC、LVDS LCD和WIFI&amp;藍牙等接口,資料豐富!
安信可GP-02-Kit測試過程+GPS 時鐘制作

【道生物聯TKB-620開發板試用】開箱&amp;開發板說明&amp;未來試用計劃
用安信可AI人臉識別開發板BW21-CBV-Kit驅動墨水屏

STM32開發板教程之STM32開發指南免費下載
安信可UWB室內定位模塊,BU03 測距說明教程

AGM官方AG32 MCU開發板

安信可Ai-WB2系列模組/開發板連接AWS亞馬遜云方法

評論