色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

實戰經驗 | 一步一步創建STM32WBA BLE_Custom工程

STM32單片機 ? 來源:未知 ? 2023-11-30 13:25 ? 次閱讀


關鍵詞:STM32WBA,BLE,定制化


目錄預覽

1、介紹

2使用CubeMX在STM32WBA上構建 Bluetooth Low Energy 應用

3、服務和特征配置

4、工具

5、NUCLEO-WBA52CG 的 CubeMX 初始化

6、驗證藍牙基本連接

7、使能串口日志追蹤

8、小結


01

介紹


STM32WBA 是 ST 最新一代的 BLE 芯片。該芯片已經獲得 STM32CubeMX 工具的支持,用戶可使用 STM32CubeMX 的圖形化界面、快速生成具備 IO 配置、時鐘配置、外設配置、中間件使用配置、BLE 服務配置等內容的基礎源碼工程。


本文檔將指導用戶如何使用 STM32CubeMX 軟件一步步生成基于 STM32WBA52MCU 的一個源碼工程;該工程實現了 BLE 外設功能、并具有定制化的 BLE 服務。使用STM32WBA 系列其他芯片也可以參考此文檔的步驟構建對應的基礎源碼工程。



02

使用CubeMX在STM32WBA上構建 Bluetooth Low Energy 應用


將 STM32CubeMX 生成的源碼工程進行簡單修改后,便可運行在 STM32WBA Nucleo 板上、實現 BLE 外設功能。


BLE 外設充當 GATT 服務器角色,手機 APP(ST BLE ToolBox)充當 GATT 客戶端角色,他們之間可以進行數據收發。


圖1.通信示意圖


03

服務和特征配置


該 GATT 服務器公開了一個定制化的服務(SerialPortService)并包含三個特征:

特征 1 具有 Notify 屬性,可發送數據給手機

特征 2 具有 Write without response 屬性,可接收手機的數據

特征 3 具有 Read 屬性,可接受手機的讀請求并發送響應數據包


服務器的服務和特征配置列舉如下 :


表1. 服務和特征配置


04

工具


4.1. 軟件工具


要制作和使用這個項目,完成應用程序所需的軟件工具是:

? STM32CubeMX 軟件 (v6.8.0 以上)

? STM32CubeWBA MCU Package (v1.0.0 以上)

? IDE: STM32CubeIDE or IAR

? 串口終端 (TeraTerm)

? 手機應用程序 STBLEToolbox


4.2. 硬件工具


還需要一個 STM32WBA Nucleo 板和一個 micro-B 到 Type-A USB 電纜。


圖2.硬件工具


05

NUCLEO-WBA52CG 的 CubeMX 初始化


5.1. CubeMX 初始化


打開 CubeMX 軟件及 MCU 選擇器,打開的過程可能會進行數據庫更新,耐心等待更新完成即可。另外,確保 CubeMX 是 6.8.0 以上版本,否則將找不到 STM32WBA 系列芯片。


圖3.芯片開始一個工程配置


進入 MCU 選擇器頁面后,按照下圖的步驟選中我們需要的開發板。


圖4.選擇對應的芯片型號


  1. 選擇系列分類

  2. 選擇 STM32WBA 系列

  3. 選擇對應的 STM32WBA 芯片型號

  4. 選擇 Start Project


圖5. 根據應用需求選擇是否使能 TrustZone


圖6. 切換到“Project Manager”頁,命名工程和選擇工程保存路徑和設置堆棧


用戶可以根據自己的應用需求對工程名稱路徑,IDE 類型以及堆和棧等進行設置,上圖給了一個參考示例。配置完成后,選中 File > Save Project 以保存工程配置(保存為.ioc 文件)。


5.2. 基本外設的配置


5.2.1. 切換到配置 SW 調試口


圖7. 配置 SW 調試口


5.2.2. 配置基本 RCC


圖8. 配置 RCC


5.3. STM32_WPAN BLE 依賴的外設的配置


STM32WBA 的 STM32_WPAN(BLE)的依賴項比較多。在配置的時候,我們無需死記需要配置的項目,可以將鼠標移到 STM32_WPAN 模塊中,停留 2 秒鐘,則會出現提示信息,用戶可根據這些提示信息來依次配置 STM32_WPAN BLE 需要的模塊。


STM32_WPAN BLE 模塊依賴的模塊包括:ADC、CRC、RAMCFG、ICACHE、RNG、RF、和 RTC。當用戶完成一個模塊的配置后,鼠標光標回到 WPAN 模塊時,提示信息會繼續指導用戶仍然需要配置的模塊,直到全部模塊配置完畢。


圖9. 根據提示信息來依次配置 STM32_WPAN


5.3.1. 配置 ADC


圖10. 配置 ADC


5.3.2. 配置 CRC


圖11. 根據提示配置下一個模塊(CRC)


圖12. 配置 CRC


5.3.3. 配置 RAMCFG


圖13. 配置 RAM


5.3.4. 配置 ICACHE


圖14. 配置 ICACHE


5.3.5. 配置 RNG


圖15. 配置 RNG


5.3.6. 配置 RF


圖16. 配置 RF


5.3.7. 配置 RTC


圖17. 配置 RTC 部分 1


圖18. 配置 RTC 部分 2


5.3.8. 配置 STM32_WPAN


當 WPAN 依賴的模塊全部配置完畢,我們便可以開始 WPAN 的配置:


圖19. 配置 STM32_WPAN


5.4. BLE GAP 和 GATT 配置


5.4.1. 配置 GAP


圖20. 配置廣播數據


5.4.2. 配置 GATT 服務


圖21. 配置 GATT(添加服務)


圖22. 配置 GATT(對服務進行定制化配置)


5.4.3. 配置自定義服務的特征 1(上報數據特征)


圖23. 配置上報數據特征


5.4.4. 配置自定義服務的特征 2(寫數據特征)


圖24. 配置寫數據特征


5.4.5. 配置自定義服務的特征 3(讀數據特征)


圖25. 配置讀數據特征


5.5. 其他配置與代碼生成


5.5.1. 進入“Clock Configuration”頁面,按下圖進行時鐘配置


圖26. 配置時鐘


5.5.2. 配置初始化函數


圖27. 配置初始化函數


5.5.3. 根據配置生成工程代碼,點擊“GENERATE CODE”按鈕,并等待源碼工程的生成。點“Open Folder”后,可看到如下代碼工程目錄:


圖28. 根據配置生成工程代碼


06

驗證藍牙基本連接


本文演示的是 IAR 工程的生成,用戶也可生成 CUBEIDE 工程。


打開 IAR 工程、用戶還需要手工增加代碼以開啟廣播,具體為:在 STM32_WPAN > App > app_ble.c > void APP_BLE_Init(void) 函數的尾部增加下圖所示的函數:



然后編譯、下載并復位,使代碼運行起來。


使用 ST BLE ToolBox 掃描,并連接該外設,可驗證我們上面的服務配置是否正確:


圖29. 驗證基本連接


07

使能串口日志追蹤


7.1. 當用戶需要使能串口 LOG 輸出功能時,可重新回到 CubeMX 的界面,進行串口的配置:


圖30. 配置串口


圖31. 配置串口 DMA


7.2. 為串口配置 GPDMA


圖32. 給串口配置 GPDMA TX


圖33. 給串口配置 GPDMA RX


圖34. 配置串口追蹤 1


圖35. 配置串口追蹤 2


圖36. 使能串口中斷


圖37. 配置串口注冊 callback


完成以上配置后,可再次點擊“GENERATE CODE”生成新的代碼。新的代碼會覆蓋掉工程中舊的代碼,但不會覆蓋工程中的用戶代碼部分。


7.3. 添加代碼、開啟串口日志追蹤


新的代碼生成后,還要再手工添加一些代碼:


在 app_conf.h 中添加宏定義“CFG_DBG_SUPPORTED”以及在 main.c 中添加函數RNG_KERNEL_CLK_OFF()



7.4. 驗證串口日志追蹤功能


驗證串口日志的方法比較簡單,直接打開串口助手,選擇好對應的串口,然后設置波特率為 115200,無奇偶校驗,數據為 8bit,1 位停止位。


圖38. 配置串口終端


7.4.1. 驗證讀特征


驗證讀特征可以在代碼中添加如下代碼(每次讀取數據,將數值加一后發送出去)



7.4.2. 驗證寫和 Notify(上報數據)特征


驗證寫特征和上報數據特征可以一起進行。當收到寫特征的數據時,直接將數據更新到上報數據特征中提交給 Client 端,如下圖所示,其中主要修改了兩個 case:

一個是允許寫,一個是將收到的數據寫回去。



7.4.3. 驗證日志追蹤


圖39. 驗證藍牙功能串口日志


08

小結


本文介紹了如何從芯片開始一步一步配置一個 BLE 工程,實際用戶在配置自己的項目時可以自行根據自己的項目需求而做相應的修改。


完整內容請點擊“閱讀原文”下載原文檔。



原文標題:實戰經驗 | 一步一步創建STM32WBA BLE_Custom工程

文章出處:【微信公眾號:STM32單片機】歡迎添加關注!文章轉載請注明出處。

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

    關注

    6035

    文章

    44553

    瀏覽量

    634744
  • STM32
    +關注

    關注

    2270

    文章

    10896

    瀏覽量

    355769

原文標題:實戰經驗 | 一步一步創建STM32WBA BLE_Custom工程

文章出處:【微信號:STM32_STM8_MCU,微信公眾號:STM32單片機】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    沙子變芯片,一步步帶你走進高科技的微觀世界

    在科技飛速發展的今天,芯片作為現代科技的核心元器件,其制造過程復雜且充滿挑戰。芯片不僅推動了信息技術、人工智能、物聯網等領域的進步,還成為衡量個國家科技實力的重要指標。然而,芯片制造并非易事,從沙子到芯片的每一步都充滿了技術、資金和人才的考驗。本文將詳細解析芯片制造的全
    的頭像 發表于 12-19 10:44 ?221次閱讀
    沙子變芯片,<b class='flag-5'>一步步</b>帶你走進高科技的微觀世界

    英特爾將進一步分離芯片制造和設計業務

    面對公司成立50年來最為嚴峻的挑戰,英特爾宣布了項重大戰略調整,旨在通過進一步分離芯片制造與設計業務,重塑競爭力。這決策標志著英特爾在應對行業變革中的堅定步伐。
    的頭像 發表于 09-19 16:48 ?300次閱讀

    通過展頻進一步優化EMI

    電子發燒友網站提供《通過展頻進一步優化EMI.pdf》資料免費下載
    發表于 09-04 09:32 ?1次下載
    通過展頻進<b class='flag-5'>一步</b>優化EMI

    用XDS200仿真PGA900時候,單步執行程序PC支持并沒有按照C語言一步一步執行,為什么?

    我在用XDS200仿真PGA900時候,程序能正常引導到main,單步執行程序, PC支持并沒有按照C語言一步一步執行, 這是什么原因? 以下是工程
    發表于 08-15 07:18

    昂科芯片燒錄高質量出海 唱響越南一步步新技術研討會

    8月8日,迎來了場科技盛事-2024越南一步步新技術研討會在河內·美利亞酒店隆重舉行。作為芯片燒錄領域的領導者,昂科技術應邀參會,吸引了眾多國內外業界專家和企業的關注。
    的頭像 發表于 08-10 09:20 ?835次閱讀

    散熱第一步是導熱

    一步提高產品的使用壽命。 產品型號有多種規格可選擇(導熱系數1.0~5.0W/m.K)。 合肥傲琪電子的導熱硅脂、導熱硅膠片還應用于對芯片、主板、功率管(MOS)、變壓器、模塊、PCB板、鋁基板
    發表于 08-06 08:52

    使用STM32CubeIde生成STM32WBA BLE Audio工程時,如何配置Ble Audio模式?

    使用STM32CubeIde生成STM32WBA BLE Audio工程時,如何配置Ble Audio模式? 看STMCubeMX界面中沒有
    發表于 05-27 06:18

    西門子與微軟進一步擴展戰略合作關系

    近日,西門子數字化工業軟件與微軟宣布進一步擴展雙方的戰略合作關系。通過微軟Azure云服務,西門子正式推出Xcelerator as a Service工業軟件解決方案,為客戶提供更靈活、高效的服務體驗。
    的頭像 發表于 05-21 10:47 ?677次閱讀

    mc workbench卡在代碼生成這一步不動了是什么原因?

    mc workbench卡在代碼生成這一步不動了是什么原因
    發表于 03-27 06:52

    STM32WBA Nucleo-64設置主頻為100M,發現啟動過程中卡死在PWR_VOSR_VOSRDY,為什么?

    使用ST官方的STM32WBA Nucleo-64板子, 當設置主頻為100M,發現啟動過程中卡死在PWR_VOSR_VOSRDY; 設置主頻為16MHz的時候,可以正常完成初始化。 使用的是CodeMx生成的工程 這是啥原因呢?看手冊也沒找到原因
    發表于 03-14 08:28

    材料價格進一步下降,盈利觸底 鋰電材料企業如何應對?

    在上游原料價格相對穩定、終端銷量有所好轉的情況下,季度四大鋰電主材價格卻出現進一步下跌。
    的頭像 發表于 03-01 10:25 ?1043次閱讀

    Prevayl的下一步是什么

    Prevayl的下一步是什么2022年,Prevayl推出了SmartWear——這是世界上第款采用臨床級心電圖增強的高性能服裝,其準確性無與倫比。生物識別先驅還創建個功能齊全的
    的頭像 發表于 02-17 18:10 ?521次閱讀
    Prevayl的下<b class='flag-5'>一步</b>是什么

    大族封測IPO進程再進一步

    2024年1月17日,深交所向大族封測發出IPO審核意見,標志著這家LED及半導體封測專用設備制造商的上市進程又向前邁進了一步
    的頭像 發表于 01-25 14:51 ?768次閱讀

    MediaTek宣布將進一步深化與海信的長期合作關系

    MediaTek 宣布將進一步深化與海信的長期合作關系。海信率先采用了 MediaTek Pentonic 智能電視芯片,顯著提升了流媒體內容的畫質表現。自 2024 年起,MediaTek AI 超級分辨率技術(AI-SR)將應用于海信全系列智能電視產品。
    的頭像 發表于 01-12 09:37 ?801次閱讀

    有什么方法可以進一步提高AD7714的分辨率啊?

    級放大再加給AD7714時,測得人分辨率還要低些。由于是用干電池得到AD7714的輸入信號,該信號相對來說很穩定,而且板上的噪聲也不是太大。請問各位大蝦,還有什么方法可以進一步提高AD7714的分辨率啊?不勝感激!
    發表于 12-25 06:33
    主站蜘蛛池模板: 国产一级做a爰片久久毛片男| 亚洲欧美综合视频| 欧美午夜不卡在线观看| 另类欧美尿交| 久久精品国产欧美成人| 黑人性xxx| 国产在线一区二区AV视频| 国产精品久久久久影院色老大| 成人午夜精品久久久久久久秋霞| 99热在线视频这里只精品| 91欧洲在线视精品在亚洲| 2012中文字幕在线动漫电影| 一二三四免费中文在线1| 亚洲色婷婷久久精品AV蜜桃| 亚洲三级在线观看| 伊人网久久网| 在线涩涩免费观看国产精品| 战狼4在线观看完免费完整版 | 国产色婷婷亚洲99麻豆| 国产高清在线a视频大全| 国产成人亚洲精品无广告| 国产成人精品电影在线观看| 国产成人精品综合在线| 国产精品美女久久久久AV超清| 国产精品久久人妻无码网站一区L| 国产传媒18精品A片在线观看| 国产精品视频大全| 国语自产一区视频| 久久精品国产视频澳门| 久久这里只有精品1| 摸董事长的裤裆恋老小说| 欧美 另类 美腿 亚洲 无码| 日本VA在线视频播放| 特级毛片AAAAAA| 亚洲免费观看| 2017日日干| xx69欧美| 国产精品久久久久久久久无码| 韩国演艺圈悲惨在线| 久久久久久久电影| 免费一级片网站|