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.

TMS570LC4357: N2HET与CPU联合调试相关问题

Part Number: TMS570LC4357

1:配置寄存器HETGCR.IS=0,按照23.4.4节介绍的方式使用N2HET模块,当CPU在断点处停止时N2HET模块并未停止工作。

与手册介绍的N2HET在CPU停止时也会停止工作不符。这需要额外的配置或操作吗?

2:按照23.1.7节介绍的方式配置断点,在N2HET停止后,CPU没有停止工作,继续正常运行。与手册介绍的CPU在N2HET停止时也会停止工作不符。此处需要额外的配置或操作吗?

3:按照23.1.7节介绍的方式配置CPU和N2HET的重新启动。N2HET直接工作而不需等待CPU退出debug状态。

这与手册介绍的N2HET在CPU离开debug状态后才会自动开始运行不符。重新启动需要额外的配置或操作吗?

  • 您好,您的问题我们需要升级到英文论坛寻求帮助,如有答复将尽快回复您。

  • 您好,

    关于第一个问题,工程师这边也进行了测试,您说得对,即使我们暂停 LC4357的调试,N2HET 波也不会停止。 同时工程师也在 RM46板中进行了相同的测试,但如果我们清除 GCR 寄存器的第17位(忽略暂停),测试将会停止。 

    工程师还在进行调试,如果有新的进展会尽快给到您答复。

  •  同时工程师也在 RM46板中进行了相同的测试,但如果我们清除 GCR 寄存器的第17位(忽略暂停),测试将会停止。 ”此处表述是否有误?清除 GCR 寄存器的第17位会使N2HET忽略暂停,那么暂停 LC4357后,N2HET应该不受影响继续运行。

  • 您好,

    工程师有一个更好的建议来停止 N2HET 程序。

    只需要设置指令程序字段中的第22位即可在指令执行后立即停止 N2HET 程序。 例如,您想在第一条指令之后停止 N2HET 程序。

    然后首先要知道 N2HET 程序的起始地址 

    在举的例子中它是"0xFF460000U",这意味着我的程序将从该地址开始,并且第一条指令将仅在该地址中。 

    这里的程序字段值是"0x00002C80U",示第22位为0。 因此,如果现在我想停止该程序,就只需在内存浏览器窗口中设置该位。 

    在设置第22位值之后,N2HET 程序将暂停,且无法再看到 PWM 波形。 为了再次运行 N2HET 程序,我们只需要重新启动代码。

    虽然N2HET 位看上去会有些问题,但是这是我们可以建议的最好的方法,因为该方法可以在任何指令上停止执行并且可以查看状态。 

    详情请见英文论坛答复。