
ST-LINK Utility是ST一款经典的编程下载工具,至今仍有很多工程师在使用。 该工具在 2020.10 进行了一次版本更新,目前最新版本为V4.6.0。# o* V# d* C7 A2 m2 Z( k 1 ST-LINK Utility介绍STM32 ST-LINK Utility是针对STM32全系芯片进行编程(读、写、擦除、选项字)的一款工具。 1 y; a1 \8 c# c) K ST-LINK Utility不仅提供图形化界面(GUI),也提供命令行命令行界面(CLI)。 . s7 Q y9 Z6 b# k* i 1.支持格式
& D, X8 w* E6 V; T. _9 A0 g+ f 2.支持操作/功能
5 ]7 f$ w/ r% |6 l 3.其他特征
4.和STVP差异 而ST-LINK Utility只支持ST-Link(多个版本)的下载调试器,支持的芯片只有STM32。 5 V9 p9 B0 \, D7 m1 c+ ?! v 5.拓展描述 STM32 ST-LINK Utility 的别名叫 STSW-LINK004,在官方的命名中有这么一个规则:STSW-LINK编号 比如:
2 ST-LINK Utility下载3 ST-LINK Utility安装1.安装环境 官网下载的安装包是exe文件,也就是说只支持Windows,不支持Linux、 Mac等操作系统。0 i, i4 Q4 s* O8 B% b, R2.安装过程Windows的安装基本都是一路Next下去,根据提示选择安装就行了,下面针对初学者,把过程分享出来。 ![]() ![]() ![]() ![]() ![]() ![]() 提示: 可能你电脑系统的环境与我有差异,过程中可能有一些差异,一般来说问题不大。 4 ST-LINK Utility使用ST-LINK Utility作为一个编程工具,包含常规的读、写(下载/编程)、擦除,选项字节编程等。
我们这里以 STM32F411、以图形化界面(GUI)为例来描述一下: 7 r# c6 a& v/ A0 r7 |! C 1.硬件连接,打开工具,点击“连接”。 ![]() ) y* R) c# \3 Y" t S- y ` 2.如果出现类似下图信息,说明连接正常2 k8 B" y9 S: g3 n1 y ![]() 8 U s/ i5 i; o/ T$ Q 3.编程(下载):打开文件,点击“下载”。 ![]() ![]() ![]() ![]() 6 s4 B4 m! J8 G8 w 4.读取 可设置读取的起始地址、大小、宽度,读取其实就是连接芯片之后,自动读取。# G8 O& h0 }* K. L/ k ![]() 5.擦除 ![]() 5 拓展下载文件:hex、bin在上面下载界面,大家可能看到了“起始地址”,这里就牵涉到文件格式的问题。这里讲述一下bin和hex差异,以及Keil MDK、 IAR EWARM如何生成hex、bin.* W/ A9 @* Q- z7 p , n3 \' u5 _2 g6 z/ S0 U0 Q l 1.hex文件 Intel HEX is a file format that conveys binary information in ASCII text form. It is commonly used for programming microcontrollers, EPROMs, and other types of programmable logic devices. In a typical application, a compiler or assembler converts a program's source code (such as in C or assembly language) to machine code and outputs it into a HEX file. The HEX file is then imported by a programmer to "burn" the machine code into a ROM, or is transferred to the target system for loading and execution. + V0 H# y0 P/ F5 [2 P 简单来说:Hex是由Intel制定的一种十六进制标准文件格式,是由编译器转换而成的一种用于下载带处理器里面的文件。 & o! R( X4 o; x6 A( @ Hex文件格式是由一行一行的十六进制数据组成,每行包含:开始、长度、数据、类型、校验和等重要信息。
Hex文件是有一定格式的,而Bin文件就是一种没有格式的程序文件,只是包含了程序数据。所以,我们下载bin文件时需要指定起始地址,如果起始地址不对,你的程序就不能正常运行。 - e1 k; V9 r7 q3.Keil生成hex配置Project ->Options for Target -> Output 勾选上“Create HEX File”(如下图) ![]() 4.IAR生成hex配置Project ->Options -> Output Coverter -> 勾选上“Generate additional output”、选择输出格式为“Intel extended”,再次设置输出名称就配置好了(如下图)。 6 }0 r7 G1 ?7 Y) ~1 ]: C! L8 h+ B+ }) f9 | ![]() 5 z! u3 A/ M4 g r6 m 转载自:strongerHuang |
OpenBLT移植到STM32F405开发板
为什么要先开启STM32外设时钟?
【STM32MP157】从ST官方例程中分析RPMsg-TTY/SDB核间通信的使用方法
【经验分享】STM32实例-RTC实时时钟实验④-获取RTC时间函数与中断服务函数
STM32 以太网 MAC Loopback 的实现
STM32功能安全设计包,助力产品功能安全认证
基于STM32启动过程startup_xxxx.s文件经验分享
HRTIM 指南
ST 微控制器电磁兼容性 (EMC) 设计指南
适用于STM32微控制器的ΣΔ数字接口入门