当前位置:首页 > 问问

stm32中的时钟有什么用 使用STM32的时钟有何作用

1、stm32中的时钟概述

时钟作为数字系统中重要的基础组件,主要用来提供系统内部各个模块间同步、控制数据传输的时序、同步等功能。在stm32中,时钟是非常重要的,它负责驱动各种外设的工作以及CPU的运行。为了避免每个外设设计时需要独立一套时钟,stm32采用了一种全新的时钟架构,可以为每个外设提供专用的时钟源。以下将从时钟来源、时钟分配、时钟源选择三个方面进行详细阐述。

2、时钟来源

STM32系列的芯片,提供了内部和外部时钟源两种时钟来源。其中内部时钟源包含HSI和LSI的时钟源,外部时钟源包含HSE、LSE和PLL等多种选择。

HSI时钟源—高速内部时钟,频率为8MHz,主要用于提供芯片的时钟源。

LSI时钟源—低速内部时钟,频率为40kHz,主要用于RTC(实时时钟)模块。

HSE时钟源—高速外部时钟,是12M~25M的晶振时钟源,为实现更高的性能而存在。同时它也可以通过PLL倍频来得到高速时钟源。

LSE时钟源—低速外部时钟,频率为32.768kHz,主要用于RTC模块。

3、时钟分配

时钟的分配是由RCC(Reset and Clock Control)模块完成的,通过配置RCC模块,控制各个模块使用什么时钟源进行工作,它能够提供多个时钟源,使得每个模块都能够使用自己的时钟源,而不会相互干扰。此外,RCC还可以提供额外的时钟输出,供外部设备使用。

时钟的分配可以通过四个时钟域来完成:AHB1、AHB2、APB1和APB2,每个域拥有独立的时钟源分频器,能够针对不同性能和功耗的应用进行优化。

4、时钟源选择

时钟源的选择取决于芯片的主频和内部外设使用情况,当时钟源不能满足应用要求时,需要选择合适的时钟源。例如,在使用CAN通信时,需要选择外部高速时钟源,而在使用I2C时,LSI时钟源可能会更加适用。

同时,为了避免出现一些特殊问题,建议选择PLL作为时钟倍频器源时,应该预先检查时钟源的有效性,以避免频率超过限制导致系统挂起。

以上就是对stm32中时钟的介绍,相信大家对于时钟的作用和使用方法已经有了一定的认识。

声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:fendou3451@163.com
标签:

  • 关注微信

相关文章