TI E2E™ 设计支持论坛将于 5 月 30 日至 6 月 1 日进行维护。如果您在此期间需要技术支持,请联系 TI 的客户支持中心寻求帮助。

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.

[参考译文] TMS320F280049C:280049 cpset Restart

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1241598/tms320f280049c-280049-cpuset-restart

器件型号:TMS320F280049C
主题中讨论的其他器件:LAUNCHXL-F280049C

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

    您好、TI 专家!

    LAUNCHXL-F280049C 是我的开发板。 我将通过 CCS10.2调试该程序。
    当我点击 CCS 菜单"CPU reset"时,程序从地址0x3fc7a5开始。
    然后程序运行并在文件 autocinit.h 中停止。 源代码如下所示:

    if (&&_TI_Handler_Table_Base!=&&_TI_Handler_Table_Limit)
    {
    char * const * table_ptr =_TI_CINIT_Base;
    char * const * TABLE_LIMIT =_TI_CINIT_LIMIT;

    while (table_ptr!= table_limit)
    {
    char const * load_addr =* table_ptr++;
    char * run_addr =*表_ptr++;
    char handler_idx =* load_addr++;

    handler_fn_t handler =__ TI_Handler_Table_Base [ handler_idx];
    处理程序(load_addr、run_addr);

    我检查了汇编窗口、发现了一个奇怪的信息。(请参阅 picture--0x83459.jpg,0x837C4.jpg)
    程序在地址0x83459处运行后:MOVL XAR7、*+ XAR5[0]

    @XAR5=0X837C4、* XAR5=0X8340D、

    寄存器@XAR7应为0X8340D、。
    但是寄存器@XAR7的 resumt 为0x8240D。

    因此、这将使我的程序崩溃。

    这使我困惑。为什么?