STM32F103利用CubeMX配置开启定时中断

1、外部晶振8MHz,下载方式SWD模式,需求配置定时器1,产生每100ms一次中断

新建工程、配置晶振、选择下载方式等略

2、查阅资料,STM32F103的时钟树分配

 3、配置CubeMX的时钟树

 4、配置定时器-开启定时中断

 5、配置定时时间

定时周期 = (Prescaler + 1) × (Period + 1) ÷ 时钟频率 单位:秒(S))

由步骤3知,时钟频率72MHz = 72 × 10^6(Hz)

定时100ms = 0.1(S) ,故(Prescaler + 1) × (Period + 1) = 0.1×72×10^6=72×10^5

(Prescaler + 1)(Period + 1)的值均不能大于65535,这里选择 Prescaler = 7200-1;Period =1000-1;

 6、代码生成

7、补充初始化代码

 放在main函数里,死循环之前,系统配置的初始化之后

	__HAL_TIM_CLEAR_FLAG(&htim1, TIM_FLAG_UPDATE);//启用前清除TIM中断标志位
	__HAL_TIM_CLEAR_IT(&htim1, TIM_IT_UPDATE);//启用前清除TIM中断
	HAL_TIM_Base_Start_IT(&htim1);//开启TIM计数

8、调用定时服务中断

//TIM定时返回函数
void HAL_TIM_PeriodElapsedCallback (TIM_HandleTypeDef *htim)//回调函数
{

	if(htim->Instance == TIM1)//判断进入定时1通道回调函数
	{

    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

逐梦之程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值