你(们)好
我一直在项目中使用 CPU 定时器0 ISR 来生成正弦波。
我使用带有20kHz ISR 的 rampgen 库生成了50Hz 正弦波。 但是、当我使用精密功率分析仪观察到它时、它显示为50.2Hz。
因此、我使用49.8Hz 作为斜升频率、得到50Hz 输出。
但我还注意到、功率测量正弦分析器库还检测到频率为49.8Hz 、而实际频率为50Hz。
已使用 GPIO 切换和示波器检查 ISR 运行频率。 输出显示为20.16kHz。
因此、我使用 CPU 定时器0周期配置值、发现50.2微秒可提供我想要的准确输出。 一切都和预期的一样。
对于20kHz、正确的周期值应为50。 但工作值为50.2。 为什么会这样。
ConfigCpuTimer (&CpuTimer0、90、50.2);
此致
Damith