初级会员

- 积分
- 152
- 金钱
- 152
- 注册时间
- 2015-12-5
- 在线时间
- 43 小时
|
10金钱
TIM8初始化代码如下:
主函数代码较简单就一个:
TIM_SetCompare1(TIM8, 0x0064);
现在问题是,CH1N总是输出PWM,而CH1输出不了PWM,哪位大神给解答一下
[mw_shl_code=applescript,true]void Tim8_CH1_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
TIM_OCInitTypeDef TIM_OCInitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM8,ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP; //TIM8_CH1
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_7;
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_Init(GPIOA,&GPIO_InitStructure);
GPIO_InitStructure.GPIO_Mode=GPIO_Mode_AF_PP;//TIM8_CH1N
GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Pin=GPIO_Pin_6;
GPIO_Init(GPIOC,&GPIO_InitStructure);
TIM_TimeBaseStructure.TIM_Period=499;
TIM_TimeBaseStructure.TIM_Prescaler=0;
TIM_TimeBaseStructure.TIM_ClockDivision=0;
TIM_TimeBaseStructure.TIM_CounterMode=TIM_CounterMode_Up;
TIM_TimeBaseInit(TIM8,&TIM_TimeBaseStructure);
TIM_OCInitStructure.TIM_OCMode=TIM_OCMode_PWM1;
TIM_OCInitStructure.TIM_OutputState=TIM_OutputNState_Enable;
TIM_OCInitStructure.TIM_OCPolarity=TIM_OCPolarity_High;
TIM_OCInitStructure.TIM_OutputNState=TIM_OutputNState_Enable;//互补输出
TIM_OCInitStructure.TIM_Pulse =100;//脉冲宽度,由这个设置N占空比
TIM_OCInitStructure.TIM_OCNPolarity=TIM_OCNPolarity_High;
TIM_OCInitStructure.TIM_OCIdleState = TIM_OCIdleState_Set;//高电平
TIM_OCInitStructure.TIM_OCNIdleState = TIM_OCNIdleState_Set;//高电平
TIM_OC1Init(TIM8,&TIM_OCInitStructure);
TIM_CtrlPWMOutputs(TIM8,ENABLE); //MOE 主输出使能
TIM_OC1PreloadConfig(TIM8,TIM_OCPreload_Enable);
TIM_ARRPreloadConfig(TIM8, ENABLE); //使能TIMx在ARR上的预装载寄存器
TIM_Cmd(TIM8,ENABLE);
}[/mw_shl_code]
|
|