Clion嵌入式开发中无法烧录的问题

我使用的是stm32f103c8t6最小系统板,但我用st-link v2进行烧录时遇到了以下问题

img


目前可以排除的是我的stlink驱动没问题
OCD的配置也没问题
希望有人能帮我解决,这对我很重要

蓝桥杯嵌入式无法烧写程序

可以借鉴下
https://blog.csdn.net/XZHMARS/article/details/117217687

该回答引用GPTᴼᴾᴱᴺᴬᴵ
这个问题可能是由于 OpenOCD 配置不正确导致的。以下是一些可能的解决方法:

  1. 检查 OpenOCD 配置文件:请确保 OpenOCD 配置文件正确设置了正确的调试适配器和目标设备。检查配置文件中的 adapter 和 transport 配置项是否与你的调试适配器和目标设备匹配。
  2. 检查调试适配器连接:确保你的 ST-Link V2 调试适配器正确连接到计算机,并与目标设备的 SWD 或 JTAG 接口连接正确。
  3. 更新 OpenOCD 版本:尝试使用最新版本的 OpenOCD,可能会解决一些已知的问题。你可以从 OpenOCD 官方网站或 GitHub 页面下载最新版本。
  4. 检查驱动程序:确保你的 ST-Link V2 调试适配器的驱动程序已经正确安装,并且与 OpenOCD 兼容。
  5. 检查权限:如果你在 Windows 系统上运行 OpenOCD,确保你具有足够的权限来访问调试适配器和目标设备。尝试使用管理员权限运行 OpenOCD。
  6. 检查设备连接:检查你的目标设备是否正确连接到调试适配器,并且没有物理连接问题。
  7. 检查硬件配置:确保你的硬件配置正确,包括目标设备的电源供应、连接方式、引脚设置等。

如果以上方法都无法解决问题,你可以尝试在 OpenOCD 配置文件中进行进一步的调试和配置,或者考虑使用其他烧录工具或方法。另外,你也可以查阅 STM32F103C8T6 相关的开发文档、用户手册和社区论坛,以获取更详细的解决方案。

以下答案由GPT-3.5大模型与博主波罗歌共同编写:
首先,您可以检查以下几点:

  1. 确认您使用的是正确的连接线,并将其插入正确的位置。如果您使用了转接板或外部电源,请确保它们的连接正确并工作正常。
  2. 检查您是否已正确配置 CLion 中的项目和调试器设置。您应该已经设置好了正确的调试器类型、连接方式和对应的可执行文件。确保您的配置不会影响到您的烧录和调试操作。
  3. 检查 stm32f103c8t6 开发板是否正常运行。您可以首先在硬件上进行一些简单测试,如点亮LED灯,然后测试是否可以正常发送信号给开发板。如果您的硬件有问题,那么您很可能无法进行任何连接、烧录或调试等操作。

如果以上几点都没有问题,您可以尝试使用以下代码:

#include "stm32f10x.h"

GPIO_InitTypeDef GPIO_InitStructure;

int main(void)
{
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);

  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  GPIO_Init(GPIOC, &GPIO_InitStructure);

  while (1)
  {
    GPIO_SetBits(GPIOC, GPIO_Pin_13);
    for (int i = 0; i < 100000; i++);
    GPIO_ResetBits(GPIOC, GPIO_Pin_13);
    for (int i = 0; i < 100000; i++);
  }
}

该代码可以使用 stm32f103c8t6 板上的 LED 灯进行测试。如果代码可以工作,则说明您的开发板和连接方式是正确的,并且您需要进一步检查您的烧录和调试设备是否工作正常。如果代码无法工作,请尝试检查硬件或修改代码。

最后,您可以尝试在 CLion 日志窗口中查看详细的报错信息,并检查是否有任何错误或提示信息。这些信息通常是可以帮助您进一步了解问题所在的。
如果我的回答解决了您的问题,请采纳!

您好,你的这个问题可能是你的下载配置文件没配置对,建议参考一个可以使用的工程来进行配置,参考官方的demo来弄吧。
这个比较久远了,好久也没弄了,下面的下载配置文件参考一下吧


# choose st-link/j-link/dap-link etc.
#adapter driver cmsis-dap
#transport select swd
source [find interface/stlink.cfg]
transport select hla_swd
source [find target/stm32f1x.cfg]

# download speed = 10MHz
adapter speed 10000