亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

標題: STM32F1xx使用中出現的一個Hardfault錯誤 [打印本頁]

作者: liumei    時間: 2014-5-7 03:29
標題: STM32F1xx使用中出現的一個Hardfault錯誤
現象:

     日前,在使用STM32F103C8時,分boot區和application區,以便進行升級,boot配置為48M,application配置為66M,發現在環境溫度上升到60多度后,產生了Hardfault錯誤。

分析:懷疑是取指問題。

定位:1、將application配置為48M后,問題消失。

2、配置boot、application均為66M,問題重現。

3、再重新配置為24M,問題消失。

4、去掉boot,僅留application,一直配置為24M\48M\66M,發現在66M時問題重現。

5、懷疑為系統頻率PLL配置為題。

6、對源代碼的系統時鐘配置函數進行檢查。AHB,APH1,APH2對照手冊,為發現問題,查詢到

   FLASH->ACR ,發現手冊里要求0~24M為0等待;24~48M為1個等待狀態;48M為兩個等待狀態。

發現代碼的等待狀態為1個等待狀態,重新配置:

  if (HSE_VALUE <= 24000000)
{
      FLASH->ACR |= (uint32_t)FLASH_ACR_LATENCY_0;
}
else
{
      FLASH->ACR |= (uint32_t)FLASH_ACR_LATENCY_1;

}

7、驗證,發現問題解決。



另外一個問題,從application跳轉到boot后,進行application升級后,發現ADC等外設訪問出錯:

問題所在:在進行軟件跳轉前需要把ADC\SPI等外設disable掉。





歡迎光臨 (http://www.denmoz.com/bbs/) Powered by Discuz! X3.1