那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

使用STM32WL系列Sub-GHz無線驅動程序的應用示例

得捷電子DigiKey ? 來源:得捷電子DigiKey ? 2024-07-18 10:20 ? 次閱讀

問:使用 STM32WL 系列 Sub-GHz 無線驅動程序的應用示例

STM32WL系列器件包括內置的低于1GHz無線外設 ( Sub-GHz 指的是低于 1GHz 的無線電頻段 ),能夠支持LoRa(僅限STM32WLE5/55器件)、(G)FSK、(G)MSK和BPSK調制方案。與此無線外設的通信是通過使用設備參考手冊 第5.8節中概述的命令的內部SPI接口完成的。雖然該RF接口的抽象層是在低于1GHz Phy中間件中定義的(在STM32CubeWL MCU Package 中可得),但將該中間件添加到使用STM32CubeMX的項目中需要在其他幾個外設和庫之間進行高級配置。這會導致一個更大、更復雜的項目,消耗更多的設備內存,并導致抽象層低效率。對于要求功耗低的簡單應用,將RF接口驅動程序與低于1GHzPhy中間件隔離并直接利用它可能是有益的。

低于1GHz Phy中間件由高層 (radio.c) 和低層 (radio_driver.c) 組成。高級驅動程序提供了許多有用的函數,這些函數抽象了低層無線功能,例如RadioInit() ,RadioSetTxConfig() 和RadioSend() 。然而,盡管這些函數很方便,但它們的代價是效率低下,比如冗余的函數調用和過度依賴諸如音序器和定時器服務器之類的實用程序。低層驅動程序簡單地實現參考手冊 中概述的 SUBGHZSPI 命令,并提供低于1GHz無線寄存器的定義。以犧牲一些質量屬性(如可維護性和可移植性)為代價,使用該驅動程序進行編碼直接允許程序員對其應用程序進行更大的控制。

詳細演示如何將這個低層與低于 1GHz Phy 中間件隔離開來,并直接添加到 STM32CubeIDE 項目的操作過程。

要求: 要準確地跟隨演示教程,需要以下項目。

STM32CubeIDE (版本1.8.0)

STM32CubeWL MCU Package (版本1.1.0)

NUCLEO-WL55JC1

wKgZomaYfD-AdXolAAUktd-gP_Y886.png

NUCLEO-WL55JC1 - STM32WL Nucleo-64 開發板

應用程序示例

作為以獨立方式使用低于1GHz Phy驅動程序的示例,我們創建了兩個示例程序(可在GitHub Repository 上獲得)。這些示例復制了STM32CubeWL MCU Package 中SubGHz_Phy_PingPong示例的高級功能。也就是說,它們都實現了圖1所示的狀態機。這兩個示例之間的唯一區別是一個使用LoRa調制解調器,而另一個使用FSK調制解調器。

wKgaomaYfD-AQ65VAAGSU-LLKC4436.png

1:低層無線驅動乒乓樣例項目有限狀態機

兩個NUCLEO-WL55JC1 板需要運行這些示例,其中一個將充當主機,而另一個將充當從機。最初,兩個板都處于主狀態,以隨機間隔發送“PING”消息并等待響應。最終,兩個板同步,因此只有一個設備發送“PING”消息,另一個設備發送“PONG”消息作為響應。要執行該應用程序,請按照前一節提供的步驟創建一個項目,該項目包含低于1GHz 無線驅動程序。然后,只需將項目的main.c 文件的內容替換為GitHub Repository 中的一個文件的內容,具體取決于你希望在示例中使用哪種調制方案。最后,構建項目并使用它對兩個Nucleo板進行編程

注意,這些示例與SubGHz_Phy_PingPong示例兼容。也就是說,一塊板可以用上述應用程序編程,另一塊板可以用SubGHz_Phy_PingPong應用程序編程,它們將按預期一起工作。然而,為了利用GFSK調制,必須首先對SubGHz_Phy_PingPong示例進行稍微修改。打開subghz_phy_app.h 文件,修改第一個define指令如下:

#define USE_MODEM_LORA 0 //1

#define USE_MODEM_FSK 1 //0

#define REGION_US915 //REGION_EU868

然后,在radio.c 中找到RadioRandom() 函數,注釋掉RadioSetModem(MODEM_LORA); 這一行不僅不需要獲得隨機數,還會擦除之前初始化步驟中設置的無線配置。因此,在這種情況下,它被認為是一個bug,不應該被包括在內。SubGHz_Phy_PingPong示例現在準備編譯并燒寫到NUCLEO-WL55JC1 板之一。另一個板應該根據上述說明使用GitHub Repository 中的main_gfsk.c 文件的內容進行編程。

在初始化和執行圖1所示的有限狀態機之前,通過調用清單1中定義的radioInit() 函數來初始化無線。該函數使用與SubGHz_Phy_PingPong示例相同的無線配置,但有一個例外。在參考手冊 第6.1節的末尾,它說:

SMPS需要時鐘才能正常工作。如果由于任何原因這個時鐘停止,設備可能會被破壞。為了避免這種情況,使用時鐘檢測,當出現時鐘故障時,關閉SMPS并啟用LDO。SMPS時鐘檢測通過低于1GHz無線 SUBGHZ_SMPSC0R.CLKDE使能。缺省情況下,SMPS時鐘檢測功能處于關閉狀態,開啟SMPS前必須開啟時鐘檢測功能。

盡管有這個警告,低于1GHz Phy中間件的高層和低層都沒有啟用SMPS時鐘檢測。因為DCDC_ENABLE 是在radio_config.h 中定義的,所以SUBGRF_SetRegulatorMode() 函數將啟用SMPS降壓轉換器。因此,在此函數調用之前,手動啟用SMPS時鐘檢測。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    146

    文章

    17317

    瀏覽量

    352631
  • 寄存器
    +關注

    關注

    31

    文章

    5363

    瀏覽量

    121157
  • 無線
    +關注

    關注

    31

    文章

    5470

    瀏覽量

    173822
  • 驅動程序
    +關注

    關注

    19

    文章

    848

    瀏覽量

    48214

原文標題:實操!玩轉STM32WL系列Sub-GHz無線驅動程序

文章出處:【微信號:得捷電子DigiKey,微信公眾號:得捷電子DigiKey】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Sub-GHz無線連接系統

    其它1GHz以下的未許可頻段。由于缺乏1GHz以下的無線標準,設計人員傾向于使用專有物理層(PHY)與通信協議棧,來滿足他們的特定需求。圖1所示的是大多數未許可sub-GHz頻率被采用
    發表于 06-17 08:17

    【ST NUCLEO-WL55JC2開發板免費試用申請!】

    曲線加密引擎的公鑰加密。總體而言,STM32WL 產品是 系列sub-GHz 無線連接領域的領軍產品,兼具易用性和可靠性,同時可完美滿足各種工業和消費類應用的需求。6.為什么
    發表于 06-15 18:38

    Sub-GHz無線產品有什么優點?

    Sub-GHz無線產品有什么優點?
    發表于 05-21 06:43

    高性能Sub-GHz無線芯片有哪些應用?

    什么是高性能Sub-GHz無線芯片?高性能Sub-GHz無線芯片有哪些應用?
    發表于 05-28 06:40

    基于STM32WL系列微控制器構建特定LoRa應用程序

    本應用筆記將指導用戶完成基于STM32WL系列微控制器構建特定LoRa@應用程序所需的所有步驟。 LoRaR是一種無線通信網絡,旨在以極低的比特率進行遠距離通信,并延長電池供電型傳感器
    發表于 08-14 11:38

    STM32WL sub-GHz SoC未來工業物聯網最佳的選擇

    內容包含:STM32 不斷擴大的產品組合、什么是STM32WL?、集成金字塔、STM32WL系列八大特性、STM32WL 生態系統成長等。
    發表于 09-05 07:25

    高性能 Sub-GHz無線芯片及應用方案

    高性能 Sub-GHz無線芯片及應用方案 Silicon Labs公司Sub-GHz無線市場概況當今世界,無線產品早已無處不在。在我們周圍
    發表于 04-12 10:02 ?1687次閱讀
    高性能 <b class='flag-5'>Sub-GHz</b><b class='flag-5'>無線</b>芯片及應用方案

    線下實訓 | STM32WL LoRa? SoC應用開發及設計

    提供了雙電源輸出和寬泛線性頻率范圍,以滿足任何無執照 RF 頻譜的需求。總體而言,STM32WL 產品是 STM32 系列sub-GHz 無線
    的頭像 發表于 11-10 11:45 ?1522次閱讀

    用于 STM32WL 系列 LoRa?調制的 RSSI 和 SNR

    用于 STM32WL 系列 LoRa?調制的 RSSI 和 SNR
    發表于 11-21 08:11 ?0次下載
    用于 <b class='flag-5'>STM32WL</b> <b class='flag-5'>系列</b> LoRa?調制的 RSSI 和 SNR

    意法半導體發布針對STM32WL無線MCU優化的RF IPD

    意法半導體的STM32WL MCU是一系列無線雙核微控制器芯片,Arm Cortex-M4 處理核心負責處理應用任務,Cortex-M0+核心專門管理sub-GHz 遠程射頻通信功能,
    發表于 03-14 12:23 ?613次閱讀

    STM32WL sub-GHz SoC 未來工業物聯網最佳的選擇

    電子發燒友網站提供《STM32WL sub-GHz SoC 未來工業物聯網最佳的選擇.pdf》資料免費下載
    發表于 07-29 11:07 ?0次下載
    <b class='flag-5'>STM32WL</b> <b class='flag-5'>sub-GHz</b> SoC 未來工業物聯網最佳的選擇

    STM32WL系列STM32CubeWL入門

    電子發燒友網站提供《STM32WL系列STM32CubeWL入門.pdf》資料免費下載
    發表于 08-01 17:02 ?1次下載
    <b class='flag-5'>STM32WL</b><b class='flag-5'>系列</b>的<b class='flag-5'>STM32</b>CubeWL入門

    STM32WL5x具有sub-GHz無線電解決方案

    電子發燒友網站提供《STM32WL5x具有sub-GHz無線電解決方案.pdf》資料免費下載
    發表于 08-02 10:36 ?1次下載
    <b class='flag-5'>STM32WL</b>5x具有<b class='flag-5'>sub-GHz</b><b class='flag-5'>無線</b>電解決方案

    面向STM32WL系列STM32CubeWL入門

    STM32CubeWL 將開發 STM32WL 微控制器應用所需的所有通用內置軟件組件聚集在單一軟件包中。根據STM32Cube 計劃,這套組件具有高度可移植性,不僅在 STM32WL
    發表于 08-31 11:15 ?3次下載

    STM32WL FUOTA應用設計

    電子發燒友網站提供《STM32WL FUOTA應用設計.pdf》資料免費下載
    發表于 09-19 15:01 ?2次下載
    <b class='flag-5'>STM32WL</b> FUOTA應用設計
    网上百家乐平台下载| 百家乐官网开过的路纸| 真博线上娱乐| 宝博娱乐城开户| bet365娱乐城注册| 环球棋牌评测网| 顶级赌场手机版官方下载| 百家乐里面的奥妙| 百家乐声音不印网| 百家乐陷阱| 老钱庄百家乐官网的玩法技巧和规则 | 百家乐官网娱乐城| V博百家乐官网的玩法技巧和规则| 百家乐官网路单资料| 百家乐官网纯数字玩法| 百家乐官网庄闲筹码| 天全县| 百家乐官网路单破解器| 百家乐官网庄闲的比例| 土豪百家乐官网的玩法技巧和规则| 单机百家乐官网游戏下| 百家乐视频免费下载| 百家乐赌博论坛博客| 百家乐娱乐下载| 网络百家乐会输钱的多吗| 大发888真钱娱乐游戏博彩| 库车县| 百家乐官网赌场群| 百家乐官网稳赢秘笈| 百家乐赔率技巧| 香港百家乐赌场娱乐网规则| 水果机破解| 大发888赌场| 浦北县| 百家乐官网庄家闲| 属猪属蛇做生意怎么样| 百家乐一邱大师打法| 大发888真钱游戏平台| 长岛县| 百家乐官网建材| 百家乐设备电子路|