STM32时钟系统详解
下载需积分: 7 | DOC格式 | 36KB |
更新于2024-09-12
| 37 浏览量 | 举报
"这篇文档是关于f4系列微控制器的学习资料,特别适合初学者使用。文档详细阐述了STM32F4的系统时钟配置及其对各个模块的影响,包括AHB和APB总线的时钟分频以及定时器的倍频设置。此外,还提到了连接在APB1和APB2上的外设及其对时钟的需求。"
在STM32F4微控制器中,系统时钟SYSCLK是核心部分,它决定了大部分模块的工作速度。SYSCLK可以由PLL(锁相环)输出、HSI(高速内部振荡器)或HSE(高速外部晶振)提供,最高可达72MHz。这个时钟通过AHB(高级高性能总线)分频器进行分频,以适应不同的系统需求。AHB分频器提供了9种分频选项,范围从1到512。
AHB分频器产生的HCLK时钟供给AHB总线、处理器内核、内存以及DMA使用。此外,它还为Cortex-M4系统的系统定时器提供经过8分频后的时钟,并直接为Cortex的空闲运行时钟FCLK供电。同时,AHB时钟也分别馈送到两个APB(先进外围总线)分频器:APB1和APB2。
APB1分频器有5种分频选择,其输出的PCLK1时钟供APB1上的外设使用,如电源接口、备份接口、CAN、USB、I2C、UART、SPI、窗口看门狗以及定时器2、3、4等。其中,定时器2、3、4的时钟可以通过倍频器进行1或2倍的提升。USB模块虽然需要48MHz的时钟,但该时钟仅用于串行接口引擎,其工作时钟是由APB1提供的。
APB2分频器同样有5种分频选项,产生的PCLK2时钟用于APB2上的外设,如UART1、SPI1、Timer1、ADC、所有普通IO口和第二功能IO口。值得注意的是,APB2分频器还会为定时器1的倍频器提供时钟,以及一个输出供ADC分频器,ADC的分频器可以设置为2、4、6或8分频。
在使用STM32F4的任何模块之前,都需要确保相应的时钟已经被正确地开启,这是通过访问RCC(复用重配置控制器)寄存器来完成的。RCC寄存器包含了一系列控制位,用于启用或禁用不同模块的时钟,确保系统时序的正确性。在编程过程中,理解和配置这些时钟设置是至关重要的,因为它们直接影响着CPU、总线和外设的运行效率和同步性。
相关推荐
mozun2
- 粉丝: 0
- 资源: 1
最新资源
- TWinSoftSetup_11.00.1347编程软件.zip
- statisticalModel:这是为了存储统计模型
- VR-Viz:基于A框架的React组件,用于VR中的数据可视化
- 基于HTML实现的宽屏大气咖啡商店响应式网站模板5293(css+html+js+图样)
- 技嘉B460M小雕Elite+10400.zip
- bulid_new.rar
- passwordGenerator
- USB_PPM_Joystick:Arduino适配器,用于RC远程控制PPM信号到USB HID游戏杆
- 正泰NIOG1Y系列油田抽油机节能变频柜.rar
- code码
- Xshell连接工具 XshellXftpPortable.zip
- The-Brooding-Fighting-Forces
- Archity-开源
- 罗克韦尔自动化半导体与电子行业FMCS系统解决方案.zip
- 家纺用品网上销售管理系统-毕业设计
- uri-judge:C ++中的URI判断问题(cpp)