最终启动序列中的错误 - STM32L476 的 Eclipse 系统工作台调试

Posted

技术标签:

【中文标题】最终启动序列中的错误 - STM32L476 的 Eclipse 系统工作台调试【英文标题】:Error in Final Launch Sequence - Eclipse System Workbench Debugging for STM32L476 【发布时间】:2018-06-10 01:13:03 【问题描述】:

我正在尝试为 STM32L476 调试和运行简单的汇编代码。我已经设置了 Eclipse Oxygen,在 Eclipse 中安装了最新版本的 System Workbench 插件并安装了 ST-Link 驱动程序。 IDE 成功构建程序而没有抛出任何错误,但是当我连接我的 STM Discovery Board 并尝试调试时,程序抛出以下错误:

最终启动序列出错 - 未为设备“通用 TCP/IP”定义重置命令。

,

我在使用完全相同的软件的 Ubuntu 17.10 和 Windows 10 上都遇到了这个错误。在阅读了一些关于类似问题的其他帖子后,我被告知检查我是否在 Eclipse 中设置了 OpenOCD 和 arm-none-eabi-gdb,并且它们已正确设置,如下图所示。

对于解决此问题的任何帮助将不胜感激。 谢谢

【问题讨论】:

【参考方案1】:

按照安装程序解决了我的 Eclipse 03-19 问题

我已取消选中“加载图像”和“加载符号”复选框。 我已删除所有断点,并在建立连接后重新创建它们。

现在一切正常。我已经看到,gdb 是从 sudo 开始的(我使用的是 Linux),所以 perhabs 以管理员身份运行也是一个很好的解决方案。

【讨论】:

【参考方案2】:

我在一个不好的地方有一个断点时遇到了这个问题。我摆脱了断点,它为我解决了“最终启动错误”。然后我就可以设置断点了。

【讨论】:

【参考方案3】:

参考 Adam V. 提到的错误报告,您可以在调试器配置中取消选中 Reset & Delay 和 Halt 选项,它应该可以正常工作。

【讨论】:

这可行,并且是一个适当的解决方案,应该被接受为最佳响应【参考方案4】:

更新到最新版本的 Eclipse 时,我遇到了同样的问题。在做了一些研究后,我在 Eclipse 的错误跟踪页面上发现了一个错误报告:

Bug 529171 - Recent Pushed update causing - Reset Command not defined for device 'Generic TCP/IP'

这表明导致问题的模块是 C/C++ GDB 硬件调试 版本 9.4.0.201712051550。我验证了它,发生错误时我有相同的版本。当前的解决方案是恢复到以前的版本。通过恢复到版本 9.3.2.201709131603,问题得到解决,我可以使用 GDB 调试 STM 微控制器。

您可以在帮助>关于然后在安装细节然后在OpenSTM32远程调试支持下找到该模块的当前版本。要恢复到以前,您有两个选择。如果您更新了 Eclipse,那么在 Installation Details 窗口中有一个 Installation History 选项卡,您可以在其中恢复到以前的版本。否则,您应该删除该模块并在 eclipse 安装存储库中搜索以前的版本。

【讨论】:

谢谢亚当,你是对的。降级到 C/C++ CDT 9.3 有助于解决这个问题。我不明白为什么没有解决 IDE 中的这种错误。 我的不会恢复,因为它找不到过多的包。所以我卸载并安装了ac6-tools.com/Eclipse-updates/…(这里在黑暗中拍摄)。现在,当我尝试对调试器执行任何操作时,我得到“发生错误。有关更多详细信息,请参阅错误日志”。去找出我可以在哪里找到所说的错误日志。

以上是关于最终启动序列中的错误 - STM32L476 的 Eclipse 系统工作台调试的主要内容,如果未能解决你的问题,请参考以下文章

使用 STM32L476RG 时出现 UART 溢出错误

stm32L476RG - 如何从固件执行引导加载程序

STM32L476 和 CubeMX 上带有 DMA 的 SD 卡没有中断

STM32L476应用开发之一:初次使用

STM32L476的RTC使用问题记录

stm32L476 - 擦除闪存