文章

顯示從 1月, 2024 起發佈的文章

[模組] STM32 藍芽模組 -- BlueNRG-2 模組

圖片
模組介紹 BlueNRG 系統有兩款已認證的藍芽模組,都支援藍芽5.2,一款型號為 BLUENRG- M2SA ( 對應的開發板名稱: STEVAL-IDB008V1M) ,一款為 BLUENRG- M2SP 。模組的核心是 STM32 Cortex-M0 ,它本身就是一顆 MCU ,再外接常見的通訊界面,如: UART 、 SPI 、 I2C… 等。官方網站提供該模組的 SDK 程式碼,到官方網站下載 BlueNRG-1_2 DK-3.2.3.0-Setup.exe ,執行安裝後,如下圖所示。官網提供的模組規格  https://www.st.com/zh/wireless-connectivity/bluenrg-2.html 用 Keil IDE 開啟任一個 NRG2 的專案檔,要注意使用這兩款的模組前有三個變數要定義清楚再來編譯。 BLUENRG- M2SA 的定義如下: HS_SPEED_XTAL=HS_SPEED_XTAL_32MHZ LS_SOURCE=LS_SOURCE_ EXTERNAL_32KHZ SMPS_INDUCTOR=SMPS_INDUCTOR_ 10uH BLUENRG- M2SP 屬於更新版的模組,低速的時脈由內部自行產生,外部電路也不需要額外設計電感元件,定義如下:                               HS_SPEED_XTAL=HS_SPEED_XTAL_32MHZ                               LS_SOURCE=LS_SOURCE_ INTERNAL_RO                               SMPS_INDUCTOR=SMPS_INDUCTOR_ NONE 只要在編譯的環境裡面設定就好了,如下圖。 X-NUCLEO-BNRG2A1 是一塊 M2SP 模組 (U8) 的開發板,上面除了模組之外,還有一顆 Flash-SPI (U9) ,模組的 DIO14 腳位接了一顆 LED 燈可供我們控制。由於這塊開發板上面沒有穩壓 IC 的電路,無法自己產生穩定的 3.3V ,所以需要透過 Arduino UNO 擴充槽從外部來獲得電壓。 Q : BLUENRG- M2SP 模組如果進入休眠狀態,此時 JTAG 將無法直接連上,如何解決? A