共有三種類型的復(fù)位,分別為系統(tǒng)復(fù)位、電源復(fù)位和備份域復(fù)位。

系統(tǒng)復(fù)位:
除了時(shí)鐘控制寄存器CSR中的復(fù)位標(biāo)志和備份域中的寄存器外,系統(tǒng)復(fù)位會(huì)將其他全部寄存器都復(fù)位為復(fù)位值。
只要發(fā)生以下事件之一,就會(huì)產(chǎn)生系統(tǒng)復(fù)位:
1.NRST引腳低電平(外部復(fù)位)
2.窗口看門狗計(jì)數(shù)結(jié)束(WWDG復(fù)位)
3.獨(dú)立看門狗計(jì)數(shù)結(jié)束(IWDG復(fù)位)
4.軟件復(fù)位(SW復(fù)位)
5.低功耗管理復(fù)位
軟件復(fù)位:
可通過查看RCC時(shí)鐘控制和狀態(tài)寄存器(RCC_CSR)中的復(fù)位標(biāo)志確定。
要對(duì)器件進(jìn)行軟件復(fù)位,必須將Cortex?-M4F應(yīng)用中斷和復(fù)位控制寄存器中的SYSRESETREQ位置1。
低功耗管理復(fù)位:
引發(fā)低功耗管理復(fù)位的方式有兩種:
1.進(jìn)入待機(jī)模式時(shí)產(chǎn)生復(fù)位:
此復(fù)位的使能方式是清零用戶選項(xiàng)字節(jié)中的nRST_STDBY位。使能后,只要成功執(zhí)行進(jìn)入待機(jī)模式序列,器件就將復(fù)位,而非進(jìn)入待機(jī)模式。
2.進(jìn)入停止模式時(shí)產(chǎn)生復(fù)位:
此復(fù)位的使能方式是清零用戶選項(xiàng)字節(jié)中的nRST_STOP位。使能后,只要成功執(zhí)行進(jìn)入停止模式序列,器件就將復(fù)位,而非進(jìn)入停止模式。
電源復(fù)位:
只要發(fā)生以下事件之一,就會(huì)產(chǎn)生電源復(fù)位:
1.上電/掉電復(fù)位(POR/PDR復(fù)位)或欠壓(BOR)復(fù)位
2.在退出待機(jī)模式時(shí)
這些源均作用于NRST引腳,該引腳在復(fù)位過程中始終保持低電平。RESET復(fù)位入口向量在存儲(chǔ)器映射中固定在地址0x0000_0004。
芯片內(nèi)部的復(fù)位信號(hào)會(huì)在NRST引腳上輸出。脈沖發(fā)生器用于保證最短復(fù)位脈沖持續(xù)時(shí)間,可確保每個(gè)內(nèi)部復(fù)位源的復(fù)位脈沖都至少持續(xù)20μs。對(duì)于外部復(fù)位,在NRST引腳處于低電平時(shí)產(chǎn)生復(fù)位脈沖。
備份域復(fù)位:
備份域復(fù)位會(huì)將所有RTC寄存器和RCC_BDCR寄存器復(fù)位為各自的復(fù)位值。BKPSRAM不受此復(fù)位影響。BKPSRAM的唯一復(fù)位方式是通過Flash接口將Flash保護(hù)等級(jí)從1切換到0。
只要發(fā)生以下事件之一,就會(huì)產(chǎn)生備份域復(fù)位:
1.軟件復(fù)位,通過將RCC備份域控制寄存器(RCC_BDCR)中的BDRST位置1觸發(fā)。
2.在電源VDD和VBAT都已掉電后,其中任何一個(gè)又再上電。
電子發(fā)燒友App













評(píng)論