0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何做一个开源的DAP-Link

lhl545545 来源:玩转嵌入式 作者:玩转嵌入式 2022-08-31 09:33 次阅读

前言大家好,我是小舒,今天我带来了一个开源项目。学习单片机的小伙伴,对J-link一定不会陌生。J-link可以使用JATA和SWD接口进行在线Debug和程序的烧录,曾经一段时间,某宝上J-Link铺天盖地,各种各样,价格百家争艳一个比一个低,让单片机初学者有了非常多的选择。J-Link的在线Debug也方便了我们的学习,让我们认识到了单片机是如何一步一步执行程序的。J-Link和Keil简直是绝配。

收费的J-Link但是好景不长,因为J-Link不是开源的,具有版权,正主给某宝发了涵,仿佛一夜之间,J-Link都被下架了,不仅仅如此,在使用Keil调试/烧录程序的时候,会弹出对话框,警告你的J-Link可能是一个盗版。

8825f8f8-28bc-11ed-ba43-dac502259ad0.jpg

除了后来的AD涵之外,这可能是单片机初学者面对的第一个盗版警告,一个方便的工具,自此变得一点都不简单,正版200元不等,购买一块STM32单片机开发板了。烧录工具也是有开源的,可以不用担心版权问题。

CMSIS学习过STM32的小伙伴,对CMSIS一定不陌生,他是ARM Cortex 微控制器软件接口标准,可以为MCU和外设实现一致且简单的软件接口,从而简化软件的重用、缩短新MCU的学习过程、缩短新设备的上市时间。

顾名思义,只要Cortex 系列的内核,就可以使用。

CMSIS-DAP / DAP-LinkARM Cortex 内核的MCU在市场上的产品随处可见,如Cortex M系列内核的有:ST公司的STM32系列MCU产品、NXP公司的LPC系列MCU产品、国产的MM32系列MCU产品、GD32系列MCU产品等等,目前它们的年出货量是以亿为单位。该内核的单片机在烧录时会用到JTAG或者SWD接口的下载器,而常用的J-Link和ST-Link如前文所说,价格较贵且存在版权问题,而CMSIS-DAP是ARM官方开源的下试器,具备SWD调试接口,同时还带虚拟串口,拖拽式下载等功能。既能实现比肩J-Link的下载速度有没有版权问题,一举多得。

Github开源站点CMSIS-DAP在Github上开源,其硬件开源地址为:

https://github.com/ARMmbed/mbed-HDKGithub

其软件开源地址为:

https://github.com/ARMmbed/DAPLink

Github

CMSIS-DAP目前源码固件主要使用在LPC11U35以及MK20DX128VFM5的硬件上,成熟的硬件方案有三个:

DIPDAP(主芯片:LCP11U35FHI33/501)

STDAP(主芯片:STM32F103CBT6)

SWDAP(主芯片:LCP11U35FHI33/501)

CMSIS-DAP可以对ARM Cortex内核(如 Cortex M3)进行仿真调试,并且提供源码和硬件,这样可以使用户可以轻松的集成一个仿真调试器到自己的项目上而无需担心版权问题。

我已经验证开源方案作为一名电子爱好者,当然不会放过开源的机会,我实现了这个开源方案,并且用在了我的项目开发中,并给他起了一个很萌的名字:小猛龙。

8876b964-28bc-11ed-ba43-dac502259ad0.png

在keil环境下的Debug场景如下:

88903862-28bc-11ed-ba43-dac502259ad0.gif

使用现有的资料实现开源项目,虽有了一丢丢的成就感,但是如果能试下J-Link的下载速度,那才是最有成就感的。

88ffe3ba-28bc-11ed-ba43-dac502259ad0.gif

在和J-Link的对比测试中,hex的大小为725k(win10环境下占用空间大校),J-Link烧录所用的时间为17秒多;而CMSIS-DAP用时18秒多。

并且在MAC平台上也可以使用CMSIS-DAP

89c8294c-28bc-11ed-ba43-dac502259ad0.jpg

89e3939e-28bc-11ed-ba43-dac502259ad0.jpg

我已经实现了这个项目,在缺芯的大背景之下,我依然坚持做了100片,需要的伙伴可以点击如下小程序。

审核编辑:彭静
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6035

    文章

    44554

    浏览量

    634675
  • 程序
    +关注

    关注

    117

    文章

    3785

    浏览量

    81005
  • 开源
    +关注

    关注

    3

    文章

    3311

    浏览量

    42473
  • J-Link
    +关注

    关注

    0

    文章

    84

    浏览量

    22137

原文标题:还在用盗版J-Link吗?来做一个开源的DAP-Link吧

文章出处:【微信号:玩转嵌入式,微信公众号:玩转嵌入式】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【合宙Air105开发板试用体验】硬件Hack, C语言开发, DAP-Link/WCH-Link烧录

    如何在Keil5 MDK中使用 DAP-Link 烧录 AIR105 开发板.
    的头像 发表于 12-02 11:32 2677次阅读
    【合宙Air105开发板试用体验】硬件Hack, C语言开发, <b class='flag-5'>DAP-Link</b>/WCH-<b class='flag-5'>Link</b>烧录

    RT-Thread Studio使用GD-LINK下载,选择DAP-LINK,编译报错怎么解决?

    下载源码5.0.2, 使用RT-Thread Studio v2.2.7,导入bsp里面的RT-Thread Studio项目 MCU使用GD32F470ZKT6 使用GD-LINK下载,选择DAP-LINK,出现下面的错误,哪位老师有时间帮我看看怎么解决
    发表于 02-26 06:47

    HMI-board dap-link识别为大容量存储设备无法烧录怎么解决?

    可能是在烧录中拔出了DAP-Link线,当时以为烧录完成了,后来插上后就提示未检测到DAP-Link,插上后设备管理无串口号提示,显示大容量存储设备。 请求大神,谁知道怎么解决?
    发表于 03-01 06:46

    ST-LINK程序下载不进去的原因?怎么排查?

    使用芯片:STM32F103C8T6开发环境:clion 配置是跟稚晖君步操作的下载使用的cfg。 # choose st-link/j-link/
    发表于 03-08 07:24

    如何做一个简单的分层设计?

    如何做一个简单的分层设计?
    发表于 12-08 06:54

    如何做一个串口通讯?

    如何做一个串口通讯?
    发表于 12-16 07:23

    如何做一个无线遥控的小车?

    如何做一个无线遥控的小车?
    发表于 12-17 06:58

    ST-Link V2.1如何制作?怎么使用?

    固件更新官方ST-Link驱动bin文件生成资源下载前言新的STM32单片机可以通过常见的 J-Link, ST-Link, 开源DAP-Lin
    发表于 02-18 06:13

    ST-Link-V2.1的制作过程分享

    怎么能忍!所以打算自己做一个,先拿ST-Link开刀,以后可能还会自制JLink和DAP-Link。简介官方推出ST-Link有多个版本,在官方文档《TN1235》中有介绍。常用的就以
    发表于 02-18 06:28

    【合宙Air105开发板试用体验】硬件Hack, C语言开发, DAP-Link/WCH-Link烧录

    Air105开发板上有好几组, 选组连即可# DAP-Link -> Air105 Dev-Board3.3V -> 3.3V GND-> GNDSCK-> PC4 版上标识为
    发表于 06-18 15:39

    有没有办法让RT-Thread控制台可以输入dap-link指令?

    如图,当电脑接入多个dap-link时,下载需要指定使用的dap-link。但是RT-Thread控制台无法输入命令,有没有办法让控制台可以输入指令?或者把这个信息通过终端进行打印,终端就可以输入指令了
    发表于 02-21 11:11

    ST-Link V2.1 制作使用

    ST-Link V2.1 制作使用1、前言新的STM32单片机可以通过常见的 J-Link, ST-Link, 开源DAP-Link等设备
    发表于 12-22 19:47 26次下载
    ST-<b class='flag-5'>Link</b> V2.1 制作使用

    ST-Link V2.1 制作使用

    固件更新官方ST-Link驱动bin文件生成资源下载前言新的STM32单片机可以通过常见的 J-Link, ST-Link, 开源DAP-Lin
    发表于 12-23 19:00 33次下载
    ST-<b class='flag-5'>Link</b> V2.1 制作使用

    自制ST-Link-V2.1

    怎么能忍!所以打算自己做一个,先拿ST-Link开刀,以后可能还会自制JLink和DAP-Link。简介官方推出ST-Link有多个版本,在官方文档《TN1235》中有介绍。常用的就以
    发表于 12-23 19:02 31次下载
    自制ST-<b class='flag-5'>Link</b>-V2.1

    如何做一个开源DAP-Link

    学习单片机的小伙伴,对J-link定不会陌生。J-link可以使用JATA和SWD接口进行在线Debug和程序的烧录,曾经段时间,某宝上J-Li
    的头像 发表于 02-21 09:30 3250次阅读
    <b class='flag-5'>如何做一个</b><b class='flag-5'>开源</b>的<b class='flag-5'>DAP-Link</b>