调试STM32 time遇到的问题小结
扫描二维码
随时随地手机看文章
程序中增加新的time,在初始化中不能进行写入寄存器。原因是没有进行相关的初始化,有个寄存器没有进行使能操作。
程序如下:
void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base)
{
//GPIO_InitTypeDef GPIO_InitStruct;
if(htim_base->Instance==TIM7)
{
__TIM7_CLK_ENABLE();
HAL_NVIC_SetPriority(TIM7_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(TIM7_IRQn);
}
else if(htim_base->Instance==TIM3)
{
__TIM3_CLK_ENABLE();
}
else if(htim_base->Instance==TIM1)
{
__TIM1_CLK_ENABLE();
}
else if(htim_base->Instance==TIM2)
{
__TIM2_CLK_ENABLE();
HAL_NVIC_SetPriority(TIM2_IRQn, 1, 0);
HAL_NVIC_EnableIRQ(TIM2_IRQn);
}
在添加使能操作的时候,如果定义time是产生中断的,也要添加如上图红色字体。
}