我使用定时器1的通道3输出PWM时候遇到的问题,(PA10,PB15)输出周期100us,脉宽10us,同时开启了中断,100us进入一次中断,反转PB4.使用STlink下载后进入中断的频率是预设的,不断电的情况下,按复位键重启也正常,但是只要断电后重启中断频率就不正常了,但是PWM输出仍然是预设的.仿真也没问题,不知到底是哪里配置错了.望遇到类似问题给予解答,谢谢.这是我测试的.我使用的芯片是STM32F103C8T6.
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
TIM_TimeBaseStructure.TIM_Period = arr;//设置在下一个更新事件装入活动的自动重装载寄存器周期的值
TIM_TimeBaseStructure.TIM_Prescaler = psc;//设置用来作为TIMx时钟频率除数的预分频值
TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; //设置时钟分割:TDTS = Tck_tim
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; //TIM向上计数模式
TIM_TimeBaseStructure.TIM_RepetitionCounter = 0;
TIM_TimeBaseInit(TIM1, &TIM_TimeBaseStructure); //根据指定的参数初始化TIMx的时间基数单位
加个这个 好了 TIM_TimeBaseStructure.TIM_RepetitionCounter = 0;
加过这个不行的 TIM_DeInit(TIM1);
TIM_TimeBaseStructure.TIM_Period = arr;//设置在下一个更新事件装入活动的自动重装载寄存器周期的值
TIM_TimeBaseStructure.TIM_Prescaler = psc;//设置用来作为TIMx时钟频率除数的预分频值
TIM_TimeBaseStructure.TIM_ClockDivision = TIM_CKD_DIV1; //设置时钟分割:TDTS = Tck_tim
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; //TIM向上计数模式
TIM_TimeBaseStructure.TIM_RepetitionCounter = 0;
TIM_TimeBaseInit(TIM1, &TIM_TimeBaseStructure); //根据指定的参数初始化TIMx的时间基数单位
加个这个 好了 TIM_TimeBaseStructure.TIM_RepetitionCounter = 0;
加过这个不行的 TIM_DeInit(TIM1);
一周热门 更多>