既然原理都明白了,接下来就让我们来看看官方例程中的相关代码吧(有一点小小修改),将disable更改为enable。
关闭使能后会造成无法无PWM输出的问题。
PWM5_P03_OUTPUT_ENABLE;//使能PWM5_P03的输出
PWM_IMDEPENDENT_MODE;//配置模式
PWM_CLOCK_DIV_8;//8分频
PWMPH = 0x07;//周期设定1ms
PWMPL = 0xCF;
/**********************************************************************
PWM frequency = Fpwm/((PWMPH,PWMPL) + 1) <Fpwm = Fsys/PWM_CLOCK_DIV>
= (16MHz/8)/(0x7CF + 1)
= 1KHz (1ms)
***********************************************************************/
set_SFRPAGE;//PWM4 and PWM5 duty seting is in SFP page 1
PWM5H = 0x01;//500(Dec)
PWM5L = 0xf4;
clr_SFRPAGE;
// PWM output inversly enable
PWM5_OUTPUT_INVERSE;//开启极性控制
//-------- PWM start run--------------
set_LOAD;
set_PWMRUN;
|