编译Daplink

Creative Commons
本作品采用知识共享署名

本文说明如何在windows下编译Daplink

DAPLink是ARM官方开源的一款调试烧录器,以前叫CMSIS DAP,现改名叫DAPLink。DAPLINK可以调试arm cortex全系列mcu,主要功能有:
调试和烧录(HID)
虚拟串口(CDC)
拽式编程(MSC)
WEBUSB功能(通过网页下载)

WebUSB是一个比较新的功能,演示如下:
访问https://armmbed.github.io/dapjs/examples/daplink-flash/web.html
插入daplink并连上板子,将编译好的image拖拽到网页上,点击SELECT DEVICE,如下图
select
选择device后将会自动下载,如下图
process

闲话太多,现在说明如何编译Daplink,由于我在ubuntu下的mbed环境一直有问题,只好将编译环境切换到windows上

依赖

Windows WSL
WSL下安装python 2.7.11以上
WSL下安装git
WSL下安装virtualenv(pip install virtualenv)
Windows下安装Keil

编译过程是python生成MDK project,再用Keil编译
其实WSL下的python和git都可以在windows下直接进行安装

编译

生成MDK project

进入WSL执行

1
2
3
4
5
6
$ git clone https://github.com/mbedmicro/DAPLink
$ cd DAPLink
$ virtualenv venv
$ source venv/bin/activate
$ pip install -r requirements.txt
$ progen generate -t uvision

如果windows下安装了python和git以上命令也可在windows上执行(source venv/bin/activate 在windows上要改为venv/Scripts/activate.bat)

Keil编译

前面命令执行完后在projectfiles/uvision下能找到对应board的MDK project,在windows下打开后用keil编译即可生成固件

DAPLink固件更新

按着Daplink的reset按键,重新插入Daplink会在电脑上产生一个U盘,将固件hex文件拷贝进入即可

参考

https://github.com/ARMmbed/DAPLink