STM32F051c8t6定时器问题

2019-08-22 14:30发布

大家好,

       我用定时器3和定时器15来计数,两个定时器的配置都是一样的,但是time3可以工作,但是time15就工作不了。麻烦大家帮我分析一下。


void My_Time_Init(void)
{       
        NVIC_InitTypeDef NVIC_InitStructure;
        TIM_TimeBaseInitTypeDef  TIM_TimeBaseStructure;
        RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE);

        TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1;
        TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
        TIM_TimeBaseStructure.TIM_Period = 9999;
        TIM_TimeBaseStructure.TIM_Prescaler = 4799 ;
       
        TIM_TimeBaseInit(TIM3,&TIM_TimeBaseStructure);
       
        TIM_ITConfig(TIM3,TIM_IT_Update,ENABLE);
       
        TIM_Cmd(TIM3,ENABLE);
       
        NVIC_InitStructure.NVIC_IRQChannel=TIM3_IRQn;
        NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;
        NVIC_InitStructure.NVIC_IRQChannelPriority=0;
        NVIC_Init(&NVIC_InitStructure);
}


void TIM3_IRQHandler(void)
{
           if(TIM_GetITStatus(TIM3,TIM_IT_Update)!=RESET)
                 {
       TIM_ClearITPendingBit(TIM3,TIM_IT_Update);
                         time_count++;
     }
}


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
正点原子
1楼-- · 2019-08-22 17:32
 精彩回答 2  元偷偷看……
wzy1992
2楼-- · 2019-08-22 20:03
正点原子 发表于 2016-7-20 20:22
确定有没有tim15先吧

有的呀。
刘瑶瑶
3楼-- · 2019-08-22 23:54
帮顶一下
Electronic
4楼-- · 2019-08-23 05:48
你可能是时钟打开错了,用错了函数,TIM15是在APB2,不是在APB1,我估计你是把TIM3直接修改为TIM15,这样编译不会报错的
szczyb1314
5楼-- · 2019-08-23 09:31
定时器15,这么厉害

一周热门 更多>