当前位置: 首页 > article >正文

在Keil中使用ST-LINK烧录STM32程序指南

文章目录

    • 前言
    • 前期准备
    • 线路连接
    • 下载ST-LINK驱动程序
      • 1.通过官网下载
      • 2.通过百度网盘下载
    • 安装ST-LINK驱动程序
    • 查看电脑是否连接ST-LINK
    • Keil配置ST-LINK
    • 编译烧录程序
    • 后记

前言

之前玩STM32都是用J-LINK烧录程序,不仅便捷,而且烧录的速度比用串口快好多。

最近我接了几个32单片机的毕设单子,便买了几块C8T6的最小系统板用来开发。最初我还是用J-LINK烧录C8T6的,只要从J-LINK中找出对应的引脚用杜邦线连上就可以烧录,但是每晚要去学校的实验室,每次都要重新接线,用J-LINK又显得不太方便了。

于是我又买了一块ST-LINK的烧录器,在测试烧录成功后,我将配置的过程整理成了本篇博客供大家参考。

前期准备

  1. STM32F103C8T6最小系统板一块(其他的STM32单片机也适用)
  2. ST-LINK/V2烧录器一块(其他版本适用)
  3. 母对母的杜邦线4根
  4. Windows系统电脑一台,且已安装MDK-ARM,没有安装的可以点击跳转安装-> Keil系列教程03_MDK-ARM安装与注册

线路连接

实物接线图,我把杜邦线用绝缘胶缠上了,这样插拔方便。

下面是ST-LINK/V2和STM32的接线表,都是一一对应的。

ST-LINK/V2STM32
3.3V3V3
GNDGND
SWDIOSWDIO
SWCLKSWCLK

按照上面连接后,将ST-LINK插到电脑的USB口上,下文中默认ST-LINK已插到电脑

下载ST-LINK驱动程序

这里提供两种方式供大家选择,一个是从官网下载驱动(需要注册ST账户),另一个是从百度网盘下载。

1.通过官网下载

官网链接:https://www.st.com/en/development-tools/stsw-link009.html

打开官网后点击“Get Software”,点击“Get latest”,后面根据提示注册账号进行下载即可,这里不再演示。

2.通过百度网盘下载

我已将本文使用的驱动打包上传至百度网盘,扫描下方二维码,后台回复“0017”即可免费获取分享链接。

安装ST-LINK驱动程序

在下载好后,把压缩包解压出来,打开解压后的文件夹。

找到“dpinst_amd64.exe”右键用管理员身份打开。

点击“Next >”。

如果出现下图,点击“Install”即可。

驱动安装成功,点击“Finish”。

查看电脑是否连接ST-LINK

驱动程序安装成功后,可以在电脑的任务栏中右键“开始菜单”,选择“设备管理”,在“通用串行总线设备”中会显示“STM32 STLink”,则表示已连接ST-LINK。

如果没有显示,需要重新拔插一下ST-LINK,便会显示出来。

Keil配置ST-LINK

这里你可以打开一个已有的工程,方便后续程序烧录成功的验证。

工程打开后,点击“魔法棒”,在打开的页面中点击“Debug”,选择“ST-Link Debugger”后点击“Settings”。

如果出现下图,点击“Yes”,选择升级。

点击“Device Connect”,出现固件后点击“Yes > > > >”,等待下载完成。

下载好后,点击“OK”,点右上角的“X”,关闭这个页面。

在“Debug”中,左边的Port选择“SW”,Req输入“5”,在右侧的“SW Device”已经显示出来了连接的硬件,表示Keil已经和ST-LINK建立了连接。

如果没有显示,重新拔插一下ST-LINK,或重开一下Keil。

接下来,进行其他配置,在“Flash Download”中勾选“Reset and Run”,从而达到烧录程序后软件复位单片机的效果。

在下方根据具体单片机的Flash容量进行选择,单片机的Flash容量推荐到官网或芯片的数据手册中查看。

在“Pack”中,取消勾选“Enable”,才可以烧录后软件自动复位,点击“OK”。

设置完成,点击“OK”。

编译烧录程序

点击编译按钮,0错误0警告后点击“LOAD按钮”烧录程序。

显示以下结果,则为烧录成功。

当然如果你前面选择了已有的工程进行烧录,那么可以通过单片机执行的程序来验证是否烧录成功。

后记

本文到这就结束了,如果对你有所帮助,请点赞支持一下呦。


http://www.kler.cn/a/400243.html

相关文章:

  • UE5 材质里面画圆锯齿严重的问题
  • 《Django 5 By Example》阅读笔记:p645-p650
  • 计算机网络之会话层
  • 基于单片机智能温室大棚监测系统
  • C语言导航 4.1语法基础
  • 深入理解 SQL_MODE 之 ANSI_QUOTES
  • 聚焦 AUTO TECH 2025华南展:探索新能源汽车发展新趋势
  • 美赛优秀论文阅读--2023C题
  • Spring Boot汽车资讯:数字化时代的驾驶
  • 前端性能优化深入解析:提升用户体验的几个关键点
  • 工具类-基于 axios 的 http 请求工具 Request
  • ELK8.15.4搭建开启安全认证
  • 基于Vue3与ABP vNext 8.0框架实现耗时业务处理的进度条功能
  • 常见网络厂商设备默认用户名/密码大全
  • 移动端web页面调用原生jsbridge的封装
  • java ssm 高速公路管理系统 公路收费管理 高速收费管理 源码 jsp
  • 【Android】Proxyman 抓 HTTP 数据包
  • 4 设计模式原则之接口隔离原则
  • 【开源风云】从若依系列脚手架汲取编程之道(七)
  • 【青牛科技】D7312带 ALC 双通道前置放大器电路
  • C语言常用语句总结
  • 跨平台WPF框架Avalonia教程 三
  • C++20中的Concepts与TypeScript
  • 雨晨 Fix 24H2 Windows 11 iot 企业版 ltsc 2024 极简 2合1 26100.2448
  • Gradle 8 使用教程:Maven 仓库导入、依赖管理与 TOML 配置详解
  • Node.js 中如何实现延迟和超时 ?