你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【源码】STLINK-V3MINI 高速USB仿真器,成功改刷【高速CMSIS-DAP】  

[复制链接]
radio2radio 发布时间:2019-9-1 14:04
阅读主题, 点击返回1楼
赞 1 收藏 25 评论104 发布时间:2019-9-1 14:04
104个回答
mcu_i 回答时间:2019-9-30 11:57:04
楼主好,我做了一个daplink,遇到这样一个问题,就是目前是全速设备,想改成高速设备,电路仿照别人的,在D+线上加了个pmos用来控制1.5k上拉电阻的连接,那么问题来了,怎么对官方的源码进行改动才能实现高速USB设备?我看到程序里有个    USBD_HighSpeed = __FALSE ;我给改成了__TRUE,直接就无法识别了。。。9 v5 n$ j& w" E
我的程序是官方最新的0254版本,不知道楼主的V2.0.0是什么版本
电路.png
官方源码.png
radio2radio 回答时间:2019-9-30 12:53:38
刚好我最近也在为STLINK-V3MINI,移植DAPLink的事情伤脑筋,看了一下DAPLink的源码,许多事情还不是很了解。8 o& Y: f& ^5 C6 P
3 X8 K+ b& E5 w2 C- m
要改高速USB,首先你的硬件要没有问题,比如说我的STLINK-V3原来就是内置高速USB接口的。 我在CubeMX开个高速的VCP项目,很容易就验证了硬件。 建议您也试一试。7 F1 \) }6 N5 `. d$ s1 H: S
! c  O0 d% r( q6 R- w2 D! _
不知你用什么MCU,DAPLink里面有没有人用过。
1 Z/ W3 H/ B  ?& n; _( s% @# H4 H$ |# S8 u
软件方面,先改usbd_hw.h里面的底层驱动的函数,用你的高速USB库实现,如果有现成的,就省事了。1 T8 O/ ?  ^: O- c# T5 T) ^
开通高速,要到usb_config.c文件里面修改配置,可以参考已经搞好的高速项目,比如k26f 和sam3u2c。
1 v+ J" k; ]+ `& A* W, X9 o1 ?
radio2radio 回答时间:2019-9-30 13:14:36
mcu_i 发表于 2019-9-30 11:575 J" O  F9 F8 D3 g: W+ k* R
楼主好,我做了一个daplink,遇到这样一个问题,就是目前是全速设备,想改成高速设备,电路仿照别人的,在D ...
2 c7 O) ]0 U  B( N; Z5 M3 H; A% j
接上面的回复。 版本号的问题,
- L) M; p  D" b/ F( c
' Y0 b* R6 v  Q$ W6 D; l& Y) TCMSIS-DAP 有2个版本在用:v1.1.0(DAPLink用的),v2.0.0(增加了SWO_STREAM模式等)" n) K+ v1 D$ P* t0 ~
7 G9 M" x- Z- Y; }' o, P$ _
DAPLink的版本号,0254是最新版的。
1 s7 H2 V" k% ^- T; T" `" {% |1 u1 O) F; z2 e- A, l. t
还有一个经常提到的CMSIS-DAP v1,这个是指HID模式的。 CMSIS-DAP v2是指WinUSB模式的。
飞跃-344154 回答时间:2019-10-2 21:58:57
不错,值得一试
radio2radio 回答时间:2019-10-10 00:07:31
关于DAPLink的思考,
0 Z2 A0 U# V" P& ~. i, t8 ]由于很想将现在的DAPLink移植到STLINK-V3MINI硬件上面,仔细研究了一下DAPLink的源代码。 说实话,我没有使用过DAPLink,随着对DAPLink理念的深入理解,我发现移植DAPLink到独立的硬件上面,比如这个STLINK-V3MINI,意义不大。 现决定放弃。
  X' a( L5 A$ P& o0 ?2 B2 k2 P  B  w
$ F: z: Q  h4 u! x8 l# X4 ODAPLink是CMSIS-DAP的延申,主要是用于IC厂家在推广一款MCU时提供的开发板/演示板上面使用。功能类似于STLINK在STM32各种开发板上面所提供的辅助开发接口。
0 Y, {7 |% b- ^% P9 y  u" E. L: P" I# |4 [
1- DAPLink的控制IC,内部称为HIC,常见的是K20DX, LPC11U35, STM32F103等等。 HIC主要功能是运行CMSIS-DAP,具有USB-MSC自我更新能力,和拖拽下载目标板程序的功能,新版本具有WebUSB下载目标程序的功能。% [8 Y6 C( ?5 S' V/ k* v

1 L. K1 _0 P7 k2 y8 u2- DAPLink可以提供一种标准的上位机可控的下载接口,开发板供应商,第三方上位机软件开发商,可以包装成各种傻瓜式的开发环境。 目的是令整个系统容易使用,特别是给儿童使用。这与我们经常使用的IDE不是一码事儿。
, T/ l2 b/ \8 [( ^/ @) p+ {2 O% f
3- DAPLink控制板,通常要与目标板一起提供给终端使用者,一般没有单独的设备出售。 因为不同的目标板MCU不同,MCU程序的下载算法也不同,这就使得DAPLink的控制软件也不同,虽然有USB-MSC自我更新能力, 也不能很方便地像JLINK/STLINK/CMSIS-DAP那样在不同的IC之间转换。) z/ s  {% Q, ~" ?( _1 ^$ P8 \
( m4 C- h! K+ X. L1 k; P; {
4- DAPLink所用的HIC要便宜,固件要成熟。 这一点对开发板厂商很重要。 是不是USB2.0高速(高速的价格贵好几倍),不重要。  H  U5 b; _; X; z, R( g8 T
' a% C9 D! r* g$ `" W

6 ]$ p# ?$ ]- a' O4 S' J- b2 d8 Q所以我..........放弃移植DAPLink,不搞了。 有时间继续优化CMSIS-DAP。
5 E" N' b3 p# O. {5 A1 l顺便说一下, 使用独立的CMSIS-DAP, 特别是这个高速版的,很好用。
; @0 x) J8 q4 N; P9 X2 }2 R( R% Q& }& y& x
mcu_i 回答时间:2019-10-17 23:25:56
radio2radio 发表于 2019-9-30 12:53
4 ?  p) E2 w" A# I' u( u' {+ D3 Z刚好我最近也在为STLINK-V3MINI,移植DAPLink的事情伤脑筋,看了一下DAPLink的源码,许多事情还不是很了解 ...

5 ~( @- _/ V) Q% K感谢楼主,找了一些资料后我现在搞明白了,我那个电路应该是不能实现高速USB,必须加高速USB的芯片才可以。
. n0 G5 T9 p- o9 Q最近我在研究关闭daplink一键拖拽下载的功能,也就是使其连接电脑后不显示U盘,改了源码里面带着dsiable、msd之类字眼的变量,都不管用,楼主有没有这方面的经验?谢谢
radio2radio 回答时间:2019-10-18 00:17:09
mcu_i 发表于 2019-10-17 23:25; R' T7 ^# H2 T( X
感谢楼主,找了一些资料后我现在搞明白了,我那个电路应该是不能实现高速USB,必须加高速USB的芯片才可以 ...
: }* M% T4 Q- ^: Y  u) o( K
我没有这方面经验,不过不知道您为什么要去掉这个拖拽下载功能,不用摆在那里不行吗。 拖拽下载功能,是有很严格的要求的,不是自己的代码,不能刷的呀。
Nikola 回答时间:2019-10-29 13:09:48
STM32F723IEK6 太贵了。。。
radio2radio 回答时间:2019-10-29 13:39:01
秦秦秦 发表于 2019-10-29 13:09
% x3 ~9 b9 H# S7 r( nSTM32F723IEK6 太贵了。。。

0 i; X. x5 u; `. z! V  _3 d6 s买IC如果数量不大,当然贵啦。/ H) o' o% s+ ^

* h5 Y6 f1 z9 k! }, e) ~& g; g自己用,建议您买2个STLINK-V3MINI,一个不动,一个改装。
Nikola 回答时间:2019-11-6 11:12:39
radio2radio 发表于 2019-10-29 13:39
+ T( O0 y, e: p4 ^! B1 M' X买IC如果数量不大,当然贵啦。$ C/ k- C$ R1 r& @5 e! ?. Q0 b
; P8 A2 Z+ o9 L# Z  V7 _9 m) }! E
自己用,建议您买2个STLINK-V3MINI,一个不动,一个改装。 ...

; K! M9 n+ ]) I* ?' ~! t谢谢您的建议
radio2radio 回答时间:2019-11-9 20:25:57
今天搞定了AC6的优化问题,原来是CMSIS-DAP源码的一个已知的小Bug,底层定时部分会随着选择不同的优化等级而有变化。 在大多数的情况下,不影响使用。 所以ARM方面也不急于改正。
) t/ v; t& [5 s. |1 {  U3 O% I(1楼源码已更新)
radio2radio 回答时间:2019-11-30 12:35:39
今天又做了重要更新,速度更加快了,在Keil里面设定SW速度为10MHz,实际SWCLK可以达到8MHz。
, Z3 x+ a( b0 X4 M( p
; e2 x3 X" {% \5 \% S+ Z/ ]其实,SWCLK的速度还可以进一步提高,翻倍也不难,有源码在那里,想改就可以改。
radio2radio 回答时间:2019-12-23 08:49:27
昨天又重要更新,速度快多了,SWD模式18MHz最高时。
zjq985062714 回答时间:2020-3-27 16:01:44
边缘那些GPIO可能可以通过bridge(STLINK-V3-BRIDGE)控制?不过就算这样,也要上位机才行
radio2radio 回答时间:2020-3-27 16:43:46
zjq985062714 发表于 2020-3-27 16:015 \1 t8 E0 y) z! a" C; P8 d: F% b
边缘那些GPIO可能可以通过bridge(STLINK-V3-BRIDGE)控制?不过就算这样,也要上位机才行 ...
3 w1 @" H5 v2 a+ ~2 e
这个功能是需要上位机软件支持,ST已经有软件,但是只支持原装的STLINK-V3MINI。8 s4 L2 }' `1 V5 g4 V
改装后的CMSIS-DAP,这些GPIOs可以利用做好多事情。
/ Y4 h6 H: H- k$ H, g
7 D; K) |8 P  L- J/ Z- d# r- _' l$ ~  a复制出(STLINK-V3-BRIDGE)的控制功能,就要搞清楚ST软件的协议,还是很麻烦的。自己写一个出来,又要连上位机软件都要写。 主要还是觉得用处不大。
0 r: |1 u% ?# R. a  Q& C; n! l1 l也想过用GPIO搞一个逻辑分析仪,后来发现自己做的性能不如20多元TB买的那种。
/ e7 c" R) w7 l, c+ @( M- l+ \
7 `0 Y! z& J! S/ W* @始终没有想好如何利用起来那些个GPIO/I2C/SPI/CAN/ADC。。。。

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版