@PWM如何初始化
1、配置输出结构体
这段代码是使用定时器2的通道1来生成PWM信号的配置代码。下面是对每个配置项的解释:
//主输出通道开启。
timer_ocintpara.outputstate = TIMER_CCX_ENABLE;
//互补输出通道关闭。
timer_ocintpara.outputnstate =TIMER_CCXN_DISABLE;
//主输出极性高电平有效。
timer_ocintpara.ocpolarity = TIMER_OC_POLARITY_HIGH;
//互补输出极性高电平有效。
timer_ocintpara.ocnpolarity = TIMER_OCN_POLARITY_HIGH;
//:主输出空闲状态为低电平。
timer_ocintpara.ocidlestate = TIMER_OC_IDLE_STATE_LOW;
//互补输出空闲状态为低电平。
timer_ocintpara.ocnidlestate = TIMER_OCN_IDLE_STATE_LOW;
2、接下来是对PWM信号的具体配置:
//设置PWM脉冲宽度为500。
timer_channel_output_pulse_value_config(TIMER2, TIMER_CH_1, 500);
//设置PWM0模式,即高电平持续时间从计数器开始到达比较值时,输出为高电平,否则为低电平。
timer_channel_output_mode_config(TIMER2, TIMER_CH_1, TIMER_OC_MODE_PWM0);
//关闭输出通道的预装载功能。
timer_channel_output_shadow_config(TIMER2, TIMER_CH_1, TIMER_OC_SHADOW_DISABLE);
通过以上配置,定时器2的通道1将以PWM0模式生成PWM信号,脉冲宽度为500。主输出通道开启,互补输出通道关闭,并且主输出极性和互补输出极性均为高电平有效。在空闲状态时,主输出通道和互补输出通道都为低电平。