OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3243|回复: 1

求解TIM8互补输出无法输出pwm的问题

[复制链接]

5

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2015-12-5
在线时间
43 小时
发表于 2016-5-3 00:14:39 | 显示全部楼层 |阅读模式
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]


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2016-5-4 22:38:34 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-9 22:32

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表