点亮第一盏LED灯 4): stm32CubeMX配置时钟

news2024/9/22 8:32:36

嵌入式入门,继续点亮第一盏LED灯,在Stm32CubeMX这个图形界面,一共是需要配置2个地方,1是GPIO引脚,2是时钟,上一篇文章已经将引脚PC13配置为输出引脚,这个引脚需要输出的是低电平,这篇文章就是配置时钟,很多初学者很不理解为什么要配置时钟,时钟的作用是什么,这样子理解,芯片相当于大脑,时钟就相当于心脏,我们电脑的CPU主频其实也就是时钟,在数字电路里面,时钟相当于节拍,数字电路是根据节拍进行数据处理的,我们平常使用的U盘,内部就有时钟,这个时钟坏了,U盘就工作不了了

stm32有内部时钟,和外部时钟,内部和外部时钟又可以分为低速和高速,所以stm32的时钟类型有4种,1是HSI (高速内部时钟),2是HSE (高速外部时钟),3是LSI (低速内部时钟),4是LSE (低速外部时钟),那么作为初入门,只需要知道HSE (高速外部时钟)就可以,这个是最常用的,因为它的精度高,HSE时钟的提供者,是晶振,晶振是一种电子元件,它的频率通常是8MHz,频率的单位是MHz, stm32的系统时钟的频率越高,stm32的处理速度就越快,这个应该很好理解。
在这里插入图片描述
明白了stm32时钟基本的一些概念之后,就在stm32CubeMX配置时钟。
1. 配置时钟源
在这里插入图片描述
选中 Crystal/Ceramic Resonator (外部晶振)

接着点击 Clock Configuration 进行进一步的配置
在这里插入图片描述

2. 选中PLLCLK作为系统时钟

在这里插入图片描述
注意箭头指着的地方,系统时钟的选择有3个,HSI,HSE,PLLCLK,那么为什么不直接选HSE,因为PLLCLK可以配置频率。
3. 将HSE的频率配置为72MHz
在这里插入图片描述
先看红色箭头指着的地方,PLL就可以选择HSI,还是HSE,那么选择HSE,接着就是配置HSE的频率,stm32F103晶振提供的频率是8MHz,也就是HSE的输入频率是8MHz,现在通过PLL倍频系数,也就是绿色箭头指向,选择9这个倍频,那么HSE的输出频率就是8*9=72MHz,注意的是, 最大频率不能超过72MHz

到这里,stm32系统时钟就设置完,时钟方式是HSE,时钟源头是外部晶振,频率是72MHz

4. 设置AHB高速总线时钟频率
这里有个概念,就是stm32总线,stm32的总线有2种,AHB 和 APB,这2个总线可以理解为相当于PC的南桥总线和北桥总线,南桥总线是连接键盘这些低速外设,北桥总线是连接显卡这些高速外设,同样的,AHB是系统总线,是高性能总线,是连接处理器,APB是连接周边外设,APB又分为APB1和APB2,APB1是低速总线,APB2是高速总线,它们分别连接的外设是不同的

明白了总线这个概念之后,下面就设置这3条总线 (AHB,APB1,APB2) 的时钟频率
设置AHB时钟频率
在这里插入图片描述
看绿色箭头,叫做AHB预分频器,意思也就设置AHB的倍频,这里设置AHB的倍频是1,那么最终的AHB总线时钟频率是=系统时钟频率*AHB倍频,那么这里的HCLK就是AHB总线时钟频率,因为AHB倍频设为1,所以HCLK就等于系统时钟频率。

5. 设置APB1和APB2总线的时钟频率
在这里插入图片描述
看红色箭头,和AHB预分频器同样的,APB1和APB2也分别有,APB1预分频器,和APB2预分频器,都是设置APB1和APB2总线的倍频,以APB1为例,APB1的时钟频率 = AHB时钟频率 * APB1倍频,这里就设置 APB1时钟频率是AHB时钟频率的1/2,APB2的时钟频率等于AHB时钟频率。

到这里,stm32CubeMX的时钟就配置好了,这里涉及的概念挺多的,时钟和总线是stm32的很重要的2个部分,

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2135158.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

这才几天,京东又又又又又又加薪了!

京东 今天的最新消息,京东又又又又又加薪了。 距离我们 京东宣布大幅上调校招薪资 的推文发布才一周多点的时间,京东又宣布加薪了。 好家伙,算上这次,光 2024 年京东就已经宣布了 6 次调薪了: 2024 年初,京…

多文件多子目录makefile

这里写目录标题 1 makefile原理2 MakeFile步骤3 多文件多子目录Makefile实例4 总结附录一:常用Bash指令附录二:常用批处理变量附录三:常用makefile指令 1 makefile原理 编译过程是将高级语言(如C、C等)源代码转换为可…

如何利用数字化智慧法务管理平台,提升企业合规与治理水平?

在当今这个日新月异的时代,企业管理正面临着前所未有的挑战与机遇。随着数字化浪潮的汹涌澎湃,企业治理水平的提升已不再是简单的管理升级,而是需要借助科技的力量,实现智慧化、精细化的管理。而智慧法务管理平台,正是…

电子电路产业园废水处理与资源回收的创新实践

随着电子产品的普及和技术革新步伐的加快,电子电路制造业已成为推动现代科技发展的关键力量之一。然而,随之而来的环保问题不容忽视。电镀工艺作为电子电路生产中的一个核心环节,其产生的含镍废水处理成为了企业必须面对的重要课题。本文将探…

【组件】前端js HEIC/HEIF 转换为JPEG、PNG或GIF格式 苹果格式

【组件】前端js HEIC/HEIF 转换为JPEG、PNG或GIF格式 Heic2any: Client-side conversion of HEIC/HEIF image files to JPEG,PNG, or GIF in the browser.https://alexcorvi.github.io/heic2any/#demo GitHub - alexcorvi/heic2any: Converting HEIF/HEIF image formats to PN…

redis 中缓存 百万级别表的查询数据 出错:Query execution was interrupted

项目背景:项目需要 首检合格率 这个结果,但是sql执行非常慢,就想着使用redis来优化接口的速度。现在我需要将数据库查询结果存储到redis,但是就是这一小步,也非常困难。我是用定时任务来实现上面的目的。 Component S…

基于android studio开发的仿QQ聊天软件源代码+数据库+实验报告

安卓客户端基于java 编程语言 在android studio 环境中开发。 内部图片资源很大一部分是反编译手机QQapp 获得的。 服务器端技术路线 聊天系统服务器基于Java Socket网络编程和并发编程、多线程技术、jdbc实现。 通过哈希表(hashmap)存储来自每一个向客…

读书笔记:《程序员修炼之道——从小工到专家》

前言 此书有两个版本,我读的是第一版,大学时买了略略翻过,当时太懵懂无法理解书中提出的观点,看了也记不得,感觉比较适用于有过1~2个项目工作经验的同学,初学者不一定能看得懂,工作之后看&…

学习通、智慧职教刷课脚本

🐐个人主页 可惜已不在 🐋可以分享给身边有需要的人🐶 🐉有用的话就留下一个三连吧😼 目录 一.安装 脚本运行器 篡改猴 - Microsoft Edge Addons 二.安装脚本 三.扩展 一.安装 脚本运行器 安装浏览器 Microsoft E…

【多因子分组箱线图】:附Origin详细画图教程

目录 No.1 理解箱线图 1 什么是箱线图 2 箱线图的组成 No.2 画图流程 1 导入数据并绘图 2 设置绘图细节 3 设置坐标轴 4 效果图 No.1 理解箱线图 1 什么是箱线图 箱线图,又称箱形图、盒须图或盒式图,用于体现数据分散情况的统计图。在视觉上辅助…

初始爬虫5

响应码: 数据处理: re模块(正则表达式) re模块是Python中用于正则表达式操作的标准库。它提供了一些功能强大的方法来执行模式匹配和文本处理。以下是re模块的一些常见用法及其详细说明: 1. 基本用法 1.1 匹配模式 …

CDGA|如何实施非常精准的数据治理策略?

在信息化高速发展的今天,数据已成为企业最重要的生产要素之一,其价值日益凸显。然而,随着数据量的爆炸性增长,如何精准地管理和控制数据成为企业亟待解决的问题。本文将从设定目标、制定策略、组织结构建设、制度流程规范以及技术…

新发现!一键管理所有远程会话的神器——1Remote

大家好,今天给大家介绍一款非常实用的工具——1Remote,这是一款现代化的个人远程会话管理器与启动器,让您的远程工作变得更加轻松高效! 项目介绍 🚀 核心功能概览 多协议支持:1Remote支持RDP、SSH、VNC、…

OBD服务0X0A--请求排放相关的永久DTC

服务0x0A的主要目的是允许外部测试设备获取所有具有“永久DTC状态”的故障诊断码(DTC)。这些DTCs是“已确认”的,并且被保留在服务器的非易失性存储器(NVRAM)中,直到针对每个DTC的相应监控器确定故障不再存…

如何使用ORJSONResponse增强FastAPI应用性能:转换任意类型为JSON

在FastAPI中,ORJSONResponse 是一种自定义响应类型,它使用 orjson 库来提高 JSON 数据的序列化性能。orjson 是一个快速且正确的 Python JSON 库,它支持 dataclass、datetime 和 numpy 等数据类型的序列化。使用 ORJSONResponse 可以提升 API…

打造民国风格炫酷个人网页:用HTML和CSS3传递民国风韵

附源码!!! 感谢支持 小弟不断创作网站demo感兴趣的可以关注支持一下 对了 俺在结尾带上了自己用的 背景 大家可以尝试换一下效果更好哦~~~ 如何创建一个民国风格的炫酷网页 在这篇博客中,我们将展示如何制作一个结合民国风格和…

【Java文件操作】文件系统操作文件内容操作

文件系统操作 常见API 在Java中,File类是用于文件和目录路径名的抽象表示。以下是一些常见的方法: 构造方法: File(String pathname):根据给定的路径创建一个File对象。File(String parent, String child):根据父路径…

CANFD接口卡配套奇瑞上位机检测电池状态

随着汽车电子的高速发展,车内信息的急剧增多,传统的CAN总线的数据传输能力已经很难满足车辆ECU的数据传输需求了,此时CANFD就应运而生了。 CANFD和CAN最主要的区别就是CANFD的ID段和数据段能够以不同的速率传输数据,这就保证了即…

下一代 AI 医疗:知识图谱RAG + 多智能体,听医生的话没前途,让医生听你的话才是正道!

下一代 AI 医疗:知识图谱RAG 多智能体,听医生的话没前途,让医生听你的话才是正道! 医疗算法趋势现代 AI 医疗算法问题医学影像算法的局限医疗知识图谱的问题基于最本质循证医学实现人类级因果推理摆脱LLM概率性输出 嘘&#xff0…

用python操作Excel表格(自动化办公)!

文章开始前打个小广告——分享一份Python学习大礼包(激活码安装包、Python web开发,Python爬虫,Python数据分析,人工智能、自动化办公等学习教程)点击领取,100%免费! 一、openpyxl介绍安装 1.…