{
tiM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4 , ENABLE); /* 开启定时器 */
TIM_DeInit(TIM4);
//定时时间=((1+TIM_Prescaler )/72M)*(1+TIM_Period )
TIM_TimeBaseStructure.TIM_Period=(32-1); /* 自动重装载寄存器周期的值(计数值) */
/* 累计 TIM_Period个频率后产生一个更新或者中断 */
TIM_TimeBaseStructure.TIM_Prescaler= (1); /* 时钟预分频数 72M/72 */
TIM_TimeBaseStructure.TIM_ClockDivision=TIM_CKD_DIV1; /* 采样分频 */
TIM_TimeBaseStructure.TIM_CounterMode=TIM_CounterMode_Up; /* 向上计数模式 */
TIM_TimeBaseInit(TIM4, &TIM_TimeBaseStructure);
TIM_ClearFlag(TIM4, TIM_FLAG_Update); /* 清除溢出中断标志 */
TIM_ITConfig(TIM4,TIM_IT_Update,ENABLE); /* 使能中断 */
TIM_Cmd(TIM4, ENABLE); /* 开启时钟 */
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4 , DISABLE); /*先关闭等待使用*/
}
求助此为tim4的程序配置,当TIM_TimeBaseStructure.TIM_Prescaler 配置为 2 的时候 就会不出中断
中断 是在 程序需要的时候 才会去 打开 tim4 使能
就是停在 tim4 跳出的 地方
一周热门 更多>