關鍵字:STM32WL, LSE, 反饋電阻,32.768KHZ
目錄預覽
1 問題描述2 問題確認3 問題分析4 問題解決5小結
1. 問題描述
客戶調試STM32WLE5JB 樣機的時候遇到這樣一個問題:在調試LPUART,不打開外部時鐘的時候,能夠正常打印,若開啟外部的HSE 和LSE 后就沒有打印。
2.問題確認
發現上述問題時,客戶使用STM32CubeMX 生成的工程,所以首先建議客戶檢查LPUART 的時鐘配置有沒問題,并且讓客戶嘗試使用STM32Cube_FW_WL_V1.2.0ProjectsNUCLEOWL55JCExamplesUARTLPUART_WakeUpFromStop 例程對比驗證。后來客戶發現是開啟外部時鐘HSE 和LSE 后,程序直接卡死在HAL_RCC_OscConfig ,測量不到HSE 的32MHZ 信號。而客戶的程序移植到ST 官方的STM32WL NUCLEO 板上可以正常運行。通過前面的驗證很容易懷疑是不是客戶樣機外部HSE 32MHZ 的晶振沒有起振。拿到客戶的樣機后,嘗試更換32MHZ 晶振,調整晶振負載電容和使用TCXO,發現都沒辦法測量到32MHZ 信號,客戶程序依舊卡死在HAL_RCC_OscConfig.
3. 問題分析
由于前面都是用客戶的電腦和程序調試,客戶的電腦上的Keil 版本不能單步調試。針對客戶的問題,基于STM32WL AT slave 例程,運行在客戶樣機上發現現象一致,也是卡死在HAL_RCC_OscConfig 。但使用單步調試進入HAL_RCC_OscCongig 里面發現,卡死具體的原因不是HSE,而是LSE 初始化出了問題,一直在等待LES ready 的信號。具體代碼如下:
針對上面的分析,把RTC時鐘源更改為HSE_RTC,如下圖一,圖二, AT slave例程可以正常運行,32MHZ晶振可以起振,使用AT指令可以測量出RF有正常發射出信號。
圖一
圖二
同時,對于客戶需要使用LPUART,可以按照圖三的時鐘配置驗證:
圖三
客戶用他們手上樣機同步驗證,發現結果一致。確實不使用LSE后,樣機可以正常工作,32MHZ晶振也可以正常起振。下一步就要分析導致LSE無法正常工作的原因。客戶有按建議嘗試更換32.768KHZ的晶振以及負載。并且調整LSEDRIVE為high 即__HAL_RCC_LSEDRIVE_CONFIG(RCC_LSEDRIVE_HIGH),發現依然無法正常使用LSE。
4.問題解決
針對LSE無法起振問題,嘗試了上面針對硬件和軟件多種方法后依然沒有解決。后來仔細檢查客戶原理圖發現,客戶在32.768KHZ晶振上添加了1M的反饋電阻,如圖四R34
圖四
而在STM32WL 規格書 DS13105 Multiprotocol LPWAN 32-bit Arm Cortex-M4 MCUs, LoRa, (G)FSK, (G)MSK, BPSK, up to 256KB Flash, 64KB SRAM (version 8)中明確表示禁止在32.768KHz 晶振的OSC32_IN 和OSC32_OUT引腳中間添加反饋電阻。如下圖五:
圖五
后面按規格書要求,去掉客戶樣機上的R34 1M電阻,32.768KHz 晶振就可以正常起振,程序不會再卡死在LSE初始化。問題得到解決。
另外,根據AN2867 關于STM32MCU晶振的參考設計要求,從客戶晶振規格書查到下面參數:
ESR=90K 歐姆
CL = 12.5pF
C0 = 1.3pF
計算得到跨導:gmcrit=2.9032uA/V
可以看到跨導大于STM32WLE5JBI6規格書中LSE最大驅動能力2.7uA/V,如圖六示:顯然增益裕量不符合起振條件即Gainmargin>5
圖六
所以最后也建議客戶后續更換符合STM32WL規格書要求的32.768KHZ 晶振。具體晶振選型可以參考AN2867。
5.小結
本篇筆記分析了客戶使用外部時鐘調試STM32WL LPUART無法正常工作的問題。最后分析出問題是由LSE的32.768KHZ晶振沒有正常起振引起。而32.768KHZ晶振無法正常起振則是因為客戶在32.768KHZ晶振上添加了1M的反饋電阻。雖然在AN2867里有對STM32晶振使用反饋電阻的建議,但需要注意的是針對STM32WL這顆芯片,其規格書中有明確要求禁止在32.768KHz 晶振的OSC32_IN 和OSC32_OUT引腳中間添加反饋電阻。后面將客戶樣機上的1M的反饋電阻去掉后,樣機的32.768KHz 晶振可以正常起振,程序運行正常。雖然最后客戶樣機使用晶振可以正常起振,但根據AN2867,客戶晶振的增益裕量是不符合起振條件的。所以為了避免后續產品量產時出現低速晶振無法起振問題,建議客戶參考AN2867選擇合適的32.768KHz 晶振。
完整內容請點擊“閱讀原文”下載原文檔。
長按掃碼關注公眾號
更多資訊,盡在STM32
▽點擊“閱讀原文”,可下載原文檔
原文標題:應用筆記 | 關于STM32WL LSE 添加反饋電阻后無法起振問題
文章出處:【微信公眾號:STM32單片機】歡迎添加關注!文章轉載請注明出處。
-
單片機
+關注
關注
6032文章
44525瀏覽量
633258 -
STM32
+關注
關注
2266文章
10876瀏覽量
354925
原文標題:應用筆記 | 關于STM32WL LSE 添加反饋電阻后無法起振問題
文章出處:【微信號:STM32_STM8_MCU,微信公眾號:STM32單片機】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論