This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320F2800137: 芯片主频偏差问题

Part Number: TMS320F2800137
Other Parts Discussed in Thread: LAUNCHXL-F2800137, SYSCONFIG

配置PWM模块期望设计输出频率为15kHz的驱动波形,实际测试发现自己做的控制板输出是15.1kHz,而使用开发板LAUNCHXL-F2800137烧录一模一样的程序,频率是15.03kHz,如下图所示:

自己设计的控制板线路截图如下:

其中震荡器电容选用的是跟开发板LAUNCHXL-F2800137相同的12pF容值。晶振使用的是20MHz,晶振参数如下:

帮忙看下频率不准是哪里的问题,同时想了解下如果频率有偏差的话,DSP内部是否有寄存器可以修正这个偏差?

  • 已经收到了您的案例,调查需要些时间,感谢您的耐心等待。

  • 您好,

    您能否与客户确认他们是否可以使用示波器进行以下测量之一:

    1.) 测量 X1引脚的频率。

    2.) 在 driverlib 中运行示例 sysctl_ex2_xclkout 并选择将 X1或 SYSCLK 输出至 XCLKOUT 引脚。 使用 SysConfig 配置时钟源和 XCLKOUT 引脚和分频器。

    需要检查源时钟是否是问题所在,或者是否是ePWM时钟导致偏差。

  • 你好,用示波器测了下芯片第42脚(X1)对GND的电压,发现电压值很小,几乎可忽略不计,很奇怪,如下图。用自己设计的控制板和LAUNCHXL-F2800137板都试了下,结果一致。示波器的设置和探头应该没有问题(为排除示波器和探棒问题,另外测试了一块28034的板子的晶振输入电压是没有问题)。

    另外可能不是ePWM时钟偏差,还是怀疑是芯片主频有偏差。因为之前用过eCAP模块做交流信号输入频率捕获,引脚输入50Hz,通过eCAP计算出来频率是50.3Hz。eCAP的计数步长也是有偏差的。

  • 您好,

    您能在器件初始化例程期间发送时钟设置吗? 鉴于 X1中没有波形、XTAL 似乎不是选择的时钟源。 可能选择的 INTOSC 不提供非常准确的 SYSCLK 信号、从而导致 ePWM 频率偏差。

  • 您好,偏差的问题已经解决。

    正是如您说的,程序在芯片上电初始化配置时选择了内部时钟源,所以有偏差。修改为外部时钟源后,就能够测到X1脚的震荡电压,同时PWM频率偏差的问题也随之解决。如下图所示。多谢答疑!!

  • 您好,

    感谢反馈,因为问题解决,此贴关闭。