驱动单片机硬件调试器的一些开源库总结(包含stlink调试器)
如果只用ST公司的stlink,stm32单片机,那么stlink库就可以了,支持下载和调试。如果还要支持其它厂家的硬件调试器和单片机,那就用OpenOCD吧,比如自己做IDE,支持各种硬件调试器,就得用OpenOCD了。httpshttpshttps。...............
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了。

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)