在微控制器中,STM32F103功能强大,应用广泛,要想确保STM32F103的系统稳定运行及性能优化,其时钟系统的配置更是不可缺少,所以如何配置?
1、时钟源的选择
HSI:内部RC振荡器,频率为8MHz,适用于对时钟频率精度要求不高或产品体积较小的场合。
HSE:外部晶振,通常速度为8MHz,通过外部电路提供,具有较高的精度和稳定性。
LSI:内部RC振荡器,频率为40kHz,主要用于看门狗等低速外设。
LSE:外部晶振,频率为32.768kHz,主要用于RTC(实时时钟)等低速外设。
2、系统时钟设置
①选择时钟源
SYSCLK可以选择HSI、HSE或PLLCLK作为时钟源。其中,PLLCLK是经过锁相环(PLL)倍频后的时钟信号,可以提供更高的时钟频率。
若选择HSI作为时钟源,系统时钟最大频率为64MHz(HSI/2*16)。
若选择HSE作为时钟源,系统时钟最大频率为72MHz(HSE*PLL倍频系数)。
②设置时钟频率
通过配置时钟配置寄存器(CFGR)中的相关位,可以设置系统时钟的频率。例如,选择HSE作为时钟源,并通过PLL倍频到72MHz,需要配置PLL的输入时钟源、倍频系数等参数。
3、外设时钟配置
AHB总线时钟(HCLK):由系统时钟SYSCLK分频得到,通常不分频,以保持最大时钟频率。
APB1总线时钟(PCLK1):由HCLK分频得到,最大频率为36MHz。APB1总线上的外设包括看门狗、定时器、RTC、USART等。
APB2总线时钟(PCLK2):由HCLK分频得到,但通常不分频,以保持与HCLK相同的频率。APB2总线上的外设包括ADC、DAC、SPI、I2C等。
4、具体配置步骤
打开外部高速时钟HSE,并等待其稳定。
配置PLL时钟源和倍频系数,使能PLL,并等待其准备就绪。
设置AHB总线时钟HCLK的分频系数(通常不分频)。
设置APB1总线时钟PCLK1的分频系数(如2分频,得到36MHz)。
设置APB2总线时钟PCLK2的分频系数(通常不分频)。
选择PLLCLK作为系统时钟SYSCLK的时钟源。
验证系统时钟是否设置正确。
本文凡亿教育原创文章,转载请注明来源!