stlink仿真器报错及处理过程记录

2023-10-29

项目使用stlink连接stm32f101系列的芯片,因为没有仔细阅读相关资料,出一些莫名的错,搞了大半天。

前言

使用正版的stlink系列仿真器,身在山寨之国,貌似不用盗版不太合适,这里的盗版指的是别人生产来卖钱的,自己根据电路图做的不算,其实正版也才100多块,真的差那点钱吗?
OK,下面是正式的过程

应该知道的

stlink仿真器要在windows平台上使用要下面这几个东西:
在这里插入图片描述
最下面那个USB驱动是必须的,上面两个ST-LINK utility和firmware upgrade可选,分别是烧写程序工具和仿真器固件升级工具(其实这个最重要,这就是山寨和正版的区别了)。
如果运气好,安装好驱动和utility后,连接一般开发板就可以在keil5里面用了。我属于运气比较背那种。下面是我遇到的问题:

1、报错提示仿真器固件版本过低,要求更新

在ST-LINK utility中连接芯片,提示仿真器版本过低,要更新,点击更新,报错提示:“ST LINK is not in the DFU mode plesse restart it”,这个度娘一下就知道了,拔一下仿真器USB插头,断一下电,再接上,好了,不报这个错,更新成功了。
在这里插入图片描述

2、连不上器件

再用ST-LINK连接芯片,各种报错,各种连不上,“Internal command error”,(这里用的别人的截图)
在这里插入图片描述
度娘说把Connect改为"with Pre-reset",没有用;重新上电,没有用;按住复位再点连接,没有用;这个时候应该检查两个地方:
1、boot0,boot1引脚是否正确;
2、仿真器TVCC引脚是否引入芯片供电电压,(我就是这里没接),TVCC是仿真器检测器件是否供电,及供电电压的输入引脚,如果这里没有电压,仿真器会认为芯片睡眠、休眠或者没上电,就直接不下载程序了;
在这里插入图片描述
这里引用一张别人的图,19脚是供电,1,2脚是检测,如果实在不想接,就把19脚和1脚短接。我最后用了1,7,9,12四个引脚,接上TVCC引脚之后就可以连接,调试及下载了;
在这里插入图片描述

3、仿真器升级固件报错"the content of STLink is corrupt"

意思说是仿真器损坏,貌似遇到这个问题的人不多,用windows版程序升级固件的时候报这个错”the content of STLink is corrupt“,解决办法是用java版的升级程序来升级固件,就是上面第二个压缩包中带的jar程序,当然你的系统要有java运行环境。
在这里插入图片描述
在这里插入图片描述
这个程序好处是,都不用拔一下,直接点Open in update mode,再点Upgrade就开始了,而且可以修复上面那个提示仿真器损坏的问题。

总结

其实就是没好好看stlink的资料,还有对应的sw调试接口的资料,如果接了那根TVCC,估计少走很多弯路。

科学还是少靠直觉,多靠思考,多度娘,度娘不了再…

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

stlink仿真器报错及处理过程记录 的相关文章

  • 如何在 Cortex-M3 (STM32) 上从 RAM 执行函数?

    我正在尝试从 Cortex M3 处理器 STM32 上的 RAM 执行函数 该函数会擦除并重写内部闪存 所以我肯定需要在 RAM 中 但我该怎么做呢 我尝试过的是 使用 memcpy 将函数复制到 RAM 中的字节数组 检查它是否正确对齐
  • 在没有 IDE 的情况下如何使用 CMSIS?

    我正在使用 STM32F103C8T6 并想使用 CMSIS 这本质上只是寄存器定义 没有代码 让我的生活更轻松 同时仍保持在较低水平 问题是我不知道如何安装该库以便在命令行上使用 Makefile 使用 所有文档似乎都与特定于供应商的 I
  • 以字符串形式接收数字(uart)

    我正在尝试通过 uart 接收一个包装为字符串的数字 我发送数字 1000 所以我得到 4 个字节 空字符 但是 当我使用 atoi 将数组转换为数字并将整数与 1000 进行比较时 我并不总是得到正确的数字 这是我用于接收号码的中断处理函
  • 139-基于stm32单片机老人居家监护报警系统Proteus仿真+源程序

    资料编号 139 一 功能介绍 1 采用stm32单片机 LCD1602显示屏 独立按键 MQ4传感器 电位器模拟 MQ2传感器 电位器模拟 蜂鸣器 电机 制作一个基于stm32单片机老人居家监护报警系统Proteus仿真 2 通过MQ2传
  • HAL库STM32常用外设教程(二)—— GPIO输入\输出

    HAL库STM32常用外设教程 二 GPIO输入 输出 文章目录 HAL库STM32常用外设教程 二 GPIO输入 输出 前言 一 GPIO功能概述 二 GPIO的HAl库驱动 三 GPIO使用示例 1 示例功能 四 代码讲解 五 总结
  • rt-thread studio中新建5.0不能用

    文章目录 一 版本对比 二 文件和文件夹打斜杠 在使用RT Thread studio创建新工程5 0版本的时候 结果发现新建完成之后程序不能正常运行 但是创建4 10版本的时候却能运行 那肯定是新版本出现了BUG 一 版本对比 首先对比了
  • 匹配 STM32F0 和 zlib 中的 CRC32

    我正在研究运行 Linux 的计算机和 STM32F0 之间的通信链路 我想对我的数据包使用某种错误检测 并且由于 STM32F0 有 CRC32 硬件 并且我在 Linux 上有带有 CRC32 的 zlib 所以我认为在我的项目中使用
  • 物联网网关

    物联网网关是 连接物联网设备和互联网的重要桥梁 它负责将物联网设备采集到的数据进行处理 存储和转发 使其能够与云端或其它设备进行通信 物联网网关的作用是实现物联网设备与云端的无缝连接和数据交互 物联网网关功能 数据采集 物联网网关可以从物联
  • HAL库学习

    CMSIS简介 CMSIS Cortex Microcontroller Software Interface Standard 微控制器软件接口标准 由ARM和其合作的芯片厂商 ST NXP 软件工具厂商 KEIL IAR 共同制定的标准
  • STM32F103概要

    The STM32F103x4 STM32F103x6 STM32F103xC STM32F103xD and STM32F103xE are a drop in replacement for STM32F103x8 B medium d
  • SHT10温湿度传感器——STM32驱动

    实验效果 硬件外观 接线 3 3V供电 IIC通讯 代码获取 查看下方 END
  • 硬件基础-电容

    电容 本质 电容两端电压不能激变 所以可以起到稳定电压作用 充放电 电容量的大小 想使电容容量大 使用介电常数高的介质 增大极板间的面积 减小极板间的距离 品牌 国外 村田 muRata 松下 PANASONIC 三星 SAMSUNG 太诱
  • 解决KEIL编译慢问题

    两种方案 使用v6版本的ARM Compiler 如果v6版本编译不过 必须使用v5版本的 则可以勾选掉Browse Information选项 提升很明显 1分多钟能优化到几秒 看代码量 但是这个有个弊端 在KEIL中会影响函数跳转 建议
  • 在 Atollic TrueStudio、STM32CubeMX 中导入 C 库

    我目前正在开发 STM32F767ZI Nucleo 板和一个小安全芯片 microchip atecc508a 通过 i2c 连接进行连接 该芯片有一个可用的库加密验证库 https github com MicrochipTech cr
  • 跟着野火学FreeRTOS:第一段(任务定义,切换以及临界段)

    在裸机系统中 系统的主体就是 C P U CPU CP U 按照预先设定的程序逻辑在 m a i n
  • 1.69寸SPI接口240*280TFT液晶显示模块使用中碰到的问题

    1 69寸SPI接口240 280TFT液晶显示模块使用中碰到的问题说明并记录一下 在网上买了1 69寸液晶显示模块 使用spi接口 分辨率240 280 给的参考程序是GPIO模拟的SPI接口 打算先移植到FreeRtos测试 再慢慢使用
  • STM32F4XX的12位ADC采集数值超过4096&右对齐模式设置失败

    文章目录 一 前言 二 问题1 数值超过4096 三 问题1的排错过程 四 问题2 右对齐模式设置失败 五 问题2的解决方法 5 1 将ADC ExternalTrigConv设置为0 5 2 使用ADC StructInit 函数 一 前
  • 嵌入式开发--STM32G4系列片上FLASH的读写

    这个玩意吧 说起来很简单 就是几行代码的事 但楞是折腾了我大半天时间才搞定 原因后面说 先看代码吧 读操作 读操作很简单 以32位方式读取的时候是这样的 data IO uint32 t 0x0800F000 需要注意的是 当以32位方式读
  • 库函数点亮Led

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 一 pandas是什么 二 使用步骤 1 引入库 2 读入数据 总结 前言 提示 这里可以添加本文要记录的大概内容 例如 随着人工智能的不断发展 机器学习这门
  • STM32 Nucleo 上的上升沿中断多次触发

    我正在使用 STM32 NUCLEO F401RE 微控制器板 我有一个扬声器 经过编程 当向上 向下推操纵杆时 可以按设定的量改变频率 我的问题是 有时 通常 当向上 向下推动操纵杆时 频率会增加 减少多次 这意味着 ISR 正在执行多次

随机推荐

  • Reinforcement Learning 强化学习(一)

    Task01 本次学习主要参照Datawhale开源学习及强化学习蘑菇书Easy RL 部分内容参考Shusen Wang的github开源项目DRL 第1章 强化学习基础 1 1 强化学习概述 强化学习 reinforcement lea
  • 概率统计——概率论与数理统计

    一 随机变量 1 1 概率 随机事件 A A A发生的可能性度量 称为 A A A发生的概率 记为 P
  • java入门二:java流程控制

    1 用户交互Scanner java util Scanner是Java5的新特性 可以通过Scanner类来获取用户的输入 基本语法 Scanner s new Scanner System in 通过Scanner类的next 与nex
  • 软件项目管理知识回顾---网络图

    网络图 9 网络图 9 1简介 1 分类 AOA 双代号 ADM AON PDM 单代号 前导图 2 活动的逻辑管理 头到头 尾 尾到头 尾 依赖关系 3 工序 紧前 紧后 9 2绘制规则 1 两个节点只能一条线 不能是平行线 平行的话就不
  • 开源网络引擎firefly:环境搭建

    原文来自 http blog csdn net losophy article details 17000769 我自己配置的时候修改了几处 一 安装Python windows下安装Python 1 下载对应系统的python版本 现在多
  • 基于三维激光点云的树木建模(枝叶分离)

    基于三维激光点云的树木建模 2019 05 30 三维激光点云数据采集 2019 06 15 点云的枝叶分离 树枝 树干提取 枝干骨架提取 枝干骨架优化 构建三维模型 测试软件 链接 https pan baidu com s 1LhxOg
  • Java的自动装箱与拆箱详细分析

    Java的自动装箱与拆箱详细分析 1 既然说是装箱与拆箱 那么到底是装的什么 拆的什么 装箱 将基本数据类型封装起来 用他对应的引用类 包装类 来处理 拆箱 就是把引用类里面的基本数据拆出来 2 说到了基础数据类型 Java中的基础数据类型
  • Prometheus怎么监控docker容器 给我个详细的教程

    Prometheus可以通过Docker容器服务检测来监控Docker容器 具体步骤如下 1 安装Prometheus和Node Exporter 并将它们部署到Docker容器中 2 在Prometheus配置文件中添加Node Expo
  • 集合(四):Map接口

    文章目录 1 Map的实现类的结构 2 HashMap的底层实现原理 以JDK7为说明 3 LinkedHashMap的底层实现原理 4 Map接口 常用方法 5 TreeMap 6 Properties 1 Map的实现类的结构 Map
  • Ubuntu中文件系统根目录上的磁盘空间不足的详细解决方案

    目录 Ubuntu中文件系统根目录上的磁盘空间不足的详细解决方案 一 问题提出 二 解决问题 2 1 安装gparted管理器 2 2 打开 2 3 右键点击分区 选择调整大小 移动 一 问题提出 在使用Ubuntu时 可能会出现下图中的提
  • Protobuf初次使用小记

    本来是正在研究学习netty 教程中出现了protobuf 索性仔细研究了一番 厚积薄发 说不定哪一天就突然要用到 protobuf是一种类似于json和xml的数据传输格式 优势在于高效的序列化和反序列化 关于这个 我没有去测试 只是把整
  • AT&T汇编指令介绍

    linux中使用的AT T格式的汇编指令 所以总结一下一些比较重要的指令 1 寻址模式 有多种不同的寻址模式 允许不同形式的存储器引用 我们用符号Ea表示任意寄存器 R Ea 表示它的值 M addr 表示addr处地址的值 题目 答案 0
  • 专业级技巧:利用Vue3 provide / inject机制更轻松地完成祖先和后代组件之间的通信管理

    部分数据来源 ChatGPT 简介 在 Vue 中 使用 props 和 emit 等方式可以实现祖先和后代组件之间的通信 但是当组件层级较多时 这种方式会比较繁琐和复杂 为了解决这个问题 Vue3 提供了新的 provide inject
  • 【LeetCode第2场双周赛】

    第 2 场双周赛 A 模拟 class Solution public int sumOfDigits vector
  • 【LeetCode刷题】303 区域和检索 -数组不可变 java

    题目 给定一个整数数组 nums 处理以下类型的多个查询 计算索引 left 和 right 包含 left 和 right 之间的 nums 元素的 和 其中 left lt right 实现 NumArray 类 NumArray in
  • python3 [爬虫入门实战] 查看网站有多少个网页(站点)

    前提 进行爬虫的时候需要进行站点的爬取 再选用合适的爬虫框架 所以这里不得不需要知道一下一个网站到底有多少个网页组成 一个域名网站中到底有多少个站点 查看的方法很简单 直接百度就可以了 例如需要知道豆丁网的站点有多少个 直接在百度中输入 s
  • C# 关闭进程

    using System Diagnostics string fileName example txt Process processes Process GetProcessesByName processName foreach Pr
  • (Qt)day4

    widget h ifndef WIDGET H define WIDGET H include
  • ElasticSearch简介

    文章目录 ElasticSearch简介 正向索引和倒排索引 正向索引 倒排索引 ElasticSearch和MySQL的区别 ElasticSearch简介 什么是ElasticSearch ElasticSearch 是一款非常强大的开
  • stlink仿真器报错及处理过程记录

    项目使用stlink连接stm32f101系列的芯片 因为没有仔细阅读相关资料 出一些莫名的错 搞了大半天 前言 使用正版的stlink系列仿真器 身在山寨之国 貌似不用盗版不太合适 这里的盗版指的是别人生产来卖钱的 自己根据电路图做的不算