当前位置:网站首页>驱动单片机硬件调试器的一些开源库总结(包含stlink调试器)
驱动单片机硬件调试器的一些开源库总结(包含stlink调试器)
2022-07-23 00:38:00 【标biao】
ST公司推出的stm32单片受到大家广泛使用,为了支持程序调试,和更好的下载,ST公司还推出了对应的st-link硬件调试器,一端通过USB连接电脑,另一端JTAG或者SW接口连接上板子。那么用户如何使用st-link进行程序的下载和调试呢?(keil等IDE已经集成了下载和调试功能,我们不讨论这个)
stlink调试器作为非常广泛的使用,因此开源库至少需要支持stlink调试器。
至少能让用户操作st-link进行程序下载和调试的库有如下几个:
OpenOCD
这个开源库,不仅可以操控stlink,还能操控其它的所有硬件调试器,比如jlink等。用的人多,网上参考资料特别多。
详情请看这些博客:
嵌入式IDE原理 OpenOCD介绍 以及stlink如何连接stm32板子_标biao的博客-CSDN博客
stlink
这个开源库,GitHub - stlink-org/stlink: Open source STM32 MCU programming toolset
只能用于操控stlink硬件调试器(其它调试器不支持),对stm32单片机进行 程序下载和调试。用的人少,网上资料较少。主要包含这么几个工具:
st-info- a programmer and chip information tool,用于查看程序和单片机的信息的st-flash- a flash manipulation tool,用于将目标程序 xx.hex下载到板子里st-trace- a logging tool to record information on executionst-util- a GDB server (supported in Visual Studio Code / VSCodium via the Cortex-Debug plugin),用于支持stm32单片机调试的stlink-lib- a communication librarystlink-gui- a GUI-Interface [optional],为了更方便使用上面的工具,一个可视化操作stlink的界面功能,
使用,可以参考这个博客:ubuntu 使用st-flash_Gkbytes的博客-CSDN博客
我们可以自己编译这个开源库,也可以下载编译好的 exe,链接为:Releases · stlink-org/stlink · GitHub

下载完后,主要就是几个 exe文件了,不需要安装,启动命令行窗口,然后命令行执行它们,给对应的参数就行了

STM32 ST-LINK Utility
这个不是开源的,ST公司专门针对自家的stlink推出的可视化程序下载软件,支持程序下载、芯片信息读取、存储器擦除等很多功能,但是不能进行调试。这个工具对于批量下载代码,用得比较多。

总结
如果只用ST公司的stlink,stm32单片机,那么stlink库就可以了,支持下载和调试。如果还要支持其它厂家的硬件调试器和单片机,那就用 OpenOCD吧,比如自己做IDE,支持各种硬件调试器,就得用OpenOCD了。
边栏推荐
- disruptor框架无锁实现生产者消费者代码实例
- 常用cmd命令 总结 二进制与十进制的转换
- PMP一手资料、一手资讯获取
- Wireshark packet capture tool basic use
- Day3 POC and exp learning Pikachu brute force cracking with token
- 【高等数学】矩阵的初等变换和行列式的初等变换
- OSI七层模型有哪七层?每一层分别有啥作用,这篇文章讲的明明白白!
- Svg+js mouse hover parallax JS effect
- Under Arduino frame, esp32c3 +1.8 "TFT LCD is driven and displayed through tft_espi library
- 数学建模——图与网络模型及方法(二)
猜你喜欢

深度讲解CAS,面试实践必备

数学建模——图与网络模型及方法(二)
![[zero based BLDC series] brushless DC motor control principle based on Hall sensor](/img/72/9595080e437a716be035187dadc8cc.png)
[zero based BLDC series] brushless DC motor control principle based on Hall sensor

实操演练 | MySQL PROCESSLIST 表和 Navicat Monitor 识别慢速查询的简单方法

Swin transformer object detection project installation tutorial

自定义类型详解:结构体,枚举,联合

Detailed explanation of common ADB operation commands of "suggestions collection"

Swin-Transformer-Object-Detection项目安装教程

DOM series prohibit selected text and prohibit right-click menu

在校生非正常下载2578篇文献,中国社科大IP遭一数据库商封禁
随机推荐
Basic use of day05 MySQL
[英雄星球七月集训LeetCode解题日报] 第22日 有序集合
Print prime numbers between 100 and 200
No requirement document, reject development?
Arduino框架下合宙ESP32C3 +1.8“TFT液晶屏通过TFT_eSPI库驱动显示
生成13位条形码Ean-13码规则:第十三位数字是前十二位数字经过计算得到的校验码。
IDM下载器免费高质量的Win下载工具无使用限制
Extend the maximum memory limit of canvas and the principle of browser rendering from a bug
工作中遇到一个bug的解决过程
[hero planet July training leetcode problem solving daily] the 22nd day of the orderly gathering
视频点播中相关分辨率说明
【并发编程】第二章:从核心源码深入ReentrantLock锁
50道经典计算机网络面试题,你答得上几个?(二)
Common CMD commands summarize the conversion between binary and decimal
15000 words to summarize all features of ES6
启牛开户安全性高吗?说万3的佣金靠谱吗?
TCP连接原理
吉利星瑞:从产品技术赋能到文化自信
Day05 MySql的基础使用
UGUI源码解析——Mask