我们在使用 iMXRT1170 的工具时遇到了很多问题。毫不夸张地说,我们花费了大约 50% 的时间来尝试刷新和调试我们的应用程序。这非常令人沮丧,我正在寻求有关这可能是根本原因的建议。似乎我们的项目中有一些东西经常使 MCU 处于错误状态,调试器无法与其建立联系。
我们目前在 Windows 10 和 11 以及 iMXRT1170 EVK 上使用 MCUXpresso 11.5.1。我们还尝试了以下内容:
- MCUXpresso 11.5.0、11.4.1
- Ubuntu 18.04、Ubuntu 20.04
- macOS Big Sur
- 来自 Embedded Ar
tists 的 iMXRT1170 uCOM 开发套件
- 板载 EVK 调试器
- MCU Link Pro
- MCU Link
我们无法通过其中任何一个获得稳定可靠的编程/调试流程!!
我们遇到的错误分为以下几类
1. 未检测到目标
尝试编程时,仅检测到 M4 内核。不是M7。不知何故CPU处于不良状态?
电源循环有时会有所帮助。有时电源循环也 MCU 链接,甚至分离它。
2. Linkserver debug error: Flash driver checksum errors
电路板闪存编程失败并出现神秘错误。通常我们需要重启。这可以通过仅编程 RAM 来缓解。
3. Linkserver debug error: erase timeouts
同前4. DA P
中的Wire ACK fault
这事儿常常发生。在编程之前的最后阶段。没有一致的方法来克服它。经常对 MCU 和 MCU-Link 进行多次电源循环工作。
5. 调试:暂停操作超时
调试时,调试器经常会与应用程序失去联系,调试会话就会关闭。重新上电再试
6. 调试:应用程序在第一个断点处冻结
只有当我们将应用程序编程到 RAM 时才会发生这种情况。通常当遇到断点时,应用程序无法继续。如果我们点击“step”,它将继续在同一条线上中断。如果我们回到对 Board Flash 进行编程,这种情况就会消失。
7. 应用程序启动 错误
这也只有在我们对 RAM 进行编程时才会发生。有时,应用程序会直接启动到 BusFault 或 MemoryFault。它通常由 ENET_QOS IRQ 或其他触发。当我们对 Board Flash 进行编程时永远不会发生。
我想再次强调这一点。我们将近 50% 的开发时间用于电源循环、分离和重新连接 MCU 链接,以及重试构建和调试。我们真的很想使用这个产品,但我们不能一直在工具上浪费那么多时间。示例项目似乎更可靠地构建和编程。但他们偶尔也会失败。然而,当我们的应用程序启动并运行时,它运行没有任何问题,因此项目中似乎没有严重的软件错误。那么是什么原因造成的呢?如果有用的话,我很乐意分享日志等。我非常感谢任何建议。
0