我正在使用设置为反相输出的16位计时器处理2kHz 周期的 PWM。 除了在100%的 PWM 下、所有功能都运行良好、输出会关闭而不是稳定地打开。 器件中是否存在一些诀窍或错误?
可在高达99.9%的占空比下正常工作。
频率设置如下(初始化期间):
TimerLoadSet (TIMER0_BASE、TIMER_A、SysCtlClockGet (system_clock_speed)/2000); //步骤5 - PWM freq 2kHz
通过调用来设置 PWM:
TimerMatchSet (TIMER0_BASE、TIMER_A、PWM_2K_DUTY (value));
其中:
#define PWM_2K_DUTY (x)(uint32_t)((x * M3_PWM_FREQ)/ 1000)
#define M3_PWM_FREQ (SysCtlClockGet (system_clock_speed)/2000)
值为%x10。 例如、 999 = 99.9%
