我用的AC7801FCLA我是这样调整我的pwm占空比,可以参考:
void UTILS_PwmDutySet(PWM_Type *pPwmInst, PWM_ChannelType pwmCh, uint32_t freq, uint16_t dutyRatio)
{
dutyRatio = (dutyRatio >= 100) ? 100 : dutyRatio;
uint16_t pres = 0;
pres = (freq < 1000) ? 10 : 0;
pres = (freq < 100) ? 100 : 0;
pres = (freq < 10) ? 1000 : 0;
uint16_t pwm_value = MOD_PWM(freq, pres) * dutyRatio / 100;
PWM_SetChannelCountValue(pPwmInst, pwmCh, pwm_value);
//printf("PWM Channel %d set duty ratio: %d\r\n", pwmCh, dutyRatio);
}
|