【问题标题】:StmCubeIDE Issues with debugging STM32F411CEU6StmCubeIDE 调试 STM32F411CEU6 的问题
【发布时间】:2020-12-25 12:12:14
【问题描述】:

我已经订购了黑色药丸(STM32F411CEU6,真实的)来替换我的蓝色药丸开发套件,该套件没有足够的 RAM,并且除了运行问题之外什么都没有。我已经使用 STM32CubeIDE 生成了项目。

我将 A11、12、13 用于 GPIO 输出,PB9、8 用于 I2C 通信,A10、11 用于我的 USART 设备。

我可以让 st link 编程器和软件检测我的黑药丸并在短时间内调试,直到我输入 MX_GPIO_Init()

在此之后,程序员失去了与设备的通信,并阻止我进行任何真正的编程。我看过的一些地方说尝试将 Sys -> Debug 设置设置为 "Serial Wire" 但默认情况下这对我来说是禁用的,无法切换。

在调试环境中,当我在实时模式下进行调试时,我可以看到已启用调试

Starting server with the following options:
        Persistent Mode            : Disabled
        Logging Level              : 1
        Listen Port Number         : 61234
        Status Refresh Delay       : 15s
        Verbose Mode               : Disabled
        SWD Debug                  : Enabled
        InitWhile                  : Enabled

所以调试看起来设置正确,但我只是不明白为什么它不能通过查看调试控制台调用 GPIO 的 init 我得到了这个

handle_vCont_c, Failed continue thread

进入这个函数后抛出的

HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);

这对我来说没有多大意义,因为我以前没有见过这个,有人可以帮我正确设置这个项目吗?谢谢。

【问题讨论】:

  • 我应该注意到我已经发现了让这个东西正常通信的技巧,即按住 NRST 和启动 0 按钮,然后从 NRST 释放,只保持启动直到程序员得到一个连接。这是我遇到的第一个问题,我能够解决,只是想把它扔掉,这样我们就可以排除这个问题。

标签: c embedded stm32 stm32f4


【解决方案1】:

串行线调试接口是为 PA13 和 PA14 定义的。在 CubeMx IDE 中,首先设置 SYS->Debug->Serial Wire。为 GPIO 选择另一个引脚而不是 PA13。

【讨论】:

  • 我会试一试,看看效果如何。这听起来像是我的一个大错误,谢谢你的信息!
猜你喜欢
  • 2021-05-28
  • 2019-02-13
  • 1970-01-01
  • 2014-12-06
  • 2020-11-08
  • 2023-03-14
  • 2021-03-25
  • 1970-01-01
相关资源
最近更新 更多