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.

[参考译文] TMS320F28P550SJ:IEC60730 的 CPU 测试

Guru**** 2589245 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1567180/tms320f28p550sj-cpu-testing-for-iec60730

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

工具/软件:

尊敬的 champs:

我向我们的客户询问这个问题。

用户参考 IEC60730 的 STL 库。

C:\ti\c2000\C2000Ware_5_05_00_00\libraries\diagnostic\f28p55x

问题:

1.对于 CPU 测试、用户正在测试 stl_cpu_reg.asm 中的函数 STL_CPU_REG_testCPURegisters () 。

奇怪的是、用户每 100 毫秒定期运行一次、如果用户对它进行了超过几分钟的测试、它可能会失败(错误的返回值-不是零)。

你有什么评论吗?

此函数是否可能会溢出栈或内存来进行长时间测试?

2.对于 CPU 测试,  

这些参数并不重要。

main()

...

while (1)

...

DINT;

状态=  STL_CPU_REG_testCPURegisters ();

EINT;

...

}

然后、用户会发现是否存在诸如 Timer0 ISR 之类的其他 ISR、长时间测试后(例如几秒钟)可能无法为 Time0 ISR 提供服务。

因此,我们感到困惑,如果 STL_CPU_REG_testCPURegisters () 会处理任何与 PIE 相关的?

用户是否必须在 DINT 之前存储 PIE 的状态并调用 STL_CPU_REG_testCPURegisters ()?

3.使用  STL_CPU_REG_testCPURegisters () 是否有任何限制?