为什么计算是 25%的占空比呢?
系统时钟为80M
分频系数为 PWMX_CLKCfg 设置?
时钟周期为 PWMX_CycleCfg 设置?
那么 PWM输出频率计算公式为
(系统时钟) / (分频系数) /(时钟周期) =80M / 4 / 64M? = 0.3125 ?
PWM占空比计算公式为
(Pwm_Data) /(时钟周期) = (16 / 64) /(64)* 100%??
为什么计算是 25%的占空比呢?
系统时钟为80M
分频系数为 PWMX_CLKCfg 设置?
时钟周期为 PWMX_CycleCfg 设置?
那么 PWM输出频率计算公式为
(系统时钟) / (分频系数) /(时钟周期) =80M / 4 / 64M? = 0.3125 ?
PWM占空比计算公式为
(Pwm_Data) /(时钟周期) = (16 / 64) /(64)* 100%??
默认主频是跑的60M。
周期计算:
占空比计算:
按照上图的公式?
占空比是(64/4)/ 64
pwmx_cycle_64就是PWM输出周期(周期=64)?
那pwm输出频率就是1/64 ?
PWMX_CLKcfg() 有什么作用?
前面的255/5是PWMX_ACTOUT的第二个参数。
后面的255是PWMX_CycleCfg填入的参数。
这样计算下来正好是20%占空比。
PWMX_CLKCfg(4) 没有用? (系统时钟主频没关系?)
如果按这样计算
PWMX_CycleCfg(PWM输出周期)就可以直接设置输出周期了?
如果是这样那么PWM输出频率就是(1/PWM输出周期)?
发送邮件至邮箱lpc@wch.cn,我们这里提供讲解。
按注释计算与结论不符合?
您好,可以参考下手册中的计算公式,
Ncyc为PWMX_CycleCfg(PWMX_Cycle_64);设置的值,结果应在31-256之间,共八档。
占空比为此函数 PWMX_ACTOUT(CH_PWM4, 64 / 4, Low_Level, ENABLE); 中的第二个参数/Ncys
即64/4/64*100%=25%;
PWM频率=60M/4/64=234375Hz
周期=64*4/60M=0.00000426秒=4.26微秒
实际抓取结果与计算结果相近: