TencentOS tiny 定製開發板直接操作LoRa模組

前言

有的時候想靈活的操作模組進行一些自定義的頻點和數據發送操作,這時候編寫代碼肯定是不方便的,一款得心應手的串口AT模組將會大大提升我們的效率。

這篇文章將使用 TencentOS tiny 定製開發板直接操作板載E53接口的LoRa模組,通過對其AT命令操作來實現一些自定義操作。

原本打算使用 ST 原廠主推的 LoRa 評估套件 P-NUCLEO-LRWAN3 ,在研究了 《[UM01723]ST Nucleo LoRa Sensor getting started user manual》後,發現 Nucleo 底板與 Arduino Shiled 之間並沒有硬件的跳線,需要對底板燒寫相應的 USB-UART Bridge 的特殊固件,沒辦法直接操作到 Shiled 的 LoRa 模組,因此放棄這個方式。

騰訊雲 IoT Explorer 是騰訊雲主推的一站式物聯網開發平臺,IoT 小能手從設備側開發、平臺功能操作、應用側開發三個部分來進行學習分享,另外還分享了一些動手實踐作品及收錄官方發佈的產業合作案例,幫助讀者更好地理解整個開發鏈路。詳情可點此查看

1 硬件連接介紹

經過分析,發現 TencentOS tiny 定製開發板上具有相關的串口跳線,可以很方便的對其中任何一方的數據進行分析。

模組管腳 跳線引腳
模組的TX AT_RX
模組的RX AT_TX

只需要將 AT_RX 連接 PC_RX,AT_TX 連接 PC_TX,就可以直接使用板載的 USB串口來操作瑞興恆方的LoRa模組。

2 AT操作介紹

串口配置爲:115200-8-1
AT命令主要參考《[RHF-PS01709]Long Range LoRa® Class ABC AT Command Specification v1.2.pdf》。

基礎格式

查詢
AT+COMMAND
AT+COMMAND?
AT+COMMAND=?

配置/控制

AT+COMMAND=DATA

返回
+COMMAND: “RETURN DATA”

基礎命令

AT測試
AT
+AT: OK

查看版本
AT+VER
+VER: 3.5.9

使能日誌
AT+LOG=DEBUG
+LOG: DEBUG

復位
AT+RESET
+RESET: OK

ID及密鑰相關命令

AT+ID
+ID: DevAddr, 00:00:4E:0F
+ID: DevEui, 8C:F9:57:20:00:00:4E:0F
+ID: AppEui, 70:B3:D5:7E:D0:0E:00:17

AT+KEY // 出於安全考慮,只能寫入,不能查詢

速率及頻點相關命令

確認當前使能的信道

AT+CH=NUM
+CH: NUM, 0-7, 64

加網命令

AT+MODE
+MODE: LWOTAA

+JOIN: Start
+JOIN: NORMAL
+LOG: DEBUG 11022761 LORA TX, 486300000, SF9, 125KHz, 20
+LOG: DEBUG 11022763 LORA TX, 0017000ED07ED5B3700F4E00002057F98CD3D4DF4DE72D
+LOG: DEBUG 11027954 LORA RX, 506700000, SF9, 125KHz
+LOG: DEBUG 11028137 LORA RX, 20BD6623406561250D47C4F9680A674FA3, -68, 8
+JOIN: Network joined
+JOIN: NetID 000035 DevAddr 6A:6B:16:CE
+JOIN: Done

數據收發命令

PORT

AT+PORT=?
+PORT: 8

字符發送

AT+MSG=“Data to send”
AT+CMSG=“Data to send”

AT+MSG=“2”
+MSG: Start
+LOG: DEBUG 11185443 LORA TX, 486300000, SF9, 125KHz, 20
+LOG: DEBUG 11185445 LORA TX, 40CE166B6A00020008544D455CA8
+LOG: DEBUG 11186596 LORA RX, 506700000, SF9, 125KHz
+LOG: DEBUG 11186778 LW MACCMD, RX, 0330FF0051
+LOG: DEBUG 11186780 LORA RX, 60CE166B6A8501000330FF00513BA7F222, -59, 9
+MSG: FPENDING
+MSG: RXWIN1, RSSI -59, SNR 8.5
+MSG: Done

HEX發送

確認幀
AT+CMSGHEX=“12345678”
+CMSGHEX: Start
+CMSGHEX: Wait ACK
+CMSGHEX: Done

3 更多靈活設置

單頻點通信

1.僅使能80信道

AT+CH=NUM,80
+CH: NUM, 80

2.僅使用80信道的DR3進行通信

AT+CH=80
+CH: 80,486300000,DR0:DR5

AT+CH=80,486.3,3
+CH: 80,486300000,DR3:DR3

4 騰訊雲物聯網開發平臺

1.端側上報數據

[17:45:11.507]發→◇AT+MSG="1234"
□
[17:45:11.517]收←◆+MSG: Start
+LOG: DEBUG   165368 LW      MACCMD, TX, 0307
+LOG: DEBUG   165369 LORA    TX, 486300000, SF9, 125KHz, 20
+LOG: DEBUG   165371 LORA    TX, 408BDED96B020100030708711FE371F37D3B88

[17:45:12.694]收←◆+LOG: DEBUG   166541 LORA    RX, 506700000, SF9, 125KHz

[17:45:13.698]收←◆+LOG: DEBUG   167551 LORA    RX, 505300000, SF12, 125KHz

[17:45:14.515]收←◆+MSG: Done

2.平臺側查看

騰訊雲 IoT Explorer 上我則使用之前創建的一個澆花器項目,13塊錢DIY微信小程序遠程澆花神器,會將模組上報的第一字節以土壤溼度的屬性呈現出來。

END

That’s all


IoT小能手的其他精彩文章:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章