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.

[参考译文] TMS320F28377D:结构指针用作函数输入时程序卡滞

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1501317/tms320f28377d-program-stuck-when-the-structure-pointer-is-used-as-function-input

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

工具/软件:

您好专家

客户在旧工程中使用 CCS6和 v15.12.3.LTS、并找到以下问题:

例如、我声称有一个以下结构:

结构体示例

UINT_16 VAR1

UINT_16 VAR2  

UINT_16 VAR3

& function_handler (& structure)指针

& example_instance 指针

}

我使用如下结构: 充足。 function_handler (eample.&example_instance) 、当 MCU 跳转到此 C 语句并进入非法中断时、可能会卡住、但此问题不会100%重现。

但是、如果我使用如下结构:  eample.function_handler (eample) MCU 运行良好。

有什么建议可以调试该问题吗?

谢谢

Joe

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

    您好 Joe、

    您是否在 C2000Ware 中引用了一个具体示例? 如果没有、上次成功编译此代码的 CCS 和编译器的最后版本是什么?

    您是否提供了有关在控制台窗口中观察到的错误消息的更多详细信息?

    此致、

    Ozino

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

    嗨、Ozino

    感谢您的回复、我们没有提及任何示例、在以这种方式调用函数时、不能在每个位置100%重现此问题:  充足。 function_handler (eample.&example_instance)、 客户 仅尝试 ccs6.2和 v15.12.3.LTS 编译器。

    有关更多详细信息、我尝试检查 NMI 以查看哪个问题会使程序进入非法中断、但未设置 NMI 标志:

    也没有复位  

    当我们研究反汇编时、程序在每次卡住之前都会执行"LCR *XAR7"

     控制台窗口未报告错误。

    谢谢

    Joe

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

    您能否确认您的 ISR 是否已正确配置? 请查看我们的中断常见问题解答、了解更多信息。

    您能描述在迁移到此编译器和 CCS 版本之前是否更改了源代码吗? 您是否具有处于已知工作状态的项目版本?

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

    嗨、 Ozino

    您能附上 中断常见问题解答链接、我无法直接在 TI.com 中找到该文档。

    您能描述在迁移到此编译器和 CCS 版本之前是否进行了任何源代码更改吗?

    客户不会将代码从不同版本的 CCS 和编译器迁移到6.2和15.12.3、他们一直使用相同版本的 IDE 和编译器来开发代码、但最近遇到了这个问题。

    客户不倾向于在外部共享代码、因此我没有工程。

    我先看看常见问题解答、看看是否可以找到一些线索。

    谢谢

    Joe

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

    这是中断常见问题解答 https://software-dl.ti.com/C2000/docs/c28x_interrupt_faq/html/index.html 的链接 

    您是否可以让客户创建工作代码和损坏代码的测试场景? 这将有助于我们能够在我们这边重现这一问题  

    谢谢!

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

    嗨、Ozino

    感谢您的回复、我将尝试让客户通过文档缩小问题范围、如果他们反馈了详细信息并需要对此问题进行进一步研究、我将打开一个新主题进行讨论。

    谢谢

    Joe