详读stm32时钟电路

本文详细介绍了STM32F10x单片机的时钟系统,包括各种时钟源(如外部高速时钟HSE、内部时钟MCO、PLL倍频器等)、时钟选择器、监控系统CSS以及分频器的应用,确保系统在不同条件下稳定运行并优化电源消耗。
摘要由CSDN通过智能技术生成

参考博主,此次参考目的为了学习和巩固。STM32F10x 系统时钟详解_单片机的mco有什么用-CSDN博客

1.时钟源电路

1.接在外部总线上的时钟

1.MCO(Microcontroller clock output)内部时钟输出部分,微控制器时钟输出

也就是输出内部时钟,引脚是PA8。时钟输出部分由SYSCLK(),HSI(内部高速时钟),HSE(外部高速时钟),PLLCLK(PLL倍频器时钟的2分频),注意:1.该时钟输出,在启动和切换MCO时钟源时可能会被截断。2.在系统时钟作为输出源时,输出时钟频率不超过50MHz(IO口最高频率)

2.HSE OCS(High speed  external Clock Signal)高速外部时钟

外接晶振的范围4-16M。一般来说会外接一个8M的晶振。它可以直接作为选择器①的输入,或者2分频后作为选择器①的输入。还可以作为系统时钟的时钟源,也就是选择器③的输入。另外还可以被128分频作为内部rtc(相当于DS1302芯片在stm32内部填充)的时钟输入。RTC(Real time clock)实时时钟。

是用来选择那个线路被启用。

3.LSE RC(Low speed extrenal Clock Signal)外部低速时钟32.768khz

外部低速时钟通过一条线连接在选择器上,作为内部实时时钟的输入RTC(real time clock)。

2.接在内部总线上的时钟

1.HSI RC(High speed internal RC)内部RC振荡器产生

内部RC振荡器产生的一般为8Mhz的时钟信号。1.当由于受到外界环境影响(温度等),所以当系统启动之后先启动内部RC震荡器电路当做时钟,再启动HSE OSC(外部高速时钟)当外部高速时钟稳定后再使用外部高速时钟作为系统时钟。2.也可以2分频后作为选择器②的输入,再倍频给系统时钟。

2.LSI RC(Low speed internal RC)内部RC振荡器产生

内部低速RC振荡器产生的是40khz(不稳定)的时钟信号,可以作为内部实时时钟的输入RTC(real time clock)还可以作为独立看门狗时钟的输出。

3.倍频器(PLL)

将输入的信号进行倍频放大频率阈值:1. 2到16。(放大2到16倍)。例如8MHZ x 9  = 72MHZ。

                                                             2. 关闭时,不进行信号放大。此时 8MHZ x 1  = 8MHZ。

4.时钟监控系统CSS

我们经常会使用HSE外部晶振时钟作为PLL的输入,最终产生系统时钟。如果外部晶振突然坏了,会导致系统时钟崩溃。这时候,CSS时钟监控系统,一旦检测到HSE外部时钟信号丢失,可以自动切换SYSCLK=HSI,也就是自动切换内部时钟信号

5.分频器(预分频器与分频器)图中黄色都是分频器

AHB分频器,总线分频器,分频系数一共有9种,我们一般设置系统时钟SYSCLK是72MHz,AHB分频系数设为1,这时HCLK的频率为72MHz。
AHB分频器可以经过APB1分频器,通过APB1的分频,产生PCLK1的时钟。PCLK1时钟,可以挂一些低速的外设,比如通用定时器。
AHB分频器可以经过APB2分频器,通过APB2的分频,产生PCLK2的时钟。PCLK2时钟,可以挂一些高速的外设,比如定时器1(高级定时器)。

6.usb时钟系统

USB时钟,一般情况是48MHz,来源PLLCLK倍频器时钟经过USB分频器,USB分频器可以分频1倍或者1.5倍,因为USB时钟频率一般是48MHz,分频系数只有1和1.5,所有PLLCLK倍频器时钟的频率一般设为48MHz或者72MHz。例如:PLL倍频器输出72MHZ信号,USB分频器采用1.5分频,72 x 2/3 = 48MHZ。

7.注解

APB分频器,分频因子共有5种,1、2、4、8、16。下面挂载很多外设,在使用任何外设之前,都要使能相应的时钟。如果不使用外设,还打开APB分频器,就比较耗电

8.外部高速时钟的输入

1.旁路模式(HSE),就是外部为有源晶振不需要内部的电路网络对信号进行处理

2.开启模式(HSE),此时内部电路与外部晶振(无源)之间构成时钟发生电路。

注解:二者的区别是在OCS_IN引脚上是否有外部恒定的时钟信号输入。

旁路模式有恒定的时钟信号输入。开启模式外部晶振与内部电路组合产生时钟输出电路。

RCC_HSE_Bypass模式则表示外部时钟绕过HSE振荡器。这通常用于当外部有源晶振的频率与HSE的默认频率不匹配时。在这种模式下,外部时钟信号直接输入到时钟安全系统(CSS)的时钟输入端,而不需要经过HSE振荡器。

  • 10
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Verilog时钟电路设计可以采用PLL锁相环对时钟源进行分频或倍频的方法,也可以使用硬件描述语言描述分频逻辑。其中,行波计数器和门控时钟是常见的时钟电路设计技术。 行波计数器是一种常用的时钟分频器,通过将计数器的输出信号与输入信号进行异或操作,实现对输入信号进行分频。虽然行波计数器的时钟偏移现象相对较轻,但是消耗的资源较多且功耗较大。 门控时钟设计是通过控制时钟信号的开关门来实现时钟的控制。在门控时钟设计中,可以使用多种方法实现时钟的开关控制,如使用门控时钟触发器等。门控时钟设计可以实现对时钟信号的灵活控制,适用于需要对时钟进行调整和控制的场景。 综上所述,Verilog时钟电路设计可以根据具体需求选择合适的时钟分频技术,如行波计数器或门控时钟设计。 <span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [基于verilog的时钟管理电路设计(奇数/偶数分频、门控时钟等)](https://blog.csdn.net/PPRAM/article/details/125510822)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [verilog 设计一个电子钟](https://blog.csdn.net/weixin_46085748/article/details/111395741)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值