STM32-下载代码uvision出现的错误汇总

​根据官方文档,STM32下载代码有三种方式:

由于SRAM为静态存储器,关机后不能保存代码,故多采用前两种方法(主Flash及系统存储器)下载代码。

一、主flash下载代码

即通过ST-LINK下载,步骤如下

  1. 将ST-LINK V2如下引脚连接至主芯片对应SW下载引脚

   2. 配置uvision界面,依次点击魔术棒—debug—选中ST-LINK Debugger—settings

!!!注意:接下来SWDIO这里可能会出现各种问题

  • 出现“NO ST-LINK detected”,表明电脑未检测到ST-LINK设备,请确认设备USB连接线可以正常使用且ST-LINK驱动已正常安装(在设备管理器的通用串行总线设备处查看,正常如下图所示),如果正常,建议更换ST-LINK设备进行尝试。

  • 出现“No Target Connected”,表示设备连接有问题,建议先检查杜邦线连接是否松动(杜邦线连接很容易不稳定!!!),确认无误后,请考虑是否硬件设计是否存在问题。

  • 出现“Internal command error”,我遇到的问题是,BOOT未下拉至GND。在SW调试下载模式下,BOOT0必须要下拉至GND,手边有万用表最好测一下BOOT0引脚电压是否正常。网上也有很多关于该问题的解决方法,可以动手搜一下。总结一下主要方法,更新STLINK固件、检查先前代码是否有启用睡眠模式、手动拉低RESET。
  • 正常情况是这样滴

  1. 结束了?并没有!!!
  2. 编译完代码,点击load又有可能出现“Could not stop cortex-m device! Please check the JTAG cable NRST”的弹窗。。。惊不惊喜?意不意外?(王宝强脸。。。)这个时候请检测NRST电压是否正常,我的板子检测出NRST引脚输出是1.2V,一直无法下载。去掉外部电阻电容还是1.2,而另一个板子输出正常,原来是芯片这个引脚坏了,手动上拉到VCC可以下载代码了,然而下载完成后,单片机并没有输出理想的结果。
  3. 至此,本菜鸟的第一次下载代码告一段落。

二、系统存储器下载代码

@@声明:本部分参考正点原子开发板教程

硬件电路

实现步骤:

  1. BOOT0连接到VCC,BOOT1连接至GND
  2. 按复位键(NRST下拉到地)
  3. 下载代码
  4. 完成后BOOT0连接至GND
  5. 按复位键(NRST下拉到地)

正点原子也给出了另一种比较方便的设计,专门设计了一键下载电路,通过串口的 DTR 和 RTS 信号,来自动配置BOOT0 和 RST 信号 ,因此不需要用户来手动切换他们的状态,直接串口下载软件自动控制。配合flymcu使用。具体方法网上很多,建议动手多搜搜。这里给出一键下载的原理图,仅供参考。

以上就是本菜鸟这次下载代码遇到的问题,分享出来供大家参考,如有不正确的地方,还请各位大佬多多指正。

版权声明:本文为CSDN博主「YM_纸飞机」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Rema_Tain/article/details/122843034

生成海报
点赞 0

YM_纸飞机

我还没有学会写个人说明!

暂无评论

发表评论

相关推荐

基于STM32单片机的电子密码锁设计

一.硬件方案 本设计采用STM32F103C8T6单片机作为主控芯片,结合外围的矩阵按键输入、LCD1602液晶显示、报警、开锁等电路模块实现开锁、上锁、报警、密码更改等功能,设计了一款可以多次修改密码并且具有报警

迪文T5L 串口屏在线调试、更新升级实现方法

T5L串口屏开发时,通常用户会使用SD卡下载工程文件,但如果串口屏是在调试阶段因为小的修改需频繁插拔SD卡,必然会影响开发效率。 为方便用户在调试阶段快速开发使用,此处介绍两个下载方式&

创客交流稿

资源包下载 概述 工具介绍 1. 软件 编程类: Arduino IDE:https://www.arduino.cc/mind:http://mindplus.cc/ 工具类 Fritzi