打印
[开发工具]

关于stm32l151 tim4 中断问题

[复制链接]
248|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jcky001|  楼主 | 2024-7-25 15:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
{
    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 使能

使用特权

评论回复
沙发
Bowclad| | 2024-7-26 11:37 | 只看该作者
分频太快了吗

使用特权

评论回复
板凳
两只袜子| | 2024-7-26 11:42 | 只看该作者
在配置完TIM4后,不要调用RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4, DISABLE)

使用特权

评论回复
地板
cr315| | 2024-7-26 11:42 | 只看该作者
检查NVIC配置

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1473

主题

4212

帖子

6

粉丝