STM32F103 ------ 時鍾配置


由於stm32的庫默認是外部晶振8M的情況下實現的,所以配置波特率的時候也是按8M,包括主頻,如果用12M晶振就需要改動幾個地方: 
在system_stm32f10x.c中找到相應類型的文件,進行如下修改。 
1)72M主頻: 
8M時: 
RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL9); 
12M: 
RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL6); 
2)stm32f10x.h中修改: 
*#define HSE_Value ((uint32_t)12000000) /!< Value of the External oscillator in Hz /*

這里寫圖片描述 
這里寫圖片描述

如果調試時遇到串口輸出不正確的時候,可以直接查看stm32的內部時鍾是多少。 
舉例說明: 
/*

*/ 
void RCC_GetClocksFreq(RCC_ClocksTypeDef* RCC_Clocks); 
RCC_ClocksTypeDef ClockInfo; 
int main(void) 

RCC_GetClocksFreq(&ClockInfo);

/* Infinite loop */
  • 1
  • 2

while ( 1 ) 
{

}
  • 1
  • 2


通過觀察ClockInfo這個結構體,可以清楚直觀的看到配置的內部時鍾信息。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM