使用daplink下载任意格式固件
2026/8/29 13:06:16 网站建设 项目流程

前言

daplink是个好东西,又便宜又好用,还不担心盗版,但是没有stlink和jlink那样的上位机可以直接下载固件,这就很头疼了。怎么办?
还好通过jtag/sw协议下载固件有很多开源的项目

项目介绍

openOCD

大名鼎鼎的openOCD(上手难度太高了,pass)

python写的pyOCD

Open source Python library for programming and debugging Arm Cortex-M microcontrollers

人生苦短,我用python

rust写的probe-rs

A debugging toolset and library for debugging embedded ARM and RISC-V targets on a separate host

考虑下用rust重构项目吗?

pyOCD和probe-rs都可以使用命令行下载,前者有pack包就可以,后者需要用软件将pack包转换成yaml使用。

命令行指令官方有提供,但是用起来还是不够方便,打包成GUI会好很多。

获取GUI

好人当然要做到底,这里奉上对应的GUI项目(或者直接下载附件):

  1. dap-download

    一个简单的GUI,为DAP-LINK提供烧录工具,基于tkinter,pygubu和pyocd。

    早期写的GUI,由于pyocd有bug,只能给daplink用
    2026.08.28: 使用deepseek对该项目进行了翻新,现在支持大部分link了

  2. probe-rs-gui

    a easy gui for probe-rs, use daplink/stlink/jlink download bin/elf/hex file

    好处是下载快,支持大部分link

上手使用

两个GUI操作方式相同(毕竟长得也完全一样),只是使用的配置文件不同。

dap_download

使用该上位机,需要以下几个文件:

  1. pack包
  2. 固件,可以是bin/elf/hex

第一次使用时,将pack包拖到GUI里,会自动安装到本地,后续就不需要再次安装或指定文件。也可以通过pack manager进行主动管理

在Probe里选择link,target里选择要烧录的芯片

点击Program Device就可以直接烧录了

probe-rs-GUI

使用该上位机,需要以下几个文件:

  1. pack包
  2. 固件,可以是bin/elf/hex
  3. 配置文件

配置文件介绍:

chip:HC32F4A0PGTBpack_yaml:./HC32F4A0-Series.yamlspeed:'16000'base_address:'0x00000000'#just for bin file, default is 0x08000000. negligible

和dap_download不一样的是,probe-rs需要手动将pack包转成yaml文件,好在官方提供了转换方法 how to use

还有烧录Bin文件时,需要手动指定起始地址

然后在上位机页面,Select Bin一项,选择要烧录的固件;

Select Config一项,选择yaml文件(注意不是pack包转换的yaml文件),点击Download即可。

附件

probe-rs-GUI
dap-download

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询