STM32CubeMX时钟配置详解

发布者:CyborgDreamer最新更新时间:2020-08-25 来源: eefocus关键字:STM32CubeMX  时钟配置  总线 手机看文章 扫描二维码
随时随地手机看文章

软件:
(1)STM32CubeMX
(2)SW4STM32
实验平台:STM32F407VET6开发板


使用STM32CubeMX的一个好处就是图形化配置,在时钟配置方面,主要了解清楚高级外设总线(APB1、APB2)控制哪些外设。
(0)先配置好PA6、PA7(控制LED灯),好观察实验现象
这里写图片描述
(1)首先配置RCC(复位和时钟控制),选择外部高速始终,如下图
这里写图片描述

(2)为了测试不同APB的时钟频率效果,在此选择了TIM1和TIM2,按下图配置
这里写图片描述

(3)为什么选择以上两个定时器作为例子?参考STM32F4XX中文参考手册,找到RCC相关内容,如图
这里写图片描述
这里写图片描述
可知TIM1 在APB2,TIM2 在APB1

(4)进入时钟配置,我的STM32F407开发板外部晶振是8MHz的,在Input freequency 输入8,在HCLK 那里会提示最大频率168MHz,输入168,然后自动寻求配置,注意第一次配置出来的还是内部时钟HSI 的,要选择为HSE ,配置好后如下图
这里写图片描述
顺便提一下,STM32F103的开发板也差不多的,只不过F1的最高时钟频率是72MHz。
(5)配置好后时钟后可以看到APB1 定时器(如TIM2)频率为84MHz,APB2 定时器(如TIM1)频率为168MHz

(6)设置NVIC,TIM1是高级定时器,选择更新中断,TIM2是通用定时器
这里写图片描述
这里写图片描述
除了定时器,我自己还设置了两个串口中断,可以不用理会

(7)设置定时器
这里写图片描述
这里写图片描述
上面两个定时器设置实现的都是定时1s进入中断处理。


以TIM1为例,APB2时钟频率168MHz=168,000,000Hz,选取预分频系数(Prescaler)(16位存储,预分频系数最大65535)为16799,则定时器的时钟频率为168,000,000 / 16800 = 10000 Hz,频率为1万赫兹,选取计数周期(Counter Period,16位存储)为9999, 所以定时周期1s,同理TIM2也是同样计算,如果APB的时钟频率改变,一样安装上面的方法进行设置。

(8)生成SW4STM32工程,打开,在main函数里面while前启动定时器,如下代码

  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  HAL_TIM_Base_Start_IT(&htim1);/启动定时器
  HAL_TIM_Base_Start_IT(&htim2);
  while (1)
  {

  /* USER CODE END WHILE */

  /* USER CODE BEGIN 3 */

  }
  /* USER CODE END 3 */12345678910111213

(9)编写定时器中断

/* USER CODE BEGIN 4 */

void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{
	if(htim->Instance == TIM2)	// 判断哪个定时器中断
	{
		HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_6);	// 翻转灯
	}
	if(htim->Instance == TIM1)	// 判断哪个定时器中断
	{
		HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_7);	// 翻转灯
	}

}

/* USER CODE END 4 */12345678910111213141516

最后烧写到开发板实现预定效果,对定时器中断的详细视频介绍可以参考博主制作的相关视频,一个是在proteus仿真实现的,另一个是结合freertos实现的:https://www.bilibili.com/video/av63392182, https://www.bilibili.com/video/av63560586

关键字:STM32CubeMX  时钟配置  总线 引用地址:STM32CubeMX时钟配置详解

上一篇:STM32f103时钟系统简介
下一篇:Stm32时钟分析

推荐阅读最新更新时间:2024-11-16 21:51

汽车LIN总线驱动传感器应用
  现今的汽车平均带有50多个不同的传感器,用于监控各种物理变量。由于制动器的使用增加,因而要求传感器提供相应的输入值,所以这个数字还会继续增长。此外,对信号系统的需求正在增加,模拟数据传输技术所受到的限制变得明显了,所以工程师面对的挑战已经变成如何将传感器组变换成一个高效的高性能数字子系统。   驱动传感器的LIN总线技术结合现今电压调制和电流调制方式的优点,可以实现数字数据的高效管理。爱特梅尔公司能够提供所有必须的产品,而无需依赖于LIN应用的集成水平。   传感器系统在许多方面不同于汽车的其它电子元件。最重要的差异在于:传感器通常位于车辆外部的恶劣环境,要经受湿度、温度或者压力的变化。大多数情况下,传感器还得安装在非
[嵌入式]
STM32为什么必须先配置时钟配置GPIO?原因解析
  意法半导体的EnergyLite™超低功耗技术平台是STM32L取得业内领先的能效性能的关键。这个技术平台也被广泛用于意法半导体的8位微控制器STM8L系列产品。EnergyLite™超低功耗技术平台基于意法半导体独有的130nm制造工艺,为实现超低的泄漏电流特性,意法半导体对该平台进行了深度优化。   在工作和睡眠模式下,EnergyLite™超低功耗技术平台可以最大限度提升能效。此外,该平台的内嵌闪存采用意法半导体独有的低功耗闪存技术。这个平台还集成了直接访存(DMA)支持功能,在应用系统运行过程中关闭闪存和CPU,外设仍然保持工作状态,从而可为开发人员节省大量的时间。   除最为突出的与制程有关的节能特色外,ST
[单片机]
STM32为什么必须先<font color='red'>配置</font><font color='red'>时钟</font>再<font color='red'>配置</font>GPIO?原因解析
嵌入式系统中可配置式GPIO模拟SPI总线方法
在嵌入式系统处理器中有相当一部分处理器不带SPI接口,但基丁SPI接口的设备非常丰富,此外,SPI设备的不同以及处理器对GPIO口位寻址是否支持各处理器各有不同,因而不同处理器中软件模拟GPIO也各不相同。若能提供一种通用可配置可移植的GPIO模拟SPI总线的驱动则能很方便快捷的访问SPI设备,从而提高整个嵌入式系统的开发效率。本文针对GPIO口位寻址与否给出方面,给出了一种可配置GPIO模拟SPI总线的方法并详细介绍了其设计与实现过程,且具有代码小可移植性强使用方便等特点。 1 GPIO规范 SPI是一个全双工的串行接口。它设计成可以在一个给定总线上处理多个互联的主机和从机。在一定数据传输过程中,接口上只能有一个丰机和一个从
[嵌入式]
为何车载空调压缩机CAN总线通讯需要采用隔离方案?
炎炎夏日,车内空调系统的稳定可靠运行显得尤为重要。本文将为您介绍如何通过总线隔离避免因通信不畅引起的车载空调故障。 为什么要用隔离 从能源种类来看,目前公路上的车型主要可以分为两类,一类是使用传统汽油、柴油作为燃料的车辆,另一类是使用电池的新能源车。这两类车型的车载空调系统有什么区别呢?传统的燃油车辆,空调压缩机是由发动机直接将动能传递给空调压缩机,而新能源车的空调压缩机则是由车内的电池驱动的。 图1 动力电池 将新能源汽车的动力电池驱动压缩机需要几个步骤,首先要将直流电转化为交流电(逆变),然后调整交流电频率使其能稳定驱动压缩机中的电机,该部分的功能部件在车辆中以空调驱动单元存在。说到高压、逆变、变频、
[汽车电子]
为何车载空调压缩机CAN<font color='red'>总线</font>通讯需要采用隔离方案?
CAN总线简介
CAN 全称为Controller Area Network,即控制器局域网,由德国Bosch 公司最先提出,是国际上应用最广泛的现场总线之一。CAN 是一种多主方式的串行通讯总线,基本设计规范要求有高的位速率、高抗电磁干扰性,而且要能够检测出总线的任何错误。当信号传输距离达10Km 时CAN 仍可提供高达50Kbit/s 的数据传输速率。CAN 具有十分优越的特点:    A、较低的成本与极高的总线利用率;  B、数据传输距离可长达10Km,传输速率可高达1Mbit/s;  C、可靠的错误处理和检错机制,发送的信息遭到破坏后可自动重发;  D、节点在错误严重的情况下具有自动退出总线的功能;  E、报文不包含源地址或目标地址仅用标志
[嵌入式]
基于SIMl-2的现场总线仪表电路设计
  1 引言   现场总线仪表的重要特点是总线供电。总线供电是指仪表从传输数据的信号总线上获取维持其工作所需的电源。而无需本地电源供电。但由总线供电的仪表具有较严格的功耗约束和复杂的系统,设计可在10 mA下工作的现场总线仪表仍具有挑战性。这里提出一种基于SIMl-2的现场总线仪表电路设计方案。   2 媒体结合单元(MAU)   典型的现场总线仪表由媒体结合单元MAU(Medium Attachment Unit)、数字系统、A/D转换器、信号调理电路和传感器组成。其中MAU电路通常与数字系统设计在一个圆形线路板上,因此又称为“通讯圆卡”。   MAU电路分为总线供电和非总线供电两种类型,主要实现标准逻辑信号与传输介质
[嵌入式]
现场总线:采用高级诊断工具调试
采用现场总线技术的流程工厂 流程工厂的测量和控制任务可由现场总线技术完成,而采用现场总线技术的工厂将从中受益。智能化现场设备可以提供更高的精度。从模拟量到数字量仅需经过一次变换,数字量的传输可通过奇偶校验等方式来保证传输精度, 从而保障控制回路的高精度,输出的高稳定性。 如今的现场设备可传输附加的状态信息,如:正常运行或故障信息,或现场设备的其它状态。通过现场设备的一些有规律的状态信息来达到预防性维护的目的。DCS厂家则称之为资产管理系统。这些功能在很多时候对于设备维护来说,可以起到事半功倍的效果。 另外,如果在批处理工艺过程或在工厂运行时更换现场设备时,通过现场总线的远程组态功能可以大大提高其工作效率,综合上述的优势,在过程
[嵌入式]
STM32CubeMX生成USART+DMA程序
测试时参照以上链接进行测试的,经测试以上链接的方法完全没问题,测试结果如下: 同时验证了都使用USART都使用DMA进行发送接收的情况,无异常发生,现象同上
[单片机]
<font color='red'>STM32CubeMX</font>生成USART+DMA程序
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved