- TIM3挂载APB1上,设置时钟:
2.设置分频与计数,每500ms 灯亮灭1次
说明:(arr+1)(psc+1)=0.5×8×106=4000000.(APB1时钟8MHz,500ms=0.5s),这里取arr=4000-1, psc=1000-1
3. 中断使能
4. 中断优先级
5. KEIL中完成软件编程部分
-TIM3定义与初始化(main函数中)
MX_TIM3_Init();
-开启TIM3中断(由具体应用决定)
__HAL_TIM_SET_COUNTER(&htim3,0);//CNT清零
HAL_TIM_Base_Start_IT(&htim3);//在中断模式下启动定时器3
-结束TIM3中断(由具体应用决定)
HAL_TIM_Base_Stop_IT(&htim3);//不使能定时器3
__HAL_TIM_SET_COUNTER(&htim3,0);//CNT清零
-在TIM3中断处理函数中完成LED翻转
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim){
if (htim->Instance == TIM3){
LED_TRAGGLE;
}
}