STM32实战项目-基本定时器
创始人
2024-06-01 14:11:43
0

前言:

通过基本定时器TIM6,让三个LED灯每间隔1s闪烁一次。

目录

1.基本定时器参数配置

1.1框图分析

1.2参数配置

2.软件程序 

2.1整体框架 

2.2定时器结构体 

2.3定时器回调函数



1.基本定时器参数配置

1.1框图分析

TIM6作为基本定时器 它是挂载在APB1总线上的,框图如下所示:

 

时钟树的框图如下

 

 

1.2参数配置

功能介绍:

  我们如果想要配置 5ms的进入中断处理一次的话,如果我们不进行分频,对于72M的时钟频率大概是0.00几微妙就要检查一次,而且频率太高,所以我们要进行分频 分频后得到 CK-CNT如果我们预期想要得到1M的话,那就是 \frac{72M}{X+1}  其中x作为16位的时钟系数那他取值范围就是 1~65536之间的数值,我们想要得到 1ms 也就是 \frac{1}{1M}可以推出X为71 那x + 1 就是72也就是72M分频 。

对于CNT计数器,我们想要得到5ms的时钟 即 \frac{1}{1M}  * CNT = 5ms = \frac{1}{200} 秒 可以推出 CNT 为50000。至此TIM时钟方面的配置算是完成了。框图如下:

总结:快速计算公式

说明:初始化基本定时器6,自动重载,5ms中断一次。

计算如下:

1、定时器时钟 = 72MHz

2、计算时钟 = 72MHz/(71+1) = 1MHz

3、定时周期 = ((1/1000000Hz)*5000)s = (5/1000)s = 5ms

 

cubemax参数配置 

中断优先级介绍:

 

 

首先配置TIM6的优先级,此次实验只有一个时钟中断,所以我们将其抢占优先级设置成2就行,响应随便。如下图所示:

中断时间数配置:

,启动使能NVIC之后,完全按照我们计算好的参数去设置,分频系数。计数器 就能达到我们想要的5ms。

 

 

2.软件程序 

2.1整体框架 

 

2.2定时器结构体 

typedef enum
{TIMER0_10mS  	= (uint16_t)2,TIMER0_50mS  	= (uint16_t)10,TIMER0_100mS	= (uint16_t)20,TIMER0_200mS	= (uint16_t)40,TIMER0_500mS	= (uint16_t)100,TIMER0_1S     = (uint16_t)200,TIMER0_2S     = (uint16_t)400,TIMER0_3S     = (uint16_t)600,TIMER0_5S     = (uint16_t)1000,TIMER0_10S    = (uint16_t)2000,TIMER0_3min   = (uint16_t)36000,
}TIMER0_Value_t;//定义结构体类型
typedef struct
{uint16_t volatile usMCU_Run_Timer;  //系统运行定时器void (*Timer6_Start_IT)(void);      //定时器6以中断模式启动
} Timer6_t;/* extern variables-----------------------------------------------------------*/
extern Timer6_t  Timer6;

2.3定时器回调函数

void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{if(htim->Instance == htim6.Instance){//程序支持运行,led间隔1s闪烁if(++Timer6.usMCU_Run_Timer >= TIMER0_1S){Timer6.usMCU_Run_Timer = 0;LED.LED_Flip(LED1);LED.LED_Flip(LED2);LED.LED_Flip(LED3);}}
}

 

 

 

 

 

相关内容

热门资讯

我来教大家“掼蛋大师辅助器ap... 亲,掼蛋大师这款游戏可以开挂的,确实是有挂的,。但是开挂要下载第三方辅助软件,掼蛋大师的开挂软件,名...
我来教大家“开心联盟辅助器ap... 您好,开心联盟这款游戏可以开挂的,确实是有挂的,需要了解加微{7198902}很多玩家在这款游戏中打...
我来教大家“友愉棋牌辅助器ap... 您好,友愉棋牌这款游戏可以开挂的,确实是有挂的,需要了解加微{7198902}很多玩家在这款游戏中打...
我来教大家“全盛棋牌辅助器ap... 亲,全盛棋牌这款游戏可以开挂的,确实是有挂的,。但是开挂要下载第三方辅助软件,全盛棋牌的开挂软件,名...
我来教大家“情怀三三麻将辅助器... 我来教大家“情怀三三麻将辅助器app官方下载最新版本更新”详细分享开挂一、情怀三三麻将AI软件牌型概...
我来教大家“无锡好运麻将辅助器... 亲,无锡好运麻将这款游戏可以开挂的,确实是有挂的,。但是开挂要下载第三方辅助软件,无锡好运麻将的开挂...
我来教大家“推筒子辅助器app... 您好,推筒子这款游戏可以开挂的,确实是有挂的,需要了解加微{7198902}很多玩家在这款游戏中打牌...
我来教大家“比奇堡辅助器app... 我来教大家“比奇堡辅助器app官方下载最新版本更新”详细分享开挂1、让任何用户在无需AI插件第三方神...
我来教大家“新兴茶苑辅助器ap... 我来教大家“新兴茶苑辅助器app官方下载最新版本更新”详细分享开挂1、让任何用户在无需AI插件第三方...
我来教大家“欢乐互动辅助器ap... 我来教大家“欢乐互动辅助器app官方下载最新版本更新”详细分享开挂1、让任何用户在无需AI插件第三方...
我来教大家“东方互娱辅助器ap... 亲,东方互娱这款游戏可以开挂的,确实是有挂的,。但是开挂要下载第三方辅助软件,东方互娱的开挂软件,名...
我来教大家“天天乐清麻将辅助器... 我来教大家“天天乐清麻将辅助器app官方下载最新版本更新”详细分享开挂一、天天乐清麻将AI软件牌型概...
我来教大家“唐三彩辅助器app... 我来教大家“唐三彩辅助器app官方下载最新版本更新”详细分享开挂一、唐三彩AI软件牌型概率发牌机制”...
我来教大家“Y0辅助器app官... 我来教大家“Y0辅助器app官方下载最新版本更新”详细分享开挂一、Y0AI软件牌型概率发牌机制”必胜...
我来教大家“天天互娱辅助器ap... 亲,天天互娱这款游戏可以开挂的,确实是有挂的,。但是开挂要下载第三方辅助软件,天天互娱的开挂软件,名...
我来教大家“悟空竞技麻将辅助器... 亲,悟空竞技麻将这款游戏可以开挂的,确实是有挂的,。但是开挂要下载第三方辅助软件,悟空竞技麻将的开挂...
我来教大家“情怀开化麻将辅助器... 我来教大家“情怀开化麻将辅助器app官方下载最新版本更新”详细分享开挂一、情怀开化麻将AI软件牌型概...
我来教大家“龙炎互娱辅助器ap... 我来教大家“龙炎互娱辅助器app官方下载最新版本更新”详细分享开挂一、龙炎互娱AI软件牌型概率发牌机...
我来教大家“闲逸碰胡辅助器ap... 亲,闲逸碰胡这款游戏可以开挂的,确实是有挂的,。但是开挂要下载第三方辅助软件,闲逸碰胡的开挂软件,名...
我来教大家“友聚麻将辅助器ap... 我来教大家“友聚麻将辅助器app官方下载最新版本更新”详细分享开挂一、友聚麻将AI软件牌型概率发牌机...