STM32cubeMX 定时器中断时验

首先选定一个定时器,了解你的时钟配置

STM32cubeMX 定时器中断时验_第1张图片

图中定时器的总线都是72M,我们选定定时器3,如果我们想要一秒触发一次定时器中断的话,应该将这个定时器设为1Hz,按照如下配置,但是因为我们用的是内部时钟,上图可知是8M,所以应按照如下配置:

STM32cubeMX 定时器中断时验_第2张图片

8,000,000 / 4000 / 2000 = 1Hz, 

然后我们在代码中添加如下片段:

		printf("begin\n");
		HAL_TIM_Base_Start_IT(&htim3);

然后再添加如下片段:

void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)

{

if (htim->Instance == htim3.Instance){
	printf("htim3\n");
    }

}

然后烧录程序进去,可以在串口一看到一秒一次的打印内容

你可能感兴趣的:(STM32,STM32cubeMX)