初级会员

- 积分
- 124
- 金钱
- 124
- 注册时间
- 2014-9-12
- 在线时间
- 7 小时
|
5金钱
//??×?????????
void TIM2_PWM_Init(u16 arr , u16 psc )
{
GPIO_InitTypeDef GPIO_InitStructure ;
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure ;
TIM_OCInitTypeDef TIM_OCInitStructure ;
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2,ENABLE );
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_AFIO, ENABLE );
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_InitStructure.GPIO_Speed =GPIO_Speed_50MHz;
GPIO_Init(GPIOA , &GPIO_InitStructure);
// ??????TIM2 ur
TIM_TimeBaseStructure.TIM_Period = arr ;
TIM_TimeBaseStructure.TIM_Prescaler = psc ;
TIM_TimeBaseStructure.TIM_ClockDivision = 0 ;
TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up;
TIM_TimeBaseInit (TIM2 , &TIM_TimeBaseStructure );
//??????TIM2 Channel2 PWM ????
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM2;
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
TIM_OCInitStructure.TIM_OCNPolarity = TIM_OCNPolarity_High ;
TIM_OC2Init(TIM2 , &TIM_OCInitStructure );
TIM_OC2PreloadConfig (TIM2 ,TIM_OCPreload_Enable );
TIM_Cmd (TIM2 , ENABLE );
}
|
最佳答案
查看完整内容[请看2#楼]
TIM_OC2Init(TIM2 , &TIM_OCInitStructure );
TIM_OC2PreloadConfig (TIM2 ,TIM_OCPreload_Enable );
改成
TIM_OC3Init(TIM2 , &TIM_OCInitStructure );
TIM_OC3PreloadConfig (TIM2 ,TIM_OCPreload_Enable );
然后设置
TIM_SetCompare3(TIM2, pwm_value);
|