• Stars
    star
    102
  • Rank 335,584 (Top 7 %)
  • Language
    C
  • License
    GNU General Publi...
  • Created about 5 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

DAPLink High Speed

中文 English

DAPLink-HS 用户手册

产品介绍

DAPLink-HS仿真器是缪斯实验室推出的高速DAP仿真器,使用USB 2.0 High Speed传输数据,基于开源DAPLink实现,支持U盘固件升级,拖拽烧录以及WebUSB烧录。相比当前市面上流行的jlink/st-link,烧录速度快,不丢固件,无版权风险,功能丰富,外观简洁精致,能较好的满足电子工程师进行日常的开发调试下载需求。

产品特点

  • 软件开源,无版权风险。当前市面上的jlink/stlink均为盗版,使用上存在一些法律问题,部分jlink和IDE如MDK配合使用时,会提示盗版而无法正常使用,且部分jlink版本存在使用一段时间后丢固件的问题,一旦固件丢失,需要手动操作软件恢复固件,操作极其繁琐。同时 jlink售价亦较为昂贵。
  • 引出5V、3.3V电源,不需要外接额外的电源到您的单板上,使用上更方便。
  • 引出SWD接口,支持主流上位机调试软件,包括keil、IAR、openocd,均支持使用SWD进行下载、单步调试。
  • 引出JTAG接口,配合openocd可支持全球范围内几乎所有SoC芯片的调试,如ARM Cortex-A系列、DSP、FPGA、MIPS等,因为SWD协议只是ARM自己定义的私有协议,而JTAG则是国际IEEE 1149标准。通常的仿真器目标芯片一般为ARM Cortex-M系列,均未引出JTAG接口,而本产品引出JTAG接口,适合您在其他平台下进行开发调试工作。
  • 支持虚拟串口(也就是既可以用来当仿真器,又可以作为串口工具使用,替代ch340、cp2102,pl2303)。
  • DAPLink是CMSIS-DAP仿真器的升级版,也是ARM官方在开源社区力推的仿真器,最大的特点是支持U盘拖拽烧录。插入DAPLink之后,PC上会出来一个U盘,只需将hex或者bin文件拖入到U盘中,即可完成烧录。
  • DAPLink支持U盘固件升级,只需将nRST接地,插入DAPLink,PC上即会出来一个U盘,只需将新的固件(hex或者bin文件)拖入到U盘中,即可完成固件升级。因为DAPLink实现了一个带U盘功能的bootloader,可以方便的完成固件升级。若您有基于STM32的产品正在量产,而且产品后续可能需要升级,则DAPLink中的bootloader代码非常值得您参考,客户端不需要安装复杂的IDE或者烧写工具才能完成升级,只需拖动到U盘即可方便的完成您的产品升级。

MDK配置说明

将DAPLink 插入到PC的USB口中,若一切正常,则在设备管理器中会出现一个虚拟串口和USB-HID设备,如图所示
usb_device

仿真器选择

在 Option -> Debug 一栏中选择CMSIS-DAP Debugger
debug_select

目标检测

在 Option -> Debug 菜单中点击Settings 进入配置菜单,如图所示,假若仿真器已经正常连接,则在左侧窗口会识别出仿真器的相关信息,假若使用SWD接口进行调试烧录,则请将接口配置成和左侧红框处一致。假若此时目标单板已经正常连接,则在右侧红框出会识别出目标单板的相关信息。
target_id1

烧写算法

对于特定的目标芯片,您需要为其配置特定的烧写算法,以stm32f10x系列为例,如图所示:
flash_algorithm

复位设置

一般情况下,您或许希望烧写完芯片之后立即开始运行,我们的DAPLink经过软件定制,支持复位后立即开始运行,您需要在Debug 选项中进行配置,如图所示:
reset_select

DAPLink使用

拖拽烧录

将DAPLink插入到PC中,正常情况下,会出现一个新的U盘,如图所示。 DAPLink支持U盘拖拽烧录,只需将hex或者bin文件拖拽到U盘中,即可完成芯片的烧录。
注意:每一种固件只支持一种芯片的拖拽烧录,具体支持拖拽烧录的芯片请查看firmware目录,您可根据自己的需求选择升级不同的固件。

固件升级

DAPLink 实现了一个bootloader并且提供了U盘功能,这使得固件升级极为方便。具体固件升级的操作过程如下:

  1. 使用杜邦线将nRST和GND短接。
  2. 将DAP插入到PC中,预期应该会出现一个名为MAINTAIN的U盘。
  3. 此时可以将nRST和GND断开。
  4. 将新的固件拖动到MAINTAIN U盘中,即可自动完成固件升级。

OpenOCD使用

请查阅此处,已经将常用的操作封装成脚本,只需双击脚本,便可完成目标芯片的读、写、擦除,由于目标芯片的平台众多,demo中目标为STM32F1系列的芯片,您可参考修改成支持您的平台。

产品链接

nanoDAP-HS高速DAP

FAQ

Q: 在win7系统下会提示无串口驱动,应该如何安装?

请取此目录下的可执行文件 (https://github.com/wuxx/nanoDAP-HS/tree/master/driver/windows7_serial_driver) 直接安装即可。

Q: 烧录失败,提示 RDDI-DAP ERROR,应该如何解决?

由于仿真器烧录速度较快,杜邦线之间的信号会产生串扰,请尝试换短一些的杜邦线,或者把紧密连在一起的杜邦线拉开,也可以尝试降低烧录速度,一般即可正常解决。

Q: 无法检测到目标,提示communication failure,应该如何解决?

请首先排查硬件接线是否正确(GND, CLK, IO, 3V3),然后检查目标板电源是否正常,若目标板由仿真器供电,由于USB最大输出电流只有500mA,请排查是否可能目标板供电不足。

Q: CMSIS-DAP/DAPLink目前支持哪些芯片的调试烧录?

典型的使用场景为对单片机进行编程调试,理论上Cortex-M系列的内核均可以使用DAP进行烧录调试,典型的芯片如STM32全系列的芯片,GD32全系列,nRF51/52系列等。

Q: DAPLink目前支持哪些芯片的U盘拖拽烧录?

目前DAPLink支持拖拽烧录的芯片并不算特别多,将来随着ARM社区支持力度将会增加更多芯片支持,假若您有自己的芯片平台需要支持拖拽烧录,可以参考目前已有的的代码作修改。

Q: 在linux下可以使用DAP仿真器进行调试吗?

linux下可以使用openocd配合DAP仿真器进行调试,openocd是目前全世界最流行,最强大的开源调试器上位机,由于openocd是跨平台的,你也可以在windows下使用openocd,通过编写适当的配置脚本,可以实现对芯片的调试、烧录等操作。由于涉及内容较多,更多说明请读者自行搜索,或者留言咨询。

有任何问题或者建议,请在本仓库的Issues页面中提出,我们会持续跟进解决。

More Repositories

1

nanoDAP

建议大家star此仓库,仓库会持续更新。由于部分淘宝卖家“借鉴”实验室出品的nanoDAP详情描述和资料,请大家认准实验室官方链接
C
1,010
star
2

nanoDLA

24MHz sampling rate Logic Analyzer based on fx2lafw
C
507
star
3

icesugar

iCESugar FPGA Board (base on iCE40UP5k)
Verilog
315
star
4

TD4-4BIT-CPU

simple 4-BIT CPU with 74-serials chip,origin by Kaoru Tonami in his book “How to build a CPU”
HTML
220
star
5

Colorlight-FPGA-Projects

current focus on Colorlight i5 and i9 & i9plus module
Verilog
208
star
6

icesugar-pro

iCESugar series FPGA dev board
Verilog
141
star
7

nanoDAP-wireless

nanoDAP-wireless无线仿真器用户手册
126
star
8

openocd-toolbox

OpenOCD工具箱 (温馨提示:请点击本页面右侧绿色按钮处下载zip压缩包)
Tcl
122
star
9

AntRunner

a DIY Antenna Rotator by BG5DIW
C
108
star
10

icesugar-nano

iCESugar-nano FPGA board (base on iCE40LP1K)
AGS Script
83
star
11

ESPLink

designed for debug Espressif's ESP series chips, include ESP8266/ESP32/ESP32-S2/ESP32-C3/ESP32-S3...
C
63
star
12

USB-HS-Bridge

61
star
13

nanoCH32V003

Shell
57
star
14

nanoCH32V203

45
star
15

nanoESP32-S2

Shell
44
star
16

nanoESP32-S3

ESP32-S3 dev board
C
42
star
17

smachine

Simple Machine, include simulator、ccompiler、assembler
C
40
star
18

nanoCH55x

Shell
39
star
19

8086sos

simple os for 8086 on a MBR
Assembly
34
star
20

RPI-HAT-Programmer

树莓派多功能编程器
C
33
star
21

nanoESP32-C3

ESP32-C3 dev board by muselab
Shell
26
star
22

PDTricker

C
25
star
23

f1c100s-gpio-tools

Command-line access to F1C100s GPIO
C
23
star
24

HC6502

home computer 6502
C
22
star
25

CVE-2020-8004

Python
20
star
26

sigrok-firmware-fx2lafw

C
19
star
27

nrf24-ble

C
15
star
28

nanoCH32V305

15
star
29

sos

Simple OS for raspberry pi 2 model B
C
14
star
30

dslogic

C
13
star
31

pico-lab

C
12
star
32

nanoESP32-C6

11
star
33

ART-of-PCB

HTML
10
star
34

nanoUART

a mini Serial Tool based on CH343P, support up to 6Mbps baudrate.
10
star
35

nanoDAP-HS-wireless

10
star
36

nanoSTM32F0

C
8
star
37

CH32V203-makefile-example

C
7
star
38

DIY-UDISK

6
star
39

RPI-HAT-CoolingFan

树莓派扩展板-散热风扇
C
6
star
40

pyocd-toolbox

Python
6
star
41

linux-wild-tutorial

Shell
6
star
42

RPI-HAT-Pico-BreakoutBoard

RPI-HAT-Pico-BreakoutBoard
Shell
5
star
43

nanoUART-wl

4
star
44

smart_switch_hack

https://www.muselab-tech.com/zhi-neng-kai-guan-ni-xiang-bing-shua-ru-tasmotagu-jian/
Shell
4
star
45

snowflake-light

3
star
46

CH32V003-makefile-example

C
3
star
47

naooUART-wl

2
star
48

wch-riscv-openocd

C
2
star
49

Look4Sat-AntRunner-Controller

Use Look4Sat to control my AntRunner rotator
C
2
star
50

esp32-key

2
star
51

rpi_monitor

自己动手做视频监控
C
2
star
52

nes

C
2
star
53

ml-esp-link

2
star
54

dot

some dot scripts.
Makefile
1
star
55

nanoUART-wl-lr

long range wirelss UART Tool
1
star
56

u-things

iot project with USB interface
C
1
star
57

python

some python application, games.
Python
1
star
58

blues_200_licks

1
star
59

opencv

1
star
60

gnuplot

some gnuplot script
Gnuplot
1
star
61

caculator

caculator written in C, for myself to learn the decline recursive analysis
C
1
star
62

Converter

C++
1
star
63

RPI-HAT-Lora-SX1278

C
1
star
64

pyqt5

Python
1
star
65

tools

C
1
star
66

RPI-HAT-Color-Matrix

1
star