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

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

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

STM32F4描述系統(tǒng)和電源復(fù)位的原因

科技綠洲 ? 來(lái)源:STM32 ? 作者:STM32 ? 2023-06-22 09:04 ? 次閱讀

每一塊處理器都有復(fù)位的功能,不同處理器復(fù)位的類(lèi)型可能有差異,引起復(fù)位的原因也可能有多種。

STM32的復(fù)位功能非常強(qiáng)大,可通過(guò)軟件、硬件和一些事件觸發(fā)系統(tǒng)復(fù)位,而且通過(guò)其復(fù)位狀態(tài)標(biāo)志可分析復(fù)位原因。該部分位于STM32的RCC(Reset and Clock Control)模塊。

嵌入式專(zhuān)欄

1

STM32復(fù)位介紹

對(duì)于STM32來(lái)說(shuō),復(fù)位通常分為三種類(lèi)型:系統(tǒng)復(fù)位、電源復(fù)位和備份域復(fù)位。本文結(jié)合STM32F4描述系統(tǒng)和電源復(fù)位的內(nèi)容。

1. 系統(tǒng)復(fù)位

除了RCC的復(fù)位標(biāo)志和備份域中的寄存器外,系統(tǒng)復(fù)位會(huì)將其它全部寄存器都復(fù)位為復(fù)位值。

產(chǎn)生系統(tǒng)復(fù)位事件:

NRST 引腳低電平

窗口看門(mén)狗計(jì)數(shù)結(jié)束

獨(dú)立看門(mén)狗計(jì)數(shù)結(jié)束

軟件復(fù)位

低功耗管理復(fù)位

2. 電源復(fù)位

除備份域內(nèi)的寄存器以外,電源復(fù)位會(huì)將其它全部寄存器設(shè)置為復(fù)位值。

產(chǎn)生電源復(fù)位條件:

上電/掉電復(fù)位或欠壓復(fù)位

在退出待機(jī)模式時(shí)

注:備份域具有特定的復(fù)位,其復(fù)位僅作用于備份域本身(本文暫不講述備份域復(fù)位)。

3. 復(fù)位電路簡(jiǎn)圖


poYBAGSNeByAdQTgAACqQM5U_2E662.png

由上圖可以看出來(lái),NRST引腳、看門(mén)狗等各種事件最終都能引起系統(tǒng)復(fù)位。

嵌入式專(zhuān)欄

2

STM32 內(nèi)核和系統(tǒng)復(fù)位

上一章節(jié)站在STM32整體層面講述了產(chǎn)生復(fù)位的多種事件,本章節(jié)進(jìn)一步描述STM32的內(nèi)核和系統(tǒng)復(fù)位。

STM32由內(nèi)核(如:Cortex-M4)和各種片內(nèi)外設(shè)(如UART)資源組成,其中軟件復(fù)位可指定是內(nèi)核復(fù)位還是系統(tǒng)復(fù)位。


poYBAGSNeBSANfe8AAJr_3ZM3ZY890.png

1. 內(nèi)核復(fù)位

在Cortex-M內(nèi)核文檔中大概有這樣的描述:通過(guò)設(shè)置 NVIC 中應(yīng)用程序中斷與復(fù)位控制寄存器(AIRCR)的VECTRESET 位,可只復(fù)位處理器內(nèi)核而不復(fù)位其它片上設(shè)施。

也就是說(shuō),這樣操作只復(fù)位Cortex-M內(nèi)核,不會(huì)復(fù)位UART這些片內(nèi)外設(shè)。

內(nèi)核復(fù)位函數(shù)(參考內(nèi)核代碼修改而來(lái)):

void NVIC_CoreReset(void)

2. 系統(tǒng)復(fù)位

軟件復(fù)位中的系統(tǒng)復(fù)位操作的寄存器位(SYSRESETREQ)不同,復(fù)位的對(duì)象為整個(gè)芯片(除后備區(qū)域)。

系統(tǒng)復(fù)位函數(shù):

void NVIC_SysReset(void)

嵌入式專(zhuān)欄

3

STM32 復(fù)位來(lái)源

為了方便軟件工程師調(diào)試和查找(復(fù)位)問(wèn)題,STM32設(shè)計(jì)有個(gè)狀態(tài)寄存器保存了各種復(fù)位來(lái)源的狀態(tài)。

如下圖所示(具體請(qǐng)查閱參考手冊(cè)):


pYYBAGSNeASAXGUQAAtLYLj2NB4360.png

4

STM32 引起異常復(fù)位的原因

上面講述了引起復(fù)位的事件有多種,本章節(jié)將結(jié)合實(shí)際應(yīng)用,描述常見(jiàn)引起復(fù)位的原因及解決辦法。

原因一:NRST引腳電平被拉低引起復(fù)位

有些特殊環(huán)境,特別是大型工廠,外界或內(nèi)部會(huì)使電源產(chǎn)生干擾信號(hào),使STM32的NRST引腳電平被拉低,從而導(dǎo)致系統(tǒng)復(fù)位。

分析原因:NRST引腳電平拉低20us就會(huì)引起系統(tǒng)復(fù)位,電源上一個(gè)紋波,或者外部靜電都會(huì)引起電源被拉低20us。

解決辦法:電源濾波、使用隔離電源、添加屏蔽措施等。

原因二:欠壓引起復(fù)位

有些產(chǎn)品在設(shè)計(jì)之初沒(méi)有綜合計(jì)算負(fù)載(與STM32同電源),因負(fù)載過(guò)大,使其欠壓,從而導(dǎo)致復(fù)位。

分析原因:STM32除了上電和掉電復(fù)位之外,絕大部分STM32還有一個(gè)欠壓復(fù)位,當(dāng)電源電壓 (VDD) 降至所選 VBOR 閾值以下時(shí),芯片將復(fù)位。

解決辦法:選擇負(fù)載更大的電源、通過(guò)軟件配置合理的欠壓值VBOR。

原因三:數(shù)字、模擬電源地壓差引起復(fù)位

有工程師將VSS 和 VSSA之間使用一個(gè)幾歐,甚至幾十歐的電阻連接,有時(shí)候(有大電流經(jīng)過(guò)地線(xiàn))就會(huì)因?yàn)殡娫吹氐膲翰顚?dǎo)致芯片(電源)復(fù)位。

分析原因:我們比較關(guān)注 VDD 和 VDDA 的關(guān)系,但忽略了 VSSA 和 VSS 壓差需要小于 50mV這一點(diǎn)(具體可以看數(shù)據(jù)手冊(cè))。如果有大電流的情況,則會(huì)引起電源地存在壓差。

解決辦法:盡量使用完全連接地的方式處理,比如0歐電阻,或者隔離電源。

原因四:看門(mén)狗超時(shí)喂狗引起復(fù)位

有不少工程師設(shè)計(jì)低功耗產(chǎn)品時(shí),使用了看門(mén)狗,但是他們往往忘記了芯片睡眠模式不能停止喂狗,從而導(dǎo)致看門(mén)狗復(fù)位。

分析原因:STM32進(jìn)入睡眠之后,看門(mén)狗依然繼續(xù)在工作,如果不及時(shí)喂狗,芯片會(huì)產(chǎn)生看門(mén)狗復(fù)位。

解決辦法:進(jìn)入睡眠之前設(shè)置更長(zhǎng)的喂狗時(shí)間,同時(shí)不定期喚醒芯片進(jìn)行喂狗。
責(zé)任編輯:彭菁

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

    關(guān)注

    455

    文章

    50851

    瀏覽量

    424000
  • STM32
    +關(guān)注

    關(guān)注

    2270

    文章

    10901

    瀏覽量

    356230
  • 隔離電源
    +關(guān)注

    關(guān)注

    6

    文章

    282

    瀏覽量

    36311
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于Cortex-M4STM32F4復(fù)位序列

    7是基于Cortex-M7內(nèi)核,而Cortex-M7和Cortex-M3/M4復(fù)位序列有些不一樣。本文中,將針對(duì)這個(gè)問(wèn)題做詳細(xì)講解。 STM32F4復(fù)位序列
    的頭像 發(fā)表于 02-16 06:14 ?5180次閱讀
    基于Cortex-M<b class='flag-5'>4</b>的<b class='flag-5'>STM32F4</b>的<b class='flag-5'>復(fù)位</b>序列

    STM32F4 LWIP開(kāi)發(fā)手冊(cè)

    STM32F4 LWIP開(kāi)發(fā)手冊(cè) STM32F4 教程 STM32F4芯片 pdf
    發(fā)表于 11-26 11:09 ?67次下載

    STM32F7與STM32F4復(fù)位序列比較

    STM32F7與STM32F4復(fù)位序列比較
    發(fā)表于 12-08 11:52 ?0次下載

    STM32F4

    STM32F4最小系統(tǒng)及外圍電路原理圖。。。
    發(fā)表于 05-10 17:06 ?31次下載

    STM32F4系列簡(jiǎn)單簡(jiǎn)介

    STM32F4系列簡(jiǎn)單簡(jiǎn)介
    發(fā)表于 09-29 15:16 ?21次下載
    <b class='flag-5'>STM32F4</b>系列簡(jiǎn)單簡(jiǎn)介

    STM32F4 簡(jiǎn)介

    介紹STM32F4芯片
    發(fā)表于 01-25 15:28 ?23次下載

    STM32F4復(fù)位序列對(duì)比STM32F7的復(fù)位序列

    STM32F4基于Cortex-M4。對(duì)于基于Cortex-M3/M4的芯片,復(fù)位后總是從0x00000000地址處,取主堆棧指針(MSP)的值,從0x00000004處,取出PC的初
    的頭像 發(fā)表于 01-18 16:44 ?3119次閱讀

    STM32F4 PWM-DAC實(shí)驗(yàn)例程

    STM32F4 PWM-DAC實(shí)驗(yàn)例程(電源技術(shù)是sci嗎)-STM32F4 PWM-DAC實(shí)驗(yàn)例程,有需要的可以參考!
    發(fā)表于 09-16 10:14 ?43次下載
    <b class='flag-5'>STM32F4</b> PWM-DAC實(shí)驗(yàn)例程

    STM32F4 DAC數(shù)模轉(zhuǎn)換實(shí)驗(yàn)例程

    STM32F4 DAC數(shù)模轉(zhuǎn)換實(shí)驗(yàn)例程(現(xiàn)代電源技術(shù)試卷西建大)-STM32F4 DAC數(shù)模轉(zhuǎn)換實(shí)驗(yàn)例程,有需要的可以參考!
    發(fā)表于 09-16 10:18 ?40次下載
    <b class='flag-5'>STM32F4</b> DAC數(shù)模轉(zhuǎn)換實(shí)驗(yàn)例程

    STM32F4 ADC模數(shù)轉(zhuǎn)換實(shí)驗(yàn)例程

    STM32F4 ADC模數(shù)轉(zhuǎn)換實(shí)驗(yàn)例程(深圳市普德新星電源技術(shù)有限公司)-STM32F4 ADC模數(shù)轉(zhuǎn)換實(shí)驗(yàn)例程,有需要的可以參考!
    發(fā)表于 09-16 10:21 ?89次下載
    <b class='flag-5'>STM32F4</b> ADC模數(shù)轉(zhuǎn)換實(shí)驗(yàn)例程

    STM32F4最小系統(tǒng)板的設(shè)計(jì)(轉(zhuǎn)載)

    STM32F4最小系統(tǒng)板的設(shè)計(jì)(轉(zhuǎn)載)
    發(fā)表于 11-17 16:51 ?50次下載
    <b class='flag-5'>STM32F4</b>最小<b class='flag-5'>系統(tǒng)</b>板的設(shè)計(jì)(轉(zhuǎn)載)

    STM32STM32F4時(shí)鐘系統(tǒng)

    00. 目錄文章目錄00. 目錄01. STM32F4時(shí)鐘系統(tǒng)概述02. STM32F4時(shí)鐘系統(tǒng)圖03. STM32F4時(shí)鐘初始化配置04.
    發(fā)表于 11-25 20:06 ?46次下載
    【<b class='flag-5'>STM32</b>】<b class='flag-5'>STM32F4</b>時(shí)鐘<b class='flag-5'>系統(tǒng)</b>

    STM32F4 EMWIN開(kāi)發(fā)手冊(cè)

    STM32F4 EMWIN開(kāi)發(fā)手冊(cè)
    發(fā)表于 07-04 14:54 ?10次下載

    STM32F4 FreeRTOS開(kāi)發(fā)手冊(cè)

    STM32F4 FreeRTOS開(kāi)發(fā)手冊(cè)
    發(fā)表于 07-04 14:53 ?75次下載

    淺談STM32F4的時(shí)鐘系統(tǒng)

      本文將介紹STM32F4的時(shí)鐘系統(tǒng)。
    的頭像 發(fā)表于 04-20 11:47 ?2466次閱讀
    淺談<b class='flag-5'>STM32F4</b>的時(shí)鐘<b class='flag-5'>系統(tǒng)</b>