99久久亚洲女同一区二区_国产成人亚洲欧美二区综_中国精品一级毛片免费播放_午夜福利深夜XX00视频无卡顿_动漫人物打扑克牌又疼又叫_中午字幕在线播放_深夜福利网站在线_国产成人免费福利网站_欧美成年黄网站色高清视频_欧美色黄禁片短视频

固話:0592-8011678 熱線:13306028255 客服 :
 

單片機(jī)

STM32 關(guān)于復(fù)位類型的判斷及軟件復(fù)位

分類:單片機(jī) 發(fā)布:2019-03-20 10:47:17 瀏覽:473次 Tag:

要想查看復(fù)位情況可以使用:
//******************************************************************************
// 函數(shù)名稱: RCC_GetFlagStatus
// 功能描述: 檢查指定的RCC標(biāo)志設(shè)置與否.
// 輸入?yún)?shù): RCC_FLAG:要檢查的標(biāo)志.
//                    這個(gè)參數(shù)可以是下面的值之一:
//                       - RCC_FLAG_HSIRDY: HIS振蕩時(shí)鐘就緒
//                       - RCC_FLAG_HSERDY: HSE振蕩時(shí)鐘就緒
//                       - RCC_FLAG_PLLRDY: PLL時(shí)鐘就緒
//                       - RCC_FLAG_LSERDY: LSE振蕩時(shí)鐘就緒
//                       - RCC_FLAG_LSIRDY: LSI振蕩時(shí)鐘就緒
//                       - RCC_FLAG_PINRST: 引腳復(fù)位
//                       - RCC_FLAG_PORRST: POR/PDR復(fù)位
//                       - RCC_FLAG_SFTRST: 軟件復(fù)位
//                       - RCC_FLAG_IWDGRST: 獨(dú)立看門狗復(fù)位
//                       - RCC_FLAG_WWDGRST: 窗口看門狗復(fù)位
//                      - RCC_FLAG_LPWRRST: 低電量復(fù)位
// 輸出參數(shù): 無
// 返回參數(shù): RCC_FLAG的新狀態(tài)(SET或RESET).


FlagStatus RCC_GetFlagStatus(u8 RCC_FLAG)來查看!

而要想軟件產(chǎn)生一個(gè)復(fù)位如下:
在官方軟件庫的stm32f10x_nvic.c 文件里 直接提供了 系統(tǒng)復(fù)位的函數(shù)
 
//*******************************************************************************
* 函數(shù)名稱: NVIC_GenerateSystemReset
* 功能描述: 生成一個(gè)系統(tǒng)復(fù)位.
* 輸入?yún)?shù): 無
* 輸出參數(shù): 無
* 返回參數(shù): 無
*******************************************************************************/
void NVIC_GenerateSystemReset(void)
{
  SCB->AIRCR = AIRCR_VECTKEY_MASK | (u32)0x04;
}
 
 
在Cortex-M3權(quán)威指南中有一個(gè)要注意的問題:從SYSRESETREQ 被置為有效,到復(fù)位發(fā)生器執(zhí)行復(fù)位命令,往往會(huì)有一個(gè)延時(shí)。在此延時(shí)期間,處理器仍然可以響應(yīng)中斷請(qǐng)求。但我們的本意往往是要讓此次執(zhí)行到此為止,不要再做任何其它事情了。所以,最好在發(fā)出復(fù)位請(qǐng)求前,先把FAULTMASK 置位。stm32f10x_nvic.c 文件里也直接提供了該函數(shù)
 
/*******************************************************************************
* 函數(shù)名稱: NVIC_SETFAULTMASK
* 功能描述: 使能FAULTMASK優(yōu)先級(jí):把執(zhí)行的優(yōu)先級(jí)提升為-1.
* 輸入?yún)?shù): 無
* 輸出參數(shù): 無
* 返回參數(shù): 無
*******************************************************************************/
void NVIC_SETFAULTMASK(void)
{
  __SETFAULTMASK();
}
 
所以要系統(tǒng)復(fù)位 只要 調(diào)用這個(gè)函數(shù)就行了
void SystemReset(void )
{
  NVIC_SETFAULTMASK();
  NVIC_GenerateSystemReset();
}


相關(guān)文章
在線留言聯(lián)系我們
電話:0592-8011678
傳真:0592-8011678
聯(lián)系人:王女士
24H熱線:13306028255
聯(lián)系QQ: 656368133
郵箱:656368133@qq.com
網(wǎng)址:633100.cn
QQ在線咨詢
銷售電話:
13306028255
0592-8011678
656368133
掃碼添加微信