ST-Link资料04_ST-Link编程应用,以及指示灯说明

2023-11-23 12:30

本文主要是介绍ST-Link资料04_ST-Link编程应用,以及指示灯说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

推荐

分享一个大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到人工智能的队伍中来!http://www.captainbed.net

说明:

本文原创作者『strongerHuang』,转载请标明来源(链接)。

首发于微信公众号『嵌入式专栏』,同时也更新在我的个人网站:www.strongerhuang.com

标签: STM32、 ST-Link、 调试器、 编程器、 下载器

一、写在前面

这篇写的是关于ST-Link的实际编程和调试应用的场景,以及概述一下ST-Link上面两种颜色LED亮灭,及闪烁的含义。

这篇文章贴近实际应用,初学者有必要掌握这些知识。

二、ST-Link编程和调试应用

下面罗列一些关于ST-Link常见的编程和调试应用,看看你知道哪些?

2.1 STM32CubeProg编程

地址:
https://www.st.com/en/development-tools/stm32cubeprog.html

STM32CubeProg的主要功能就是编程(下载),支持Windows、 Linux、 macOS操作系统。

同时,需要安装JRE环境,安装地址:
https://www.java.com/zh_CN/download

更多介绍可以参看我公众号的一篇文章:几点关于STM32CubeProgrammer的内容。

STM32CubeProg编程

2.2 STM32 ST-LINK Utility编程

地址:
https://www.st.com/en/development-tools/stsw-link004.html

STM32 ST-LINK Utility的功能比STM32CubeProg要稍微简单一些,其主要功能也是编程(下载)

打开需要下载的可执行文件(hex或bin),或者直接将文件拖到其中,如下图:

菜单Target -> Program,或点击编程按钮(如下图),点击Start开始下载,直到完成。

提示: 如果是bin文件,这里起始地址可以修改。

2.3 STVP编程

地址:
https://www.st.com/en/development-tools/stvp-stm8.html

https://www.st.com/en/development-tools/stvp-stm32.html

这里下载的一个集成的工具包sttoolset,包含STVD和STVP两种工具。
STVD:ST Visual Develop, 可视化开发环境(类似Keil和IAR用于编码的IDE);

STVP:ST Visual Programmer, 可视化编程,和上面STM32CubeProg类似;

这里主要讲下STVP编程工具,这个编程工具与上面STM32CubeProg、ST-LINK Utility有共同特点:主要用于编程

但区别在于这个工具可以对STM8,以及较老的ST7编程,同样也是使用ST-Link编程器。

STVP下载配置

这款工具主要是集成之前ST7,再到这后面STM8,32。如果你是对STM32量产编程,不建议使用该工具(建议使用STM32CubeProg)。

说明:
这个工具就是STM8和32同时都可以编程的工具,上面STM32CubeProg和STM32 ST-LINK Utility只针对于STM32

2.4 编程和调试

这里说下ST-Link的调试应用,一般调试都是基于如STVD、Keil、 IAR等这种集成开发环境(IDE)。

同样,这类集成开发环境具有编程(下载)的功能,编译好代码之后,可直接下载。

如DMK-ARM的下载和调试:

这里推荐阅读我的Keil和IAR系列教程:
1.【专栏】 Keil系列教程

2.【专栏】 IAR系列教程

三、ST-Link的LED指示灯说明

自ST-LINK/V2以来的所有ST-LINK板都实现了一个标有“COM”的LED(无论是在外壳上还是在PCB上)。

一般“COM”是由红、绿两个LED组合,有常亮、常灭、闪烁等,两个LED同时亮呈现橙色。

ST-Link的LED显示不同状态,代表不同的含义:
LED闪烁红色: USB与PC正在枚举。
LED为红色: 建立PC与ST-LINK之间的通信(枚举结束)。
LED闪烁绿色和红色交替: 数据在目标和PC之间交换。
LED为绿色: 上次通信成功。
LED为橙色: ST-Link和目标芯片通信失败。

四、说明

1.该文档仅供个人学习使用,版权所有,禁止商用。

2.本文由我一个人编辑并整理,难免存在一些错误。

3.为了方便大家平时公交、地铁、外出办事也能用手机随时随地查看该教程,该教程同步更新于微信公众号『嵌入式专栏』,关注微信公众号回复【ST-Link资料】即可查看全系列教程。

五、最后

我的知乎: strongerHuang
我的博客: www.strongerhuang.com

我的微信公众号(ID:strongerHuang)还在分享STM8、STM32、Keil、IAR、FreeRTOS、UCOS、RT-Thread、CANOpen、Modbus…等更多精彩内容,如果想查看更多内容,可以关注我的微信公众号。

这篇关于ST-Link资料04_ST-Link编程应用,以及指示灯说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/ybhuangfugui/article/details/88057888
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/417942

相关文章

揭秘Python Socket网络编程的7种硬核用法

《揭秘PythonSocket网络编程的7种硬核用法》Socket不仅能做聊天室,还能干一大堆硬核操作,这篇文章就带大家看看Python网络编程的7种超实用玩法,感兴趣的小伙伴可以跟随小编一起... 目录1.端口扫描器:探测开放端口2.简易 HTTP 服务器:10 秒搭个网页3.局域网游戏:多人联机对战4.

Java并发编程必备之Synchronized关键字深入解析

《Java并发编程必备之Synchronized关键字深入解析》本文我们深入探索了Java中的Synchronized关键字,包括其互斥性和可重入性的特性,文章详细介绍了Synchronized的三种... 目录一、前言二、Synchronized关键字2.1 Synchronized的特性1. 互斥2.

Tomcat版本与Java版本的关系及说明

《Tomcat版本与Java版本的关系及说明》:本文主要介绍Tomcat版本与Java版本的关系及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat版本与Java版本的关系Tomcat历史版本对应的Java版本Tomcat支持哪些版本的pythonJ

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

Python Dash框架在数据可视化仪表板中的应用与实践记录

《PythonDash框架在数据可视化仪表板中的应用与实践记录》Python的PlotlyDash库提供了一种简便且强大的方式来构建和展示互动式数据仪表板,本篇文章将深入探讨如何使用Dash设计一... 目录python Dash框架在数据可视化仪表板中的应用与实践1. 什么是Plotly Dash?1.1

Android Kotlin 高阶函数详解及其在协程中的应用小结

《AndroidKotlin高阶函数详解及其在协程中的应用小结》高阶函数是Kotlin中的一个重要特性,它能够将函数作为一等公民(First-ClassCitizen),使得代码更加简洁、灵活和可... 目录1. 引言2. 什么是高阶函数?3. 高阶函数的基础用法3.1 传递函数作为参数3.2 Lambda

Nginx指令add_header和proxy_set_header的区别及说明

《Nginx指令add_header和proxy_set_header的区别及说明》:本文主要介绍Nginx指令add_header和proxy_set_header的区别及说明,具有很好的参考价... 目录Nginx指令add_header和proxy_set_header区别如何理解反向代理?proxy

Java中&和&&以及|和||的区别、应用场景和代码示例

《Java中&和&&以及|和||的区别、应用场景和代码示例》:本文主要介绍Java中的逻辑运算符&、&&、|和||的区别,包括它们在布尔和整数类型上的应用,文中通过代码介绍的非常详细,需要的朋友可... 目录前言1. & 和 &&代码示例2. | 和 ||代码示例3. 为什么要使用 & 和 | 而不是总是使

Python异步编程中asyncio.gather的并发控制详解

《Python异步编程中asyncio.gather的并发控制详解》在Python异步编程生态中,asyncio.gather是并发任务调度的核心工具,本文将通过实际场景和代码示例,展示如何结合信号量... 目录一、asyncio.gather的原始行为解析二、信号量控制法:给并发装上"节流阀"三、进阶控制

Python循环缓冲区的应用详解

《Python循环缓冲区的应用详解》循环缓冲区是一个线性缓冲区,逻辑上被视为一个循环的结构,本文主要为大家介绍了Python中循环缓冲区的相关应用,有兴趣的小伙伴可以了解一下... 目录什么是循环缓冲区循环缓冲区的结构python中的循环缓冲区实现运行循环缓冲区循环缓冲区的优势应用案例Python中的实现库