定时器1.选择内部时钟,点击NVIC Settings勾选 TIM1 update interrupt
根据公式
生产工程文件,打开项目,打开time.c文件,查询相关函数
在time.c重写函数,然后在time.h声明一下标志位 extern int printfbit;
int printfbit = 0; // 标志位
int timecount = 0; // 定时器计数 ++ 到1000等于1s
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim){ //定时器溢出中断回调函数
if(htim->Instance == TIM1){
timecount ++;
if(timecount>=1000){ // 等于1s
timecount = 0; // 清空
printfbit = 1; // 标志一下
}
}
};
最后在主函数调用,使用
HAL_TIM_Base_Start_IT(&htim1); // 开启定时器1
if(printfbit ==1){
printfbit =0;
printf("time +1s \n");
}
实例图: