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/TMS320F28069:CLA 库不能在".hex"文件中工作、但在".out"文件中工作

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/863772/ccs-tms320f28069-cla-lib-cannot-work-in-hex-file-but-ok-in-out-file

器件型号:TMS320F28069

工具/软件:Code Composer Studio

您好、香榭丽舍

客户已将".out"文件下载到其 F28069板中、该文件运行良好。

但是、在 CCS 中将这个".out"文件转换为".hex"文件、然后将".hex"文件下载到同一电路板后、它将无法正常工作。

在查看详细信息后、他们发现在 CLA 中调用 SIN 库、COS 在 下载 ".hex"文件后无法按预期工作。

您是否愿意建议需要检查哪些配置来解决此问题? 谢谢!

此致、

Linda

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

    [引用 user="Linda Zhang84708"]但在 CCS 中将该".out"文件转换为".hex"文件、然后将".hex"文件下载到同一个板中后、该文件将无法正常工作。

    Linda、

    请提供有关文件转换方式和加载方式的详细信息。  这是闪存项目还是 RAM 项目?  是否使用了闪存编程器?

    [引用用户="Linda Zhang84708"]在查看详细信息后,他们发现 在 SIN 的 CLA 调用库中,COS 在下载 ".hex"文件后无法按预期工作。

    请提供更多信息,说明观察到的情况和出现的问题。  当调用 sin、cos 时会发生什么情况? 反汇编的屏幕截图可能有助于调试该问题。

    Lori  

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

    您好 Lori、

    客户发现此问题与 CLA 初始化代码中的以下配置有关:

    --------------------------------------------------------------------

    //通过 CLA 代码复制(如果从闪存以独立模式运行)

    Memcopy (&Cla1funcsRunStart、&Cla1funcsLoadStart、(uint32)&Cla1funcsLoadSize);

    //复制 CLA 数学表(如果从闪存以独立模式运行

    //并使用 CLAMath 库)

    Memcopy (&Cla1mathTablesRunStart、&Cla1mathTablesLoadStart、(UINT32)&Cla1mathTablesLoadSize);

    --------------------------------------------------------------------

    如果执行了两个"memcopy"代码、".out"文件可以正常工作;下载转换后的".hex"文件后、CLA 中的"sin "函数无法正常工作。

    但是、如果只注释第二个"memcopy"代码、 CLA 中的"sin"函数在下载转换后的".hex"文件后可以正常工作。

    请提供帮助吗? 谢谢!

    此致、

    Linda

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

    [引用用户="Linda Zhang84708"]

    如果执行了两个"memcopy"代码、".out"文件可以正常工作;下载转换后的".hex"文件后、CLA 中的"sin "函数无法正常工作。

    但是、如果只注释第二个"memcopy"代码、 CLA 中的"sin"函数在下载转换后的".hex"文件后可以正常工作。

    [/报价]

    Linda、

    我不知道为什么会这样。  我希望这两个 memcopy 函数都是必需的。  在这两种情况下、为了使 sin 函数正常工作、应该需要 CLA 数学表。

    他们如何加载 hex 文件?  它是通过引导加载程序加载到 RAM 中吗?   

    如果它们加载十六进制、则只能.out 文件加载符号。  这将使它们能够在加载十六进制后单步执行程序。   这将有助于确定 memcopy 导致问题的原因。    

    此致

    Lori