从您提供的代码和描述来看,您在使用DSP28035产生SPWM(Sinusoidal Pulse Width Modulation)信号时,滤波后的正弦半波频率与理论值不一致。以下是一些可能的原因和解决方案:
1. 滤波器设计问题:滤波器的设计可能不适合您的应用,导致滤波后的信号频率与理论值不一致。您可以尝试调整滤波器的设计参数,例如截止频率、阶数等,以获得更好的滤波效果。
2. 采样频率不足:在数字信号处理中,采样频率需要满足奈奎斯特定理,即采样频率至少为信号最高频率的两倍。在您的例子中,正弦波频率为50Hz,三角波频率为30kHz,因此采样频率至少需要60kHz。请检查您的DSP28035的采样频率是否满足这个要求。
3. 载波比计算错误:您提供的载波比为n=600,但是根据您提供的代码,EPwm2Regs.CMPA.half.CMPA = 500; EPwm2Regs.CMPB = 500; 这里的值应该是载波比的一半,即300。请检查您的载波比计算是否正确。
4. 正弦波生成问题:您提供的正弦波生成公式为duty=500*sin(6.28*k/n),这个公式是正确的。但是,请确保您的k值是从0到n-1的整数,否则可能会导致正弦波生成错误。
5. 代码错误:请仔细检查您的代码,确保没有语法错误或者逻辑错误。如果可能,请尝试使用仿真工具进行调试,以便更容易地发现问题。
综上所述,您需要检查滤波器设计、采样频率、载波比计算、正弦波生成公式以及代码本身是否存在问题。希望这些建议能帮助您解决问题。
从您提供的代码和描述来看,您在使用DSP28035产生SPWM(Sinusoidal Pulse Width Modulation)信号时,滤波后的正弦半波频率与理论值不一致。以下是一些可能的原因和解决方案:
1. 滤波器设计问题:滤波器的设计可能不适合您的应用,导致滤波后的信号频率与理论值不一致。您可以尝试调整滤波器的设计参数,例如截止频率、阶数等,以获得更好的滤波效果。
2. 采样频率不足:在数字信号处理中,采样频率需要满足奈奎斯特定理,即采样频率至少为信号最高频率的两倍。在您的例子中,正弦波频率为50Hz,三角波频率为30kHz,因此采样频率至少需要60kHz。请检查您的DSP28035的采样频率是否满足这个要求。
3. 载波比计算错误:您提供的载波比为n=600,但是根据您提供的代码,EPwm2Regs.CMPA.half.CMPA = 500; EPwm2Regs.CMPB = 500; 这里的值应该是载波比的一半,即300。请检查您的载波比计算是否正确。
4. 正弦波生成问题:您提供的正弦波生成公式为duty=500*sin(6.28*k/n),这个公式是正确的。但是,请确保您的k值是从0到n-1的整数,否则可能会导致正弦波生成错误。
5. 代码错误:请仔细检查您的代码,确保没有语法错误或者逻辑错误。如果可能,请尝试使用仿真工具进行调试,以便更容易地发现问题。
综上所述,您需要检查滤波器设计、采样频率、载波比计算、正弦波生成公式以及代码本身是否存在问题。希望这些建议能帮助您解决问题。
举报