简介

   Arm Mbed DAPLink是一个开源软件项目,可以对运行在Arm Cortex CPU上的应用软件进行编程和调试。DAPLink连接到MCU的SWD或JTAG端口;辅助开发MCU。并且几乎所有的MCU开发板上都有这种接口。DAPLink作为一个USB设备,在开发MCU过程中,在计算机和MCU调试访问端口之间建立了一座桥梁。

  • MSC - 拖放式编程闪存
  • CDC - 用于日志、跟踪和终端仿真的虚拟COM端口。
  • HID - CMSIS-DAP兼容调试通道
    WEBUSB HID - 兼容CMSIS-DAP的调试通道。

   更多的功能正在计划开发中,并将随着时间的推移逐渐显现出来。Arm公司、其合作伙伴、众多硬件厂商和世界各地的开源社区都在不断地大力开发这个项目。DAPLink已经取代了mbed CMSIS-DAP接口固件项目。您可以自由使用和贡献。

0. 准备工作

提示:

1). 该教程仅记录个人的制作过程,没有记录清楚的不做回答;
2). 不提供编译好的固件和相关资料,开源项目,请自学。本文仅供参考;

需要准备的软件:
a. Keil MDK
b. python3.xx
c. git,(可以没有)

1. 下载DAPLink开源固件

   这里只提供一直下载方式,即官方网站下载:
        点此下载

2. 固件编译

a.环境配置

需要安装生成keil工程的python模块,模块列表见“requirements.txt”
安装命令:(这里使用清华源进行安装,速度比较快)

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

注意: 这个安装的python模块有版本要求的,如果还有其他python项目或者会使用虚拟环境的,可以创建专门的python虚拟环境安装该列表的模块,虚拟环境的使用请自行解决

b. keil工程生成

生成命令:

#生成全部支持的MCU
progen generate -t uvision
#生成某个MCU的工程
# i:生成基于STM32F103的DAPlink的bootloader
progen generate -p stm32f103xb_bl -t uvision
# ii:生成基于STM32F103的DAPlink的目标MCU为stm32F103的固件
progen generate -p stm32f103xb_stm32f103rb_if -t uvision

运行上述命令后在DAPlink的目录下可以新增加的projectfiles文件夹,里面存放对应的工程文件

c.keil编译

这里不做编译工程记录,如果编译报错,有两种情况;

  • keil没有安装对应MCU的支持库;
  • python3环境配置及对应库的安装有问题;

3. 固件下载:

a. DAPlink的bootloader下载

下载DAPlink的bootloader时,需要其他的调试器或者已经制作好的DAPlink进行连接MCU调试口下载,
下载完成后,使用USB连接硬件和电脑,会识别出一个名为“MAINTENANCE”的u盘。

b. DAPlink下载

将stm32f103xb_stm32f103rb_if_crc.bin拷入名为“MAINTENANCE”的u盘,DAPlink即制作成功

DAPLink-Firmware相关推荐

  1. MAX78000FTHR 板卡入门

    MAX78000FTHR为快速开发平台,帮助工程师利用MAX78000 Arm® Cortex® M4F处理器快速实施超低功耗.人工智能(AI)方案,器件集成卷积神经网络加速器.评估板包括MAX203 ...

  2. HC32L110(一) HC32L110 芯片介绍和Win10下DAP-Link, ST-Link, J-Link方式的烧录

    目录 HC32L110(一) HC32L110芯片介绍和Win10下的烧录 HC32L110(二) HC32L110在Ubuntu下的烧录 HC32L110(三) HC32L110的GCC工具链和VS ...

  3. 自制DAPLink -- ARM官方源码以及STM32F103C8T6

    [本文发布于https://blog.csdn.net/Stack_/article/details/128771308,未经许可禁止转载,转载须注明出处] 一.安装工具并配置环境变量 ARM的Git ...

  4. 沁恒CH32F103C8T6(三): PlatformIO DAPLink和WCHLink下载配置

    目录 沁恒CH32F103C8T6(一): Keil5环境配置,示例运行和烧录 沁恒CH32F103C8T6(二): Linux PlatformIO环境配置, 示例运行和烧录 沁恒CH32F103C ...

  5. quartus编译错误不支持芯片_介绍一下如何重新编译Arduino 16U2 的Firmware

    标准 Arduino Uno 上16U2 芯片的作用是烧写328P Firmware.具体来说,它负责把PC上的USB转为328P能够识别的串口,然后每次刷写的时候它会先用一个Pin将328P拉到 R ...

  6. 处理南通一客户:Fortigate 310B Firmware丢失

    1.给设备加电: FGT 310B Ver:02060000 SerialNum:FGT-1k310xxxxx SDRAM Initialization Scanning PCI Bus...Done ...

  7. jlink、DAPLink、J-Link  OB资料整理

    现在市面上的单片机调试器种类太多了,什么jlink-ob.DAPLink.j-link PRO.ST-Link...... 今天就来全部介绍并且梳理一下. 一.Segger的正版j-Link家族 首先 ...

  8. Linux设备模型(热插拔、mdev 与 firmware)

    转自:http://blog.chinaunix.net/space.php?uid=20543672&do=blog&cuid=460882 热插拔 有 2 个不同角度来看待热插拔: ...

  9. Google Capture The Flag 2018 (Quals) - Beginner's Quest - Reverse - Firmware

    参考链接:https://ctftime.org/task/6263 题目 After unpacking the firmware archive, you now have a binary in ...

  10. 对Keil在线烧录程序弹出“The firmware of the connected J-Link[SN:xxxxxxxx] does not support......的问题解决

    问题:最近下载并使用Keil_v5.29,在线烧录程序时出现"The firmware of the connected J-Link[SN:xxxxxxxx] does not suppo ...

最新文章

  1. Codeforce DIV2 614 SZU的cf集训round1 C ~ D
  2. Oracle 字符集的查看和修改
  3. WCF 第四章 绑定 msmqIntegrationBinding
  4. Linux入侵类问题排查思路
  5. 3.C#知识点:is和as
  6. Docker问题记录
  7. VS 之 InstallShield Limited Edition for Visual Studio 2015 图文教程
  8. Posix本地通信用于同一设备或native和framework层之间
  9. 在linux设置Mysql允许用户远程登录和限制用户远程登录
  10. [CareerCup] 8.7 Chat Server 聊天服务器
  11. Cocos2d x 2 0 从HelloWorld入手
  12. QT与opencv(二)开启摄像头
  13. JSP-Runoob:JSP 文件上传
  14. 加密狗 破解 复制 模拟 软件
  15. 人体神经元细胞分为三类,人体神经元细胞模式图
  16. AutoVue使用教程:如何在64位Linux上安装AutoVue
  17. matlab计算纹波电压,如何估算开关电源纹波电压?
  18. Method annotated with @Bean is called directly. Use dependency injection instead
  19. 文字太多时给文本框添加滑动条——text + ContentSizeFitter + Scroll View
  20. Nature Medicine 揭示冠状动脉疾病的个体危险因素

热门文章

  1. apt-get autoremove remove 新手收割者
  2. MD5简介与代码实现
  3. win10计算机三级密码设置,Win10系统下共享文件夹如何设置密码访问?
  4. tempfile库:Python临时文件系统对象
  5. 【STM32】1.44寸TFT液晶屏显示字符、汉字和图片
  6. 链游:不要只争朝夕,要寄望百年
  7. SpringBoot三种实现邮箱发送功能
  8. 【UI】优秀的网站欣赏以及分析
  9. php excel导入读取公式本身不计算,使用PHPExcel读取Excel文件时忽略计算值
  10. C语言每日一练——第74天:黑与白问题