
本帖最后由 3NVN 于 2019-5-11 18:39 编辑 6 R7 c. _! C- t5 r * A3 t: j* a3 B 最新版的DAPLink,支持CDC串口,支持U盘拖拽升级固件和烧录程序。 修改适用于STLink,增加了SWO和软复位。 0 O6 x8 B* `5 n8 n 源码见我的github:http://github.com/bh3nvn/DAPLink7 t( M- {, ~5 l* k; u 0 E5 j4 c7 x% |+ K# ^ SWO直接使用了radio2radio的CMSIS-DAP 2.0驱动,在此表示感谢。经测试,最高支持到4M波特率。' t7 e! i# n% G0 A, M0 A; w; x( p ' L( N" B* C( d- \ ![]() ![]() |
谢谢,烧录到我的STLINK,MCU是STM32F103CBU6,这个型号是不能改STLINK_V2-1的,当然也不能改JLINK-OB了的,但是改你的DAPLink就正常。$ G/ z9 o& T$ i6 O. }
# Y: [- `9 ]9 P" y$ m) t, R1 p
初步使用,CMSIS-DAP正常,CDC正常,SWO没有测试,估计也能用。0 S/ s# O$ \7 F$ w' M4 O
有几个问题,
1. 在MDK/KEIL上面下载程序,得到的结果是:' K6 D& x& S4 \0 ^/ z7 V
---------------------------------------------------------4 \: A4 U9 R0 u; L) b9 r
Load "STM32F103-X8\\STM32F103-X8.axf"
Erase Done.
Programming Done.
Verify OK.
Application running ...9 T( S3 h4 o. O! H1 P
RDDI-DAP Error7 L8 l+ U- J% V
Flash Load finished at 00:31:24
------------------------------------------------% K# h7 C' g7 m" V! L4 N/ ~1 C$ Y3 L% M
上面的“RDDI-DAP Error”能解决吗,我原来的CMSIS-DAP也有这个,虽然不影响使用,但是不好看。
* T# p& E0 L2 D `# w/ ]# y# X
2. 拷贝目标代码到DAPLINK U盘下载,有没有大小限制,比如256KB的ROM能不能用,因为我对DAPLink不熟悉,不懂见笑。
3. DAPLink这个东西,1 D1 I# H0 U+ l) k
- 含有CMSIS-DAP+SWO+CDC功能,与独立的CMSIS-DAP+SWO+CDC功能一样。
- 有一个DAPLINK的U盘,支持拖拽下载。
- 支持ARM-MBED的用法,这方面我没有使用过,有什么高级玩法吗?
- 支持许多常见的IDE。; o7 V5 p6 x3 [: a, l8 f
4. 这个DAPLink的bootloader,除了可以下载自己的DAPLink主程序,是否还能下载用户程序到STLINK,改做他用。如果能,怎么玩。! }0 n) p* g* f2 y) ]
( j" e& F1 G* Y+ g( j
您客气了,我也是受您的帖子启发,才关注DAPLink的。
1.RDDI-DAP Error好像在uv4工程下没有,在uv5下才有。而且用软复位才有,如果用RST引脚复位,不会有整个错误,应该可以解决。
2.拷贝下载的大小限制,我也没有测试~( s* O5 C% d! F" \" U" }9 q, |- n
官方github已经开始支持CMSIS V2了,但是还有些问题,设备管理器里可以识别,但是Keil不能识别,等完善再研究吧。+ Q* w( @& c2 \- \0 c/ Z9 H
附件是没有软复位的固件。, }" k' X( Z2 k# o% l3 I
1 V/ n) F- C8 X5 L5 F
PS:今天到了一个STLINK,芯片被打磨了,没见过的版本。
; {( j }# p- O0 Y
4 \$ u6 V/ N( g# l9 M* f9 c* i1 y
' `8 C& o$ r* t- S$ r3 Y1 w
, T# T: o9 }: k9 O$ {) x
看来ARM-MBED的生态环境实在是很有限,如果没有现成的MBED项目源代码,新开工程很难自己从MBED起步。1 X4 ^+ E* c; M
至少STM32的官方不提倡,而是鼓励大家使用CubeMX。9 R% |5 b% T6 n# S2 v
7 i6 [! J x n. |$ u7 e. \- ?
- F u7 Y$ Y) t
这个bootloader就有48KB,占位太多,当然这是USB-MSD拖拽功能所需要的。玩儿bootloader下载,还是玩儿STLINK的改装bootloader吧。
客气了,受您启发才去研究DAPLink的,这几天官方又更新了,支持了CMSIS v2,但是还有些问题。; d3 w4 u+ k& v
% Z N. E0 n: {, y; B5 P, d% c
http://bh3nvn.github.io/2019/05/DAPLink2STlink/
【github】移植DAPLink到STLink->CDC串口-SWO
RST使用SWIN口,烧录bl之后,短接RST和GND,出现U盘,拷贝if,断开RST和GND,重新插拔就好了。烧录stm32F1的程序 直接拷贝进U盘就可以。4 t6 K1 |) f0 v* \3 k# V$ A
SWO在PA10! c& {6 [- `6 w# p8 ?
+ n: b: r& }$ U3 }" I. E+ Z
3.参考官方文档吧
4.应该可以的,只要用户app地址对了就应该可以,可以看下代码,里边有bl和if的起始地址。
我也感觉这个RDDI-DAP Error,与IDE有关系,由于很难分析KEIL内部的软起动的处理过程,我当时也没有解决。
1. 我想研究一下daplink源码,如何生成工程文件?GitHub上的代码好像没有工程代码,看好像是python生成,我如何生成我希望板子的工程,有没有help或说明文档?或是如何从你的GitHUB导出工程文档?- s3 f. n: T! M& T! e2 t8 v
2. 最新版本的swo是不是通过CDC给上位机的,原来HID模式好像速度不够
你好,
1、参考github上DAPLink Developers Guide,说明很详细
2、是CDC的
本来就开源的,还怎么共享啊* {( m# X b0 h0 ~' ?* z! @" Y