衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

時(shí)鐘失效之后,STM32還能運(yùn)行?

STM32嵌入式開發(fā) ? 來源:STM32嵌入式開發(fā) ? 2022-12-30 16:20 ? 次閱讀

問題:

該問題由某客戶提出,發(fā)生在 STM32F103VDT6 器件上。據(jù)其工程師講述:在其產(chǎn)品的設(shè)計(jì)中,STM32 的 HSE 外接 8MHz 的晶體產(chǎn)生振蕩,然后通過 STM32 內(nèi)部的PLL 倍頻到 72MHz,作為 STM32 的系統(tǒng)時(shí)鐘,驅(qū)動(dòng)芯片工作。在 STM32 片外有專用的看門狗芯片,監(jiān)控 STM32 的運(yùn)行。STM32 內(nèi)部的軟件會(huì)在 STM32 的某個(gè)管腳上產(chǎn)生脈沖來復(fù)位看門狗。一旦 STM32 沒有及時(shí)的產(chǎn)生脈沖來復(fù)位門狗,則看門狗會(huì)認(rèn)為 STM32 運(yùn)行不正常,從而復(fù)位 STM32。在對(duì)該產(chǎn)品做可靠性測(cè)試時(shí),進(jìn)行了對(duì)看門狗監(jiān)控時(shí)鐘失效能力的測(cè)試。測(cè)試的方法是:將 HSE 外接的晶體的兩個(gè)端子接地,使其停止振蕩,從而驗(yàn)證看門狗能否做出對(duì) STM32 的做出復(fù)位動(dòng)作。試驗(yàn)結(jié)果表明,看門狗沒有產(chǎn)生復(fù)位動(dòng)作。進(jìn)一步測(cè)試發(fā)現(xiàn),STM32 在失效情況下仍在向看門狗發(fā)送復(fù)位脈沖。

調(diào)研:

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

40e426d8-8805-11ed-bfe3-dac502259ad0.jpg

40f6e1e2-8805-11ed-bfe3-dac502259ad0.jpg

通過調(diào)試器觀察寄存器 RCC_CFGR 中的 SWS 控制控制位,其值為[10],說明此時(shí)的系統(tǒng)時(shí)鐘確實(shí)來自 PLL 的輸出。

從 STM32F103VD 的數(shù)據(jù)手冊(cè)中查找 PLL 相關(guān)的參數(shù)如表(一):

4111db5a-8805-11ed-bfe3-dac502259ad0.png

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

413206d2-8805-11ed-bfe3-dac502259ad0.png

得出“輸入信號(hào)頻率為零時(shí),輸出信號(hào)頻率也為零”這樣的結(jié)論。這一點(diǎn)與實(shí)測(cè)的結(jié)果相吻合。

結(jié)論:

STM32 的 PLL 在沒有輸入信號(hào)的情況下,仍能維持在最低的頻點(diǎn)處振蕩,產(chǎn)生輸出。以至,CPU 及其它外設(shè)仍能在 PLL 送出的時(shí)鐘的驅(qū)動(dòng)下運(yùn)行。所以,通過判斷有無時(shí)鐘來驅(qū)動(dòng) CPU 執(zhí)行指令的方式來判斷 HSE 是否失效是行不通的。

處理:

對(duì)軟件做如下修改:

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

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

開啟 CSS 功能后,當(dāng) HSE 失效時(shí),STM32 會(huì)自動(dòng)開啟 HSI,并將系統(tǒng)時(shí)鐘的來源切換到HSI 的輸出,同時(shí)產(chǎn)生 NMI 中斷。這樣,程序的流程將停留在 NMI 中而不能產(chǎn)生復(fù)位片外的看門狗的脈沖。當(dāng)片外看門狗溢出后,就會(huì)復(fù)位 STM32,使其恢復(fù)到正常駐的狀。

建議:

STM32 中的 CSS 功能是專門為檢測(cè)和處理 HSE 失效而設(shè)計(jì)的。但該功能在 STM32 復(fù)位后是被禁止的,須要軟件對(duì)其使能才會(huì)發(fā)揮作用。當(dāng) CSS 單元檢測(cè)到 HSE 失效時(shí),它會(huì)使能 HSI,并將系統(tǒng)時(shí)鐘切換到 HSI。同時(shí),它會(huì)關(guān)閉 HSE,如果 PLL 的輸入信號(hào)來自 HSE的輸出,它也會(huì)關(guān)閉 PLL。CSS 單元在做時(shí)鐘調(diào)整的同時(shí),也會(huì)產(chǎn)生一個(gè) NMI 中斷請(qǐng)求,和一個(gè)送給高級(jí)定時(shí)器的剎車信號(hào)。NMI 中斷請(qǐng)求會(huì)產(chǎn)生一個(gè) NMI 中斷,以便用戶程序可以在中斷服務(wù)程序中做緊急處理,而剎車信號(hào)則是使高級(jí)定時(shí)器進(jìn)入剎車狀態(tài),以防止由其控制的電機(jī)驅(qū)動(dòng)橋臂由于失去控制而過流。用戶程序可以在 NMI 中斷服務(wù)程序中嘗試恢復(fù) HSE 及 PLL 的功能,也可以使用陷阱讓程序的流程停留在服務(wù)程序中,從而等待看門狗復(fù)位整個(gè)系統(tǒng)。

418658b8-8805-11ed-bfe3-dac502259ad0.jpg

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 看門狗
    +關(guān)注

    關(guān)注

    10

    文章

    566

    瀏覽量

    70947
  • STM32
    +關(guān)注

    關(guān)注

    2272

    文章

    10923

    瀏覽量

    357559
  • pll
    pll
    +關(guān)注

    關(guān)注

    6

    文章

    781

    瀏覽量

    135332
  • 時(shí)鐘
    +關(guān)注

    關(guān)注

    11

    文章

    1746

    瀏覽量

    131799

原文標(biāo)題:時(shí)鐘失效之后,STM32還能運(yùn)行?

文章出處:【微信號(hào):c-stm32,微信公眾號(hào):STM32嵌入式開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    STM32F1系列單片機(jī)的時(shí)鐘系統(tǒng)

      這是stm32時(shí)鐘系統(tǒng),時(shí)鐘與單片機(jī)的關(guān)系就好比心臟與人的關(guān)系一樣,它為單片機(jī)的運(yùn)行提供時(shí)間基準(zhǔn)。STM32F1系列單片機(jī)的
    發(fā)表于 03-23 17:44 ?2976次閱讀
    <b class='flag-5'>STM32</b>F1系列單片機(jī)的<b class='flag-5'>時(shí)鐘</b>系統(tǒng)

    晶振損壞了,STM32還能正常運(yùn)行?

    晶振損壞了,STM32還能正常運(yùn)行?
    的頭像 發(fā)表于 09-21 17:10 ?933次閱讀
    晶振損壞了,<b class='flag-5'>STM32</b><b class='flag-5'>還能</b>正常<b class='flag-5'>運(yùn)行</b>?

    STM32MP135裸機(jī)開發(fā)程序掉電之后還能運(yùn)行嗎?

    目前是直接使用STM32CubeIDE下載在SYSRAM 中運(yùn)行的,請(qǐng)問ST的大佬們, 1、可否通過把應(yīng)用程序放在SD卡或者EMMC中,然后復(fù)位之后,程序再加載到SYSRAM或在DDR中運(yùn)行
    發(fā)表于 03-11 07:39

    RCC系統(tǒng)時(shí)鐘stm32例程

    關(guān)于RCC系統(tǒng)時(shí)鐘stm32例程是一個(gè)完整的程序,可以運(yùn)行
    發(fā)表于 12-07 14:33 ?16次下載

    STM32時(shí)鐘

    STM32時(shí)鐘配置的總結(jié)
    發(fā)表于 01-14 11:05 ?3次下載

    為什么時(shí)鐘失效后CPU還在運(yùn)行?

    據(jù)其工程師講述:在其產(chǎn)品的設(shè)計(jì)中,STM32 的 HSE 外接 8MHz 的晶體產(chǎn)生振蕩,然后通過 STM32 內(nèi)部的PLL 倍頻到 72MHz,作為 STM32 的系統(tǒng)時(shí)鐘,驅(qū)動(dòng)芯片
    的頭像 發(fā)表于 08-29 17:42 ?6554次閱讀
    為什么<b class='flag-5'>時(shí)鐘</b><b class='flag-5'>失效</b>后CPU還在<b class='flag-5'>運(yùn)行</b>?

    STM32F10x常見的應(yīng)用講解分析概述

    STM32作為一個(gè)可靠穩(wěn)定的微處理器,但是不能排除由于某些外界特殊因素可能造成STM32的外部振蕩器失效,所以在芯片中需要一種包含機(jī)制能夠在STM32
    發(fā)表于 10-25 15:35 ?2次下載
    <b class='flag-5'>STM32</b>F10x常見的應(yīng)用講解分析概述

    STM32F10x單片機(jī)的常見應(yīng)用分析

    STM32作為一個(gè)可靠穩(wěn)定的微處理器,但是不能排除由于某些外界特殊因素可能造成STM32的外部振蕩器失效,所以在芯片中需要一種包含機(jī)制能夠在STM32
    發(fā)表于 12-10 08:00 ?4次下載
    <b class='flag-5'>STM32</b>F10x單片機(jī)的常見應(yīng)用分析

    時(shí)鐘失效STM32還能運(yùn)行是什么情況

    72MHz,作為 STM32 的系統(tǒng)時(shí)鐘,驅(qū)動(dòng)芯片工作。在 STM32 片外有專用的看門狗芯片,監(jiān)控 STM32運(yùn)行。
    的頭像 發(fā)表于 10-29 17:58 ?3109次閱讀
    <b class='flag-5'>時(shí)鐘</b><b class='flag-5'>失效</b>后<b class='flag-5'>STM32</b><b class='flag-5'>還能</b><b class='flag-5'>運(yùn)行</b>是什么情況

    STM32移植到GD32,將內(nèi)部時(shí)鐘切換為外部時(shí)鐘后無法運(yùn)行的問題分析

    1. 前言作者之前用過GD32芯片,也成功移植過STM32代碼到GD32芯片,但最近移植一份STM32代碼到GD32后運(yùn)行的時(shí)候發(fā)現(xiàn)一個(gè)問題:使用內(nèi)部時(shí)鐘時(shí)一切正常,一旦切換為使用外部
    發(fā)表于 12-02 15:36 ?17次下載
    <b class='flag-5'>STM32</b>移植到GD32,將內(nèi)部<b class='flag-5'>時(shí)鐘</b>切換為外部<b class='flag-5'>時(shí)鐘</b>后無法<b class='flag-5'>運(yùn)行</b>的問題分析

    STM32學(xué)習(xí)筆記--時(shí)鐘系統(tǒng)

    ,它們工作的核心都是大規(guī)模的時(shí)序邏輯電路,而驅(qū)動(dòng)電路的關(guān)鍵則是準(zhǔn)確而且穩(wěn)定的時(shí)鐘源。時(shí)鐘為時(shí)序電路提供基本的脈沖信號(hào),用于協(xié)調(diào)和同步各單元運(yùn)行。? 51單片機(jī)不需要配置時(shí)鐘,是因?yàn)橐粋€(gè)
    發(fā)表于 12-05 19:51 ?13次下載
    <b class='flag-5'>STM32</b>學(xué)習(xí)筆記--<b class='flag-5'>時(shí)鐘</b>系統(tǒng)

    STM32CubeMX | 基于STM32使用HAL庫(kù)驅(qū)動(dòng)RTC時(shí)鐘及鬧鐘功能

    STM32使用HAL庫(kù)驅(qū)動(dòng)RTC時(shí)鐘及鬧鐘功能目錄STM32使用HAL庫(kù)驅(qū)動(dòng)RTC時(shí)鐘及鬧鐘功能(一)工程配置(二)代碼編寫(三)運(yùn)行效果本
    發(fā)表于 12-06 09:21 ?52次下載
    <b class='flag-5'>STM32</b>CubeMX | 基于<b class='flag-5'>STM32</b>使用HAL庫(kù)驅(qū)動(dòng)RTC<b class='flag-5'>時(shí)鐘</b>及鬧鐘功能

    【自學(xué)筆記】STM32時(shí)鐘系統(tǒng)詳解

    什么是時(shí)鐘?? 時(shí)鐘是單片機(jī)運(yùn)行的基礎(chǔ),時(shí)鐘信號(hào)推動(dòng)單片機(jī)內(nèi)各個(gè)部分執(zhí)行相應(yīng)的指令。時(shí)鐘系統(tǒng)就是CPU的脈搏,決定CPU速率。片機(jī)有了
    發(fā)表于 12-09 13:21 ?11次下載
    【自學(xué)筆記】<b class='flag-5'>STM32</b><b class='flag-5'>時(shí)鐘</b>系統(tǒng)詳解

    STM32入門系列-STM32時(shí)鐘系統(tǒng),STM32時(shí)鐘

    時(shí)鐘對(duì)于單片機(jī)來說是非常重要的,它為單片機(jī)工作提供一個(gè)穩(wěn)定的機(jī)器周期從而使系統(tǒng)能夠正常運(yùn)行。時(shí)鐘系統(tǒng)猶如人的心臟,一旦有問題整個(gè)系統(tǒng)就崩潰。我們知道STM32屬于高級(jí)單片機(jī),其內(nèi)部有很
    發(fā)表于 01-17 11:22 ?6次下載
    <b class='flag-5'>STM32</b>入門系列-<b class='flag-5'>STM32</b><b class='flag-5'>時(shí)鐘</b>系統(tǒng),<b class='flag-5'>STM32</b><b class='flag-5'>時(shí)鐘</b>樹

    時(shí)鐘失效之后,STM32還能運(yùn)行?

    STM32片外有專用的看門狗芯片,監(jiān)控STM32運(yùn)行。STM32內(nèi)部的軟件會(huì)在STM32的某個(gè)管腳上產(chǎn)生脈沖來復(fù)位看門狗。
    發(fā)表于 02-08 15:19 ?0次下載
    <b class='flag-5'>時(shí)鐘</b><b class='flag-5'>失效</b><b class='flag-5'>之后</b>,<b class='flag-5'>STM32</b><b class='flag-5'>還能</b><b class='flag-5'>運(yùn)行</b>?
    百家乐官网社区| 澳门百家乐官网海洋阿强| 百家乐10个人| 蓝盾百家乐官网庄家利润分| 红河县| 威尼斯人娱乐开户送18| 网上百家乐分析软件| 百家乐官网真人荷官网| 百家乐官网对子计算方法| 大发888娱乐城都有啥扑克牌游戏 大发888大发888娱乐城 | 电脑百家乐的玩法技巧和规则| 百家乐玩家技巧分享| 天天百家乐官网的玩法技巧和规则 | 威尼斯人娱乐城 2013十一月九问好| 网络百家乐投注| 百家乐官网娱乐城体验金| 使用的百家乐官网软件| 百家乐官网园小区户型图| 独山县| 大发扑克网址| 太阳城娱乐网可信吗| 百家乐游戏作弊| 百家乐平台哪个好本站所有数据都是网友推荐及提供 | 大家赢百家乐投注| 澳门百家乐官网怎么下载| 百家乐官网真人游戏娱乐网| 百家乐官网庄河闲的赌法| 宁安市| 在线真人娱乐城| 棋牌游戏平台有哪些| 大发888新澳博| 百家乐77scs| 百苑百家乐的玩法技巧和规则| 澳门百家乐开户投注| 百家乐棋牌技巧| 免费百家乐官网计划| 牌九百家乐官网的玩法技巧和规则| 去澳门百家乐官网娱乐城| 至尊百家乐官网贺一航| 百家乐官网有真假宝单吗| 百家乐官网出庄概率|