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.

[参考译文] CCS/TMS320F280049C:CLA 调试

Guru**** 2022830 points
Other Parts Discussed in Thread: C2000WARE
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/933284/ccs-tms320f280049c-cla-debugging

器件型号:TMS320F280049C
主题中讨论的其他器件:C2000WARE

工具/软件:Code Composer Studio

您好!

我们已经验证了在 C28x 上运行的 ePWM1 INT ISR 代码、其中包含电流环路计算。在 C28x 上运行的 ISR 会导致稳定的电流环路和低 iTHD。  

当我们测试  CLA 上运行的 ISR 代码时、电流环路变得不稳定。 ISR 代码与 C28x 相同。 在调整 PI 参数时、可以改善电流环路的不稳定性。 因此、我们猜不稳定的情况可能来自 CLA FPU32中的浮点变量运算。

 

CLA 和 C28x 处理浮点数字是否有任何差异?

2.库文件中是否有任何问题? 我们使用最新的 C2000Ware 和库?

 

F28004x_CLADATROM_Symbols_eabi_fpu32.lib

cla1_math_library_datarom_fpu32_eabi.lib

DCL_DF22_C1.asm

DCLCLA.h

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    [引用 user="Minghan Dong"]ISR 代码与 C28x 相同。 在调整 PI 参数时、可以改善电流环路的不稳定性。 因此、我们猜不稳定的情况可能来自 CLA FPU32中的浮点变量运算。

    需要检查的一点是、在 CLA 初始化任务中、MSTF 寄存器中的舍入模式 RNDF32设置为1。  在 C28x 上、编译器为您执行此操作、但在 C28x 上、RNDF32默认为0、初始化代码应将其更改为1、以匹配 C28x 处理舍入的方式。

    这可以通过以下方式在汇编语言中完成:

    MSETFLG RNDF32=1 ;四舍五入到最近的偶数 

    在 C 代码中、可以使用 _msetflg 内在函数来完成该操作。  请参阅 CLA 编译器、CLA 内在函数下的 C 编译器用户指南。  (http://www.ti.com/lit/spru514)在该内在函数的说明中、有一个示例展示了如何设置舍入模式。  

    [引用 user="Minghan Dong"]1. CLA 和 C28x 之间浮点数字的处理是否有差异?[/quot]

    否、如果舍入模式设置与上述相同。

    [引用 user="Minghan Dong"]2..库文件中是否有任何问题? 我们使用最新 的 C2000Ware 和库?[/quot]

    没有已知问题。  

    此致

    Lori