STM32CUBEMX中TIM定时器的高效使用指南

发布者:EnchantedDream最新更新时间:2025-10-10 来源: cnblogs关键字:STM32CUBEMX  TIM定时器  使用指南 手机看文章 扫描二维码
随时随地手机看文章

一、什么是定时器

STM32的定时器(Timer)是其片上外设非常重要的一部分,广泛用于计时、产生精确延时,PWM输出,输入捕获,输出比较。编码器接口等功能。

在STM32中通常包含了以下几种类型的定时器:

基本定时器: TIM6,TIM7      仅具备计数功能,用于延时,DAC触发。

通用定时器: TIM2-TIM5,TIM9-TIM14   支持技术,输入捕获,输出比较,PWM,编码接口等。

高级定时器:TIM1,TIM8 功能最全,支持死区,互补PWM,适合电机控制。


二、定时器配置

首先我们需要打开STM32CubeMX软件,点击“新建工程”

选择我们的芯片,开始图形化配置。

首先我们配置晶振

接着我们打开我们的调试引脚。

接着选择我们的输出引脚。

接着我们配置我们的时钟频率,后面我们的定时器会用该时钟频率配置定时器

现在我们就可以进行中断定时器的配置,我们选择一个通用计时器

我们将时钟源选择为内部时钟

选择了时钟源后,我们就要开始设置定时器。

其中:

Prtscaler (定时器预分频系数)
Counter Mode(计数模式) : Up(向上计数模式)
Counter Period(自动重装载值) 
CKD(时钟分频因子) : No Division 不分频 
auto-reload-preload(自动重装载) : Enable 使能


计算时间的公式就为

T = (psc+1)(arr+1)/Tclk;psc:定时器预分频系数、arr:自动重装载值、Tclk:系统时钟频率

我们就可以计算出我们需要的时间,

最后我们还需要启动中断设置。

配置完成后我们就可以进行Project Manager 的编辑。

每个外设生成独立的“.c/.h”文件。

最后点击创建代码。

我们首先找到我们的定时器初始化代码。


三、代码编写

我们转到定义里去看,可以发现,这里面进行了我们定时器的配置,

在stm32f1xx_it.c中,找到我们的定时器中断

在后面我们就可以进行中断回调的编写了。

这样我们的中断回调函数就编写好了。


关键字:STM32CUBEMX  TIM定时器  使用指南 引用地址:STM32CUBEMX中TIM定时器的高效使用指南

上一篇:STM32智能刷卡消费系统基于uC/OS-III操作系统的设计与实现
下一篇:STM32 LED点灯实验:实现PC13 LED闪烁控制

推荐阅读最新更新时间:2026-03-24 11:48

STM32CUBEMXTIM定时器的高效使用指南
一、什么是定时器 STM32的定时器(Timer)是其片上外设非常重要的一部分,广泛用于计时、产生精确延时,PWM输出,输入捕获,输出比较。编码器接口等功能。 在STM32中通常包含了以下几种类型的定时器: 基本定时器: TIM6,TIM7 仅具备计数功能,用于延时,DAC触发。 通用定时器: TIM2-TIM5,TIM9-TIM14 支持技术,输入捕获,输出比较,PWM,编码接口等。 高级定时器:TIM1,TIM8 功能最全,支持死区,互补PWM,适合电机控制。 二、定时器配置 首先我们需要打开STM32CubeMX软件,点击“新建工程” 选择我们的芯片,开始图形化配置。 首先我们配置晶振 接着我们打开我们的
[单片机]
<font color='red'>STM32CUBEMX</font>中<font color='red'>TIM</font><font color='red'>定时器</font>的高效<font color='red'>使用指南</font>
STM32CubeMX(Keil5)开发之路——5定时器中断TIM
为了方便调试,重定向printf,进行usart设置 1——点击USART1进行设置 2——模式选择Asynchronous异步传输 3——可以看到右边自动出现了Tx和Rx 4——可以自行设置波特率,停止位,校验位等参数 1——点击Clock Configuration进行设置 2——注意这几个地方的时钟(后面进行分频设置的时候需要) 点击TIM1进行设置 1——时钟源Clock Source选择Intemal Clock 2——预分频选择36000-1也就是35999(注意16位最大只能表示65535) 3——自动重装载值设置为2000-1也就是1999 讲解:定时器更新中断的频率=时钟频率/(预分频+1)/
[单片机]
<font color='red'>STM32CubeMX</font>(Keil5)开发之路——5<font color='red'>定时器</font>中断<font color='red'>TIM</font>
STM32F103系列定时器TIM2至TIM5详解)
一、通用定时器 1.1 回顾 stm32f103共有八个定时器,高级定时器(TIM1,TIM8);基本定时器(TIM6,TIM7);通过定时器(TIM2~TIM5); 本章重点讲解通用定时器的时钟模式,捕获输入,比较输出 stm32f103定时器功能比较 基本定时器请转看连接:https://blog.csdn.net/DK3314219995/article/details/148491712?spm=1011.2124.3001.6209 1.2 特性 1 计数器16bit(计数值:0~65535),支持递增计数、递减计数、中间计数 2 预分频器16bit(分频系数:0~65535) 3 可用于出发DAC、ADC
[单片机]
STM32F103系列<font color='red'>定时器</font>(<font color='red'>TIM</font>2至<font color='red'>TIM</font>5详解)
STM32定时器 TIM3之定时中断
以STM32F030F4P6,uVision开发环境为例,注意了,若使用其它相近芯片,本文仅供参考。 TIM3 结构框图 在中断文件stm32f0xx_it.c 中修改或添加下面语句、函数。 extern void LED_A4 (); //外部引入函数声明 加在文件首部 void TIM3_IRQHandler(void) // 加入TIM3中断函数 { TIM_ClearITPendingBit(TIM3,TIM_IT_Update); // 清TIM3溢出中断标志位 LED_A4 ();
[单片机]
STM32<font color='red'>定时器</font> <font color='red'>TIM</font>3之定时中断
STM32定时器之PWM 1路输出 TIM3
以STM32F030F4P6,uVision开发环境为例,注意了,若使用其它相近芯片,本文仅供参考。 以下是main.c文件: #include stm32f0xx.h void LED_Init(void) //PWM输出引脚B1函数 { GPIO_InitTypeDef GPIO_InitStructure; //声明GPIO_InitStructure结构变量 // 原版创作,引用请指明出处 https://www.cnblogs.com/beiyhs/p/11406535.html 北有寒山 /*
[单片机]
STM32<font color='red'>定时器</font>之PWM 1路输出 <font color='red'>TIM</font>3
STM32定时器之PWM 4路输出 TIM3、TIM14
以STM32F030F4P6,uVision开发环境为例,注意了,若使用其它相近芯片,本文仅供参考。 程序运行后TIM3的CH1、CH2、CH4,TIM14的CH1输出PWM波形。 以下是main.c文件: #include stm32f0xx.h //转载请注明出处: https://www.cnblogs.com/beiyhs/p/11435583.html 北有寒山 void PWM_GPO_TIM(void) //PWM引脚时钟设置函数 { GPIO_InitTypeDef GPIO_InitStructure;
[单片机]
STM32单片机TIM模块定时器向上溢出的输出比较
首先我们必须肯定ST公司的实力,也承认STM32的确是一款非常不错的Cortex-M3核单片机,但是,他的手册实在是让人觉得无法理解,尤其是其中的TIM模块,没有条理可言,看了两天几乎还是不知所云,让人很是郁闷。同时配套的固件库的说明也很难和手册上的寄存器对应起来,研究起来非常费劲!功能强大倒是真的,但至少也应该配套一个让人看的明白的说明吧~~ 两天时间研究了STM32定时器的最最基础的部分,把定时器最基础的两个功能实现了,余下的功能有待继续学习。 首先有一点需要注意:FWLib固件库目前的最新版应该是V2.0.x,V1.0.x版本固件库中,TIM1模块被独立出来,调用的函数与其他定时器不同;在V2.0系列版本中,取消了T
[单片机]
stm32 TIM(通用定时器)
寄存器 描述 CR1 控制寄存器1 CR2 控制寄存器2 SMCR 从模式控制寄存器 DIER DMA/中断使能寄存器 SR 状态寄存器 EGR 事件产生寄存器 CCMR1 捕获/比较模式寄存器1 CCMR2 捕获/比较模式寄存器2 CCER 捕获/比较使能寄存器 CNT 计数器寄存器 PSC 预分频寄存器 APR 自动重装载寄存器 CCR1 捕获/比较寄存器1 CCR2 捕获/比较寄存器2 CCR3 捕获/比较寄存器3 CCR4 捕获/比较寄存器4 DCR DMA控制寄存器 DMAR 连续模式的DMA地址寄存器 #define PWMA TIM8- CCR1 定时器初始化
[单片机]
小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

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