關鍵字:S2-LP,802.15.4g,數據透傳
目錄預覽
1 引言2 802.15.4g 幀格式3 代碼生成4 實驗結果5小結
1. 引言
S2-LP 硬件上支持 802.15.4g 的幀格式,但是現有的 SDK 包并沒有基于該幀格式的示例工程,因此本篇文章將介紹如何實現基于 802.15.4g 幀格式的數據透傳。
2.802.15.4g 幀格式
在開始之前,需要對 802.15.4g 幀格式有一個初步的了解,如下圖 1 如所示: ?- 前導碼(Preamble) :由 0~1023 對’01’或’10’組成,即總共 0~2046 個比特。
- 同步字(Sync) :用于判斷一幀數據的開始,長度為 0~32 個比特;其中 S2-LP 支持雙同步字配置,但不能兩個同時一起生效,只能二選一附上數據包并發送出去。對于接收者來說,如果第二個同步字被使能,那么就會同時識別這兩個同步字,只要其中之一被識別出來,那么就對這一包數據進行解調。就 802.15.4g 幀格式而言,當 FEC 被使能,那么在發送數據時,第二個同步字會被自動附上,無須專門使能第二個同步字。
- 物理頭(PHR):802.15.4g 特有的字段,根據不同的配置自動附到數據包上。其中,
? MS 字段一直都是 0
? FCS 字段用于選擇 CRC 模式
? DW 字段則是用于配置是否使能數據白化功能
? L10-L0 字段,用于設置幀數據包的長度
(MHR + MAC Payload + CRC)
- 載荷包(Payload):填充需要發送的內容
- 循環冗余碼校驗(CRC):硬件會自動計算并附到 MHR+MAC Payload 后面
其中,上述各步驟的含義如下:
1. 表示當前的幀格式設置為 802.15.4g
2. 配置 CRC 模式,當前選擇 CRC 模式 3:
a. 0b,CRC 模式 5 (4 字節)b. 1b,CRC 模式 3 (2 字節)3. CRC 多項式選擇,這里選擇模式 3
a. 0,沒有 CRC 字段b. 1,模式 1、8 比特、多項式為 0x07c. 2,模式 2、16 比特、多項式為 0x8005d. 3,模式 3、16 比特、多項式為 0x1021e. 4,模式 4、24 比特、多項式為 0x864CFBf. 5,模式 5、32 比特、多項式為 0x04C011BB7,802.15.4g 兼容4. 雙同步字選擇
a. 發送模式 i. 0,選擇首要同步字 ii. 1,選擇次要同步字b. 接收模式,如果設為 1,那么雙同步字都會被用于識別。此時,802.15.4g 相關的參數均配置完成。
3. 代碼生成
按照上述的步驟配置之后,輸出對應的寄存器配置即可,如下圖 4 所示:
有了導出寄存器的設置之后,導入當前 SDK 包中的 Basic_Generic 示例工程即可實現基 于 802.15.4g 幀格式的數據透傳,其中修好后的源碼文件見下述的附件。
4. 實驗結果
為了驗證上述的配置是否正確,通常會監控傳輸的數據包是否符合要求,如下圖5、6 所示:
上述的實驗結果基本符合我們的預期。
5. 小結
本篇章描述了如何利用 S2-LP DK 上位機工具軟件生成 802.15.4g 對應寄存器配置內容,并導入至當前 SDK 包中去,從而實現基于 802.15.4g 的數據透傳,彌補了 SDK 包該幀格式例程的缺失。
完整內容請點擊“閱讀原文”下載原文檔。
長按掃碼關注公眾號
更多資訊,盡在STM32
▽點擊“閱讀原文”,可下載原文檔
原文標題:應用筆記|基于S2-LP實現802.15.4g幀格式的數據透傳
文章出處:【微信公眾號:STM32單片機】歡迎添加關注!文章轉載請注明出處。
-
單片機
+關注
關注
6035文章
44554瀏覽量
634642 -
STM32
+關注
關注
2270文章
10895瀏覽量
355740
原文標題:應用筆記|基于S2-LP實現802.15.4g幀格式的數據透傳
文章出處:【微信號:STM32_STM8_MCU,微信公眾號:STM32單片機】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論