STM32普通定时器中断实验

在STM32单片机里,TIM定时器简单来说就是用来定时的设备,是STM32单片机的一个外设。STM32总共有8个定时器,分别是2个高级定时器(TIM1、TIM8),4个通用定时器(TIM2、TIM3、TIM4、TIM5)和2个基本定时器(TIM5、TIM6)。

下图为几种定时器的部分分类,在本实验中我们不做详细介绍,在介绍讲解笔记中我们再做介绍。

STM32计时器的输出时间由公式Tout=(Arr+1)*(PSC+1)/Ft计算。其中PSC是预分频系数,Arr是自动装载系数,Ft是对应的总线时钟频率,TIM的时钟频率是72MHz。

在本实验中,我们要求用TIM6实现500ms定时器更新中断,在中断中反转LED0。

接下来我们介绍实验代码。

我们先写头文件btim.h:

#ifndef __BTIM_H
#define __BTIM_H

#include "./SYSTEM/sys/sys.h"
#include "./BSP/LED/led.h"

extern TIM_HandleTypeDef g_timx_handle;

void btim_timx_init(uint16_t arr, uint16_t psc);
void HAL_TIM_Base_MspInit(TIM_HandleTypeDef *htim);
void TIM6_IRQHandler(v
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值