前言
本文记录下我学习STM32CubeMX时的流程,方便以后回忆。系统板是基于STM32F103C6T6。本章记录定时中断。
步骤
实验目标:利用定时器TIM2装载计数,1S的定时中断事件,事件是LED(PC13)的亮灭。
-
配置时钟源为外部高速源(HSE),流程省略,配置LED(PC13)为输出管脚省略,工程文件输出keil工程配置省略。
-
配置TIM2中断。
-
修改时钟主频,不同的定时器,在的桥接(APBx)不一样。APB2:TIM1,TIM8 APB1:除了1,8其余的都在。
-
配置TIM2,主要配置时钟源,和分频系数之类的
-
使能NVCI TIM2,完成后生成代码。
-
-
在keil中打开工程。
-
关键函数,原型可在右击函数后,跳转声明查看。
//一般在主函数下,循环前编写 //启动TIM2 HAL_TIM_Base_Start_IT(&htim2); //重写定时中断函数 void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) { //判断信号是否来自TIM2 if(htim->Instance==TIM2) { //LED(PC13)端口反转 HAL_GPIO_TogglePin(GPIOC, GPIO_PIN_13); } }
-
图片(考虑到太大就截选了)
启动TIM2函数
重写定时中断函数
-