欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

STM32学习(三)cubemx+HAL库 定时器中断

程序员文章站 2022-03-13 17:17:53
...

平台

硬件平台:战舰开发板
芯片:stm32f103ze
环境:MDK5 +CubeMX

配置

1.时钟和debug配置
2.定时器配置
STM32学习(三)cubemx+HAL库 定时器中断时钟源选择内部时钟,不用选择通道,重点是参数的配置,这决定了定时的时间,这里我们系统时钟用了8MHZ,分频系数取799,周期取4999,则定时器开启到进入中断应该是(800*5000/8)us,即500ms。注意都是16位的,取值不可超过65535。
STM32学习(三)cubemx+HAL库 定时器中断注意开启中断。

代码

HAL_TIM_Base_Start_IT(&htim1);

在主函数中开启定时器,计时开始。

void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim){
	if(htim->Instance == htim1.Instance){
		HAL_GPIO_TogglePin(GPIOB,GPIO_PIN_5);
	}
}

每0.5s后进入此中断回调函数(写在main函数外),对PB5进行电平的翻转,这样有助于给系统一个固定的节拍。

相关标签: stm32