在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

時鐘失效后STM32還能運行是什么情況

GReq_mcu168 ? 來源:STM32單片機 ? 作者:stmcu ? 2021-10-29 17:58 ? 次閱讀

該問題由某客戶提出,發生在 STM32F103VDT6 器件上。據其工程師講述:在其產品的設計中,STM32 的 HSE 外接 8MHz 的晶體產生振蕩,然后通過 STM32 內部的PLL 倍頻到 72MHz,作為 STM32 的系統時鐘驅動芯片工作。在 STM32 片外有專用的看門狗芯片,監控 STM32 的運行。STM32 內部的軟件會在 STM32 的某個管腳上產生脈沖來復位看門狗。一旦 STM32 沒有及時的產生脈沖來復位門狗,則看門狗會認為 STM32 運行不正常,從而復位 STM32。在對該產品做可靠性測試時,進行了對看門狗監控時鐘失效能力的測試。測試的方法是:將 HSE 外接的晶體的兩個端子接地,使其停止振蕩,從而驗證看門狗能否做出對 STM32 的做出復位動作。試驗結果表明,看門狗沒有產生復位動作。進一步測試發現,STM32 在失效情況下仍在向看門狗發送復位脈沖。詳解STM32時鐘的文章:詳解STM32的時鐘系統,收藏了。

調研:

重復測試,確認其所述現象屬實。檢查軟件代碼,確認其軟件沒有開啟 STM32 的 CSS功能。修改代碼,將 PLL 的二分頻從 STM32 的 MCO 管腳送出,以方便用示波器觀察。通過控制晶體的管腳是否接地來控制 HSE 是否振蕩。當 HSE 正常振蕩時,MCO 送出的信號頻率為 36MHz,當 HSE 停止振蕩時,MCO 送出的信號的頻率在 1.7MHz 附近,如圖(一)所示:

通過調試器觀察寄存器 RCC_CFGR 中的 SWS 控制控制位,其值為[10],說明此時的系統時鐘確實來自 PLL 的輸出。

從 STM32F103VD 的數據手冊中查找 PLL 相關的參數如表(一):

c8633fbe-389b-11ec-82a8-dac502259ad0.png

其中,PLL 的輸出頻率范圍是 16MHz – 72MHz。也就是說,PLL 在處于相位鎖定的狀態下,可以輸出 16MHz – 72MHz 的時鐘信號。而當輸入信號頻率過低而導致輸出信號頻率低于 16MHz 時,將可能處于失鎖的狀態。在這狀態下,它的輸出信號的頻率與輸入信號的頻率之間,不一定符合所設定的倍頻與分頻關系。更確切的說,不能通過公式:

c8d70d36-389b-11ec-82a8-dac502259ad0.png

得出“輸入信號頻率為零時,輸出信號頻率也為零”這樣的結論。這一點與實測的結果相吻合。

結論:

STM32 的 PLL 在沒有輸入信號的情況下,仍能維持在最低的頻點處振蕩,產生輸出。以至,CPU 及其它外設仍能在 PLL 送出的時鐘的驅動下運行。所以,通過判斷有無時鐘來驅動 CPU 執行指令的方式來判斷 HSE 是否失效是行不通的。

處理:

對軟件做如下修改:

1. 在軟件的初始化部分,開啟 STM32 的 CSS 功能;

2. 修改 NMI 中斷服務程序,加入 while(1) 陷阱語句;

開啟 CSS 功能后,當 HSE 失效時,STM32 會自動開啟 HSI,并將系統時鐘的來源切換到HSI 的輸出,同時產生 NMI 中斷。這樣,程序的流程將停留在 NMI 中而不能產生復位片外的看門狗的脈沖。當片外看門狗溢出后,就會復位 STM32,使其恢復到正常駐的狀。

建議:

STM32 中的 CSS 功能是專門為檢測和處理 HSE 失效而設計的。但該功能在 STM32 復位后是被禁止的,需要軟件對其使能才會發揮作用。當 CSS 單元檢測到 HSE 失效時,它會使能 HSI,并將系統時鐘切換到 HSI。同時,它會關閉 HSE,如果 PLL 的輸入信號來自 HSE的輸出,它也會關閉 PLL。CSS 單元在做時鐘調整的同時,也會產生一個 NMI 中斷請求,和一個送給高級定時器的剎車信號。NMI 中斷請求會產生一個 NMI 中斷,以便用戶程序可以在中斷服務程序中做緊急處理,而剎車信號則是使高級定時器進入剎車狀態,以防止由其控制的電機驅動橋臂由于失去控制而過流。用戶程序可以在 NMI 中斷服務程序中嘗試恢復 HSE 及 PLL 的功能,也可以使用陷阱讓程序的流程停留在服務程序中,從而等待看門狗復位整個系統。

責任編輯:haq

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

    關注

    2290

    文章

    11018

    瀏覽量

    362656
  • 時鐘
    +關注

    關注

    11

    文章

    1886

    瀏覽量

    132884

原文標題:時鐘失效之后,STM32還能運行?

文章出處:【微信號:mcu168,微信公眾號:硬件攻城獅】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    訓練完模型后用cls_video.py在canmvIDE上運行,按著步驟操作但是攝像頭沒有識別到是什么情況

    訓練完模型后用cls_video.py在canmvIDE上運行,按著步驟操作但是攝像頭沒有識別到是什么情況啊,沒有框出現
    發表于 06-10 06:57

    軸承損壞導軌還能用嗎?

    軸承損壞導軌還能用嗎?
    的頭像 發表于 04-03 17:52 ?261次閱讀
    軸承損壞<b class='flag-5'>后</b>導軌<b class='flag-5'>還能</b>用嗎?

    STM32H750更改時鐘,程序無法運行怎么解決?

    各位大佬,我想請教一個問題: 為了驗證H750主時鐘頻率和功耗的關系: 用STM32CUBEMX配置STM32H750VBT6的主時鐘為:100MHz,程序可以正常
    發表于 03-12 06:38

    stm32h750vbt6設置了LSE,裝載RESET失效了怎么解決?

    stm32h750vbt6設置了LSE,裝載RESET失效
    發表于 03-07 15:16

    stm32f105rct6把usb插在電腦上,然后再上電,模擬u盤內的文件就會缺失,這個是什么情況呢?

    請問一下各位大佬,我使用stm32f105rct6,用USB文件系統,先上電,再插上USB,模擬U盤內的.csv文件數量是正確的。但是,我先把usb插在電腦上,然后再上電,模擬u盤內的文件就會缺失,請問一下這個是什么情況
    發表于 03-07 07:57

    ADS5474模數轉換器的VCM和VREF引腳在什么情況下使用?

    是什么?在什么情況下使用?文檔上有張圖表明兩個時鐘引腳在內部通過兩個1000歐電阻接到2.4V電壓,這個2.4V是不是就是VREF? 此外,信號輸入規定是2.2VPP,共模電壓設置為3.1V或是0V是不是都行?
    發表于 01-13 08:04

    ADS1278數據輸出引腳Dout1有脈沖輸出是什么情況?

    ADS1278配置成SPI TDM模式,CLK時鐘24MHz,在SCLK沒給時鐘情況下,用示波器觀察Dout1管腳就不規則脈沖輸出,寬度大約6us,周期不定。另外DRDY有規律性脈沖輸出,寬度大約50ns,間隔60us,請問
    發表于 12-31 06:12

    ADS1271使用不當會不會出現采樣率的主時鐘不是這個對應關系的情況?

    ADS1271在MODE浮空的情況下采樣率Wie主時鐘的512分之一,即fs=fclk/512,如果使用不當,會不會出現采樣率的主時鐘不是這個對應關系的情況,例如當fclk=1024
    發表于 12-20 08:24

    ADS7254什么情況下SDO_A會始終呈高電平呢?

    當我向ADS7254發送寫CFR寄存器命令(0X824),再發送讀CFR寄存器命令(0X300),SDO_A始終返回高電平,而SDO_B任然進行正常采樣的數據返回(0X409)。請問為什么或者什么情況下SDO_A會始終呈高電平呢?
    發表于 11-18 07:55

    OPA1612諧波失真高達3.8%是什么情況

    官網下載OPA1612的參考設計,是個反向放大器,在修改輸入電壓為2v,默認1Khz,修改負載電容2p,增加負載電阻,其他什么都沒改,諧波失真竟然高達3.8%??? 改為正向放大,失真看起來就正常了,這是個什么情況??是模型有問題還是我哪里沒做對??如果我需要反向放大器怎么辦??
    發表于 10-15 07:29

    電源的等效變換法分別適用于什么情況

    電源的等效變換法是電路分析中常用的方法,它指的是將一個電源等效為另一個形式上不同的電源,但對外電路特性保持不變的方法。以下介紹電源的等效變換法分別適用于什么情況: 一、化簡電路 當電路中存在多個電源
    的頭像 發表于 09-30 09:43 ?3739次閱讀

    MSP430F249TPMR出現高溫存儲失效了的情況,怎么解決?

    去年買了樣品MSP430F249TPMR,在客戶端出現高溫存儲失效了 客戶存儲環境如下: 1. 先是-20度存儲12小時,回常溫測試合格 2. 再做65度存儲12小時,回常溫
    發表于 09-27 08:03

    STM32F030C8T6進入停止模式所有時鐘都停止了,為何SysTick還能工作?

    我在使用STM32F030C8T6,按照參考手冊的說法,在停止模式全部時鐘停止。沒有了時鐘,SysTick應該也不再工作,但實際上SysTick在停止模式還在工作。所以進入停止模式時要關閉
    發表于 07-23 06:52

    wifi_station_disconnect()在什么情況下會返回false?

    正常休眠,如果是在Station模式下,則調用無法返回而且整個程序運行異常(但不會自動復位),無法正常休眠! 這個是SDK異常還是我使用方法或者代碼有問題? 另:wifi_station_disconnect()在什么情況下會返回false? SDK使用RTOS1.
    發表于 07-19 10:17

    什么情況下wifi_set_opmode會失敗?

    我想知道在什么情況下wifi_set_opmode會失?。?模塊運行一段時間,我從 STATION 模式切換到 STATION AP 時遇到問題,試圖調試原因。 為我打開模塊電源,
    發表于 07-12 06:44
    主站蜘蛛池模板: 欧美在线视频看看 | 免费一级毛片在线播放不收费 | 欧美色图影院 | 国产午夜视频在线观看网站 | 成人免费精品视频 | 天堂网在线www资源网 | 伊人网成人 | 欧美深夜| 天天操国产 | 天天操国产 | 国产精品久久久久久影院 | 久久婷婷综合中文字幕 | 国产欧美亚洲精品第二区首页 | 亚洲国产精品国产自在在线 | 欧美成人精品一区二三区在线观看 | 色吊丝中文字幕 | 香港三级理论在线影院 | 日韩毛片高清在线看 | 成人毛片一区二区三区 | 女人aaaaa片一级一毛片 | 四虎免费永久观看 | 国产日本在线播放 | 九九热国产在线 | 久久婷人人澡人人爽 | 亚洲一本之道在线观看不卡 | 手机天堂网| 一级片在线视频 | 藏经阁在线观看 | 七月婷婷在线视频综合 | 亚洲天堂网站 | 亚洲综合久久综合激情久久 | 亚洲人的天堂男人爽爽爽 | 中文字幕av一区二区三区 | 午夜黄大色黄大片美女图片 | eeuss久久久精品影院 | 白嫩美女在线啪视频观看 | 国产aaaaaa| h视频在线观看视频观看 | 青草久| 国产香蕉视频在线观看 | 奇米在线|