CMSIS-DAP和J-Link、ST-Link是什么关系?

关注、星标公众,不错过精彩内容

作者:strongerHuang

公众号:strongerHuang

学习过STM32或Cortex-M处理器的读者对J-Link、ST-Link应该不陌生,都知道它们是下载调试器。

除了J-Link、ST-Link常见的调试器,市面上还有一种常见CMSIS-DAP Debugger,在Keil或IAR选择调试器的时候,会有一些调试器选项。

折腾过市面上调试器的读者应该发现一个问题,有一些不同的调试器,在Keil选择调试器都选择CMSIS-DAP Debugger,比如:E-Link、 GD-Link等。

那么,问题来了,CMSIS-DAP是什么?和J-Link、ST-Link有关系吗?

一、关于CMSIS-DAP

之前的文章《Cortex-M微控制器软件接口标准CMSIS详细内容》有简单描述CMSIS-DAP的内容。

CMSIS:Cortex Microcontroller Software Interface Standard,即Cortex微控制器软件接口标准。

DAP:Debug Access Port,调试访问端口。

CMSIS-DAP支持各种Cortex处理器CoreSight调试和跟踪。

CMSIS-DAP为调试器提供标准化的接口,支持5线JTAG或2线SWD,其固件作为源代码提供。

CMSIS-DAP更多信息参考地址:

https://arm-software.github.io/CMSIS_5/DAP/html/index.html

http://www.keil.com/support/man/docs/dapdebug/dapdebug_introduction.htm

二、CMSIS-DAP固件

上面说了CMSIS-DAP固件有Arm以源码形式提供,不存在版权问题(因为针对Arm Cortex处理器,他们还希望更多人使用)。

1.固件版本

目前有两个版本:

版本1配置使用USB HID作为与主机PC的接口。

版本2配置使用WinUSB作为与主机PC的接口,并提供高速SWO跟踪流。

2.源码位置

目前源码提供在Keil MDK V5版本,安装好Keil MDK,你在安装目录下就能找到源码。

C:\Keil_v5\ARM\Packs\ARM\CMSIS\5.6.0\CMSIS\DAP\Firmware

(目前MDK V5.29,CMSIS版本为5.6.0)

3.源码描述

从文件目录可以看出,官方源码提供了一些模板和例子。

目前只提供了LPC处理器的例子,如果你有这个处理器对应的板卡,可以直接使用该源码做一个调试器。

三、CMSIS-DAP Debugger

通过上面的介绍,你应该发现了CMSIS-DAP就是一套针对Cortex处理器的标准调试接口(协议),开发者可以在其基础上开发一套调试器,只需要遵从这套协议即可。

因此,你们看到的一些调试器,其实就是应用了这套标准的协议。在J-Link、ST-Link里面使用的协议也不列外。

感兴趣的朋友,可以花时间研究,并自制一个CMSIS-DAP调试器,如果你懂原理,我觉得你自己编写一套ST-Link源码都不是问题。

免责声明:本文部分素材来源网络,版权归原作者所有。如涉及作品版权问题,请与我联系删除。

‧  END  

推荐阅读:

精选汇总 | 目录 | 搜索

详解消灭EMC的三大利器:电容器/电感/磁珠

Cortex-M微控制器软件接口标准CMSIS详细内容

关注微信公众号『strongerHuang』,后台回复“1024”,查看更多精彩内容。

长按前往图中包含的公众号关注

### 回答1: CMSIS-DAP、J-LinkST-Link都是用于嵌入式系统开发的调试工具。 CMSIS-DAP是一种开源的调试编程接口,它可以通过USB连接到目标设备,支持多种开发环境操作系统。它可以用于调试编程ARM Cortex-M微控制器。 J-Link是一种商业化的调试工具,由SEGGER公司开发。它支持多种微控制器架构,包括ARM、MIPS、RX等。它可以通过USB或以太网连接到目标设备,支持多种开发环境操作系统。 ST-LinkSTMicroelectronics公司开发的一种调试工具,它可以通过USB连接到目标设备,支持多种开发环境操作系统。它可以用于调试编程STMicroelectronics的微控制器。 ### 回答2: CMSIS-DAP、J-LinkST-Link均是嵌入式处理器的开发调试工具。 CMSIS-DAP是一种轻量级调试接口,旨在实现开源的开发调试。它支持多种协议,如DAPLinkCMSIS-DAPv1/v2CMSIS-DAP Classic等。它的优点是使用方便、通用性好、成本低,还支持固件的在线升级。然而,CMSIS-DAP的缺点是其生成的SWD时序可能比较复杂,不能像高端调试工具那样支持每个调试器特定的调试功能,同时可用于调试的软件平台也相对少。 J-Link是一款由德国公司SEGGER Microcontroller开发的高性能调试工具,用于多种开发平台。它支持各种各样的微控制器,如ARM、AVR、RX等等。其访问速度在市场上排名为前列。J-Link还提供SDK,使其能够集成到IDE等各种开发环境中。除此之外,使用J-Link的用户还可以享受到多种特殊功能,例如实时跟踪性能分析等。但是,J-Link也存在着一些缺点,如价格较高、支持平台有限等问题。 ST-Link是由意法半导体公司开发的专为ST微控制器设计的工具。它提供了直观的图形用户界面,与标准的Windows IDEIDE工具集集成。ST-Link具有各种各样的调试功能,例如单步执行、断点调试、回放/向前跟踪等等。此外,ST-Link使用简便,价格也比较亲民,是做ST微控制器开发的开发者应该优先考虑的调试产品之一。但是,ST-Link并不适合其他品牌的微控制器开发,因此可用性较低。 三种开发调试工具各有优劣,具体使用需要根据实际情况来选择合适的调试器。 ### 回答3: CMSIS-DAP、J-LinkST-Link都是常用的调试器,用于将您的程序下载到微处理器上或使用调试接口进行调试。它们都支持大多数主流的ARM Cortex内核,并可以与各种工具链匹配使用。 CMSIS-DAP是一种针对嵌入式系统设计的通用调试接口,它使用USB接口连接电脑开发板。由于CMSIS-DAP采用了ARM的标准化设计,因此可以与许多ARM处理器进行通信。此外,CMSIS-DAP还包括一个串行接口,并可以通过USB与开发板进行通信。与其他调试器相比,CMSIS-DAP可以免费使用,因此具有一定的价格优势。虽然它的性能比J-LinkST-Link稍慢,但是对于大多数小型项目的需求来说已经足够。 J-Link是瑞萨公司出品的一款高性能调试器,支持大多数ARM微控制器。它是由一块J-LinkPC连接而成,并使用JTAG接口进行通信。它具有高速下载程序的能力,且很容易被集成到您的开发环境中,因此它广泛应用于商业工业项目中。 ST-LinkSTMicroelectronics公司的产品,它是一种基于USB接口的调试器,能够支持STM8STM32系列微控制器。它还具有独特的自动降频功能,可以自动调节速度以适应不同的目标芯片。由于ST-Link是由STM公司制造的,因此在与STM芯片STM的开发环境集成方面有着很高的便利性兼容性。 总之,CMSIS-DAP、J-LinkST-Link都是好的调试器,性能价格也各有长短。在选择调试器时,需要根据您的具体业务需求项目的规模来选择最适合的调试器。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

strongerHuang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值