解决方案

STM32F103——时钟详细介绍

seo靠我 2023-09-25 12:01:26

STM32F103是一款基于ARM Cortex-M3内核的微控制器,它拥有丰富的外设和强大的计算能力,因此被广泛应用于各种嵌入式系统中。在STM32F103中,时钟是一个极其重要的组成部分,它不仅影SEO靠我响着微控制器的性能和功耗,还关系到外设的使用和时序的控制。因此,本文将详细介绍STM32F103的时钟系统,从时钟源、时钟分频、时钟树、PLL锁相环等多个方面进行阐述,以便读者更好地理解和应用STM3SEO靠我2F103。

一、时钟源

STM32F103的时钟源主要有两种,一种是内部RC振荡器(HSI),另一种是外部晶体振荡器(HSE)。其中,HSI振荡器的频率为8MHz,精度为±2%;而HSE振荡器的频率和精SEO靠我度则由外部晶体决定,通常为4MHz或8MHz,精度为±20ppm。在使用时钟源之前,需要先对其进行初始化和配置,具体步骤如下:

1.开启时钟源

在使用时钟源之前,需要先开启时钟源的时钟,即将其所在的时钟总SEO靠我线(RCC)的时钟使能位(RCC_APB2ENR或RCC_APB1ENR)设置为1。例如,要开启HSE振荡器的时钟,需要将RCC_APB2ENR寄存器的位RCC_APB2ENR_SYSCFGEN设置为SEO靠我1。

2.配置时钟源

在开启时钟源的时钟之后,需要对其进行配置,包括时钟源的选择、分频系数和启动时间等。具体配置如下:

(1)选择时钟源

通过将RCC_CFGR寄存器的SW位设置为相应的值,可以选择时钟源,其SEO靠我中0表示选择HSI振荡器,1表示选择HSE振荡器,2表示选择PLL锁相环。

(2)配置分频系数

通过将RCC_CFGR寄存器的相应位设置为分频系数,可以将时钟源的频率分频为所需的频率。例如,将AHB分频系SEO靠我数设置为8,即可将时钟源的频率分频为1/8。

(3)配置启动时间

在使用HSE振荡器时,需要在启动之前等待一定的时间,以便晶体稳定。可以通过将RCC_CFGR寄存器的相应位设置为启动时间,以确保HSE振荡SEO靠我器的启动。

二、时钟分频

STM32F103的时钟分频主要有三种,分别是AHB分频、APB1分频和APB2分频。其中,AHB分频用于控制内核总线的频率,APB1分频和APB2分频则用于控制外设总线的频率。SEO靠我这些分频系数可以通过RCC_CFGR寄存器的相应位进行配置,具体分频系数如下:

(1)AHB分频

AHB分频系数可以设置为1、2、4、8、16、64、128或256。其中,AHB分频系数为1时,内核总线的SEO靠我频率等于时钟源的频率;AHB分频系数为2时,内核总线的频率等于时钟源的频率除以2,以此类推。

(2)APB1分频

APB1分频系数可以设置为1、2、4或8。其中,APB1分频系数为1时,外设总线的频率等于SEO靠我AHB总线的频率;APB1分频系数为2时,外设总线的频率等于AHB总线的频率除以2,以此类推。

(3)APB2分频

APB2分频系数可以设置为1、2、4或8。其中,APB2分频系数为1时,外设总线的频率等SEO靠我于AHB总线的频率;APB2分频系数为2时,外设总线的频率等于AHB总线的频率除以2,以此类推。

三、时钟树

STM32F103的时钟树包括HSI、HSE、PLL和各种分频器,其结构如下图所示:

其中,HSSEO靠我I振荡器和HSE振荡器是时钟源,PLL是锁相环,AHB、APB1和APB2是总线。时钟树中的各个分频器可以通过RCC_CFGR寄存器的相应位进行配置,以达到所需的时钟频率。

四、PLL锁相环

PLL锁相环SEO靠我是STM32F103中的一个重要组成部分,它可以将时钟源的频率倍频,以提高微控制器的运行速度。PLL锁相环的输入时钟可以是HSI振荡器或HSE振荡器,其输出时钟的频率可以通过倍频系数进行设置。具体使用SEO靠我PLL锁相环的步骤如下:

1.开启PLL时钟

在使用PLL锁相环之前,需要先开启PLL时钟的时钟,即将RCC_CR寄存器的PLLON位设置为1。

2.配置PLL时钟源

在开启PLL时钟之后,需要对其进行配置,SEO靠我包括PLL时钟源、倍频系数和分频系数等。具体配置如下:

(1)选择PLL时钟源

通过将RCC_CFGR寄存器的PLLSRC位设置为相应的值,可以选择PLL时钟源,其中0表示选择HSI振荡器,1表示选择HSSEO靠我E振荡器。

(2)配置PLL倍频系数

通过将RCC_CFGR寄存器的PLLMUL位设置为相应的值,可以将PLL时钟的频率倍频为所需的频率。例如,将PLLMUL设置为9,即可将PLL时钟的频率倍频为9倍。

SEO靠我3)配置PLL分频系数

在PLL时钟输出之前,需要先将其分频为所需的频率。可以通过将RCC_CFGR寄存器的相应位设置为分频系数,以将PLL时钟的频率分频为所需的频率。例如,将AHB分频系数设置为2,即SEO靠我可将PLL时钟的频率分频为1/2。

3.配置系统时钟

在配置完PLL时钟之后,需要将系统时钟选择为PLL时钟,以使其生效。可以通过将RCC_CFGR寄存器的SW位设置为2,以选择PLL时钟作为系统时钟。

SEO靠我、总结

本文对STM32F103的时钟系统进行了详细的介绍,包括时钟源、时钟分频、时钟树、PLL锁相环等多个方面。其中,时钟源是时钟系统的基础,时钟分频是控制时钟频率的关键,时钟树是时钟系统的核心,PLSEO靠我L锁相环则是提高微控制器性能的重要手段。通过对时钟系统的深入了解和灵活应用,可以提高STM32F103的性能和可靠性,从而更好地满足嵌入式系统的需求。

“SEO靠我”的新闻页面文章、图片、音频、视频等稿件均为自媒体人、第三方机构发布或转载。如稿件涉及版权等问题,请与 我们联系删除或处理,客服邮箱:html5sh@163.com,稿件内容仅为传递更多信息之目的,不代表本网观点,亦不代表本网站赞同 其观点或证实其内容的真实性。

网站备案号:浙ICP备17034767号-2