主题中讨论的其他器件:TMS320F28388D、
您好!
我最近收购了两个 TMDSCNCDC28388D、因为我在发出过多的闪存 API 异步写入命令后锁定了最后两个 TMDSCNCDC28388D。 (请参阅此帖子 https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/991883/tms320f28388d-can-t-access-flash-after-issuing-many-flash-api-async-programming-commands/3684698#3684698)
这些板的修订版是 MCU063B、因此我根据 TSM320F28388D TRM 升级了 PLL gestion、一切都很好。 关于上述帖子、我在每个闪存 API 函数调用中添加了防御代码、因此在闪存 API 机器处于忙状态时不能发出任何命令。 我在我们的专有电路板上开发了该解决方案、直接嵌入 TMS320F28388D 微控制器、同时等待新的 controlBOARD 推出。 我们的电路板上的一切工作正常 、我们的产品仍然正常运行、读取和写入闪存、正如应用所需要的那样。
收到两个新的 TMDSCNCDC28388D 后、我一直在处理其他应用、没有任何问题、直到我返回处理我的闪存读/写应用。 在我开发/调试它的过程中、程序工作正常。 由于我添加了大量防御代码、并且它在 我们的专有板上运行了几周、因此我没有想到会出现任何新问题。
但是、当 我拔下 USB 电缆(JTAG 和电源)时、让应用在 TMDSCNCDC28388D 上运行、微控制器似乎肯定会停止运行。 应用程序通过 CAN 总线进行通信、因此可以很直接地检查微控制器是否正在执行任何操作。 每当我尝试连接到 JTAG,或者尝试重新编程微控制器时,都会出现以下错误:
"C28xx_CPU1:连接到目标时出错:(错误-1135 @ 0x0)调试探针报告错误。 确认调试探针配置和连接、重置调试探针、然后重试此操作。 (仿真包9.3.0.00042)"
我已经尝试过上述帖子中的所有内容。 主要区别和我们怀疑的问题是、我们的专有电路板上的 TMS320F28388D 3V3上有一堆电容器在执行分离后保持大约20ms 的时间、因此无论闪存管理器在做什么、 在执行实际上消失之前、需要完成时间;而在 TMDSCNCD28388D 上、每当拔下 USB 电缆时、执行会立即消失、因此闪存管理器可能处于未定义状态、并执行一些不确定的写入操作、这可能会损坏闪存。
- 我在您的任何文档中都没有看到在执行闪存 API 函数时断开电源可能会造成破坏性。 那么、我的假设可能是错误的?
- 此错误-1135 @ 0x0意味着什么?
- 我在第二块板上重复了该问题、两块板现在都锁定了。 我需要让他们恢复正常工作状态、以便能够获得任何帮助。 我完全无法连接到 JTAG、它不再发送任何 CAN 帧、因此微控制器很可能完全不使用。
谢谢、此致、
昆廷