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.
工具/软件:
您好专家
客户在旧工程中使用 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