【STM32】CubeMX+HAL库之时钟

【STM32】CubeMX+HAL库之时钟

前言

时钟是单片机运行的基础,时钟信号推动单片机内各个部分执行相应的指令。 时钟系统就是CPU的脉搏,决定CPU速率,像人的心跳一样 只有有了心跳,人才能做其他的事情,而单片机有了时钟,才能够运行执行指令,才能够做其他的处理 (TIM,串口,ADC,PWM等),时钟的重要性不言而喻。

所用工具:

  1. 开发板:野火挑战者STM32H743IIT6
  2. STM32CubeMX
  3. IDE: Keil-MDK

为什么有那么多总线,还要有时钟树?

STM32本身十分复杂,外设非常多,使用任何外设都需要时钟才能启动,但并不是所有的外设都需要系统时钟那么高的频率, 为了兼容不同速度的设备,有些高速,有些低速,如果都用高速时钟,势必造成浪费 并且,同一个电路,时钟越快功耗越快,同时抗电磁干扰能力也就越弱,所以较为复杂的MCU都是采用多时钟源的方法来解决这些问题。所以便有了STM32的时钟系统和时钟树。

STM32CubeMX时钟配置

1.设置RCC

首先介绍使用高速外部时钟(常用)
步骤如下图
注意 如需使用较高主频请将功率档位开到 0;如下图 3处所示。
在这里插入图片描述
2. 打开时钟配置选项
·选择HSE(高速外部振荡器)
·选择PLLCLK
·选择自己需要的主频
如下图所示
在这里插入图片描述
低速外部时钟(LSE)配置同理
在使用内部震荡器时直接从第二步时钟配置开始就可以。
如下图所示
在这里插入图片描述
时钟的配置到这里就结束了,下面开始生成文件。
首先设置文件名、文件位置、IDE等信息
在这里插入图片描述
高级选项配置
在这里插入图片描述
最后生成代码
在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
嵌入式系统设计是指将计算机系统集成到其他设备或系统中,以实现特定功能。而基于STM32CubeMXHAL库的嵌入式系统设计是指利用ST公司的STM32系列微控制器,结合STM32CubeMX工具和HAL库(Hardware Abstraction Layer),进行软硬件设计和开发的过程。 STM32CubeMX是ST公司推出的一款嵌入式系统设计工具,它提供了图形化的界面,可以帮助开发者快速配置STM32微控制器的引脚、时钟、外设等参数,生成初始化代码和项目文件,使整个开发过程更加简化和快捷。 HAL库STM32系列微控制器的硬件抽象层,提供了一组封装了底层硬件操作的API接口,使开发者能够更加方便地进行外设控制和数据处理等操作。开发者可以根据具体的需求,选择需要的API接口,编写相应的代码,完成对硬件的控制和操作。 在使用STM32CubeMXHAL库进行嵌入式系统设计时,可以通过STM32CubeMX工具进行硬件的初始化和配置,生成相应的代码和项目文件。然后,在IDE(集成开发环境)中使用HAL库提供的API接口,编写代码进行软件的开发和应用程序的编写。通过这种方式,开发者可以在短时间内快速完成嵌入式系统设计,提高开发效率和产品质量。 总而言之,基于STM32CubeMXHAL库的嵌入式系统设计提供了一种快速、简化的嵌入式软硬件开发方法,使开发者能够更加高效地进行嵌入式应用的设计与开发。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值