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

【源代码】STM32F103C8T6最小板搞定CMSIS-DAP和SWO功能  

[复制链接]
radio2radio 发布时间:2018-5-31 15:47
阅读主题, 点击返回1楼
1 收藏 45 评论417 发布时间:2018-5-31 15:47
417个回答
lzhang97 回答时间:2018-8-21 23:30:36
大佬,还有一个想法,可以把stlink上的SWIM端口改成SWO吗,这样如果用SWO就不需要飞线了
radio2radio 回答时间:2018-8-22 11:06:06
本帖最后由 radio2radio 于 2018-8-23 13:11 编辑 5 g1 m2 g0 o( |7 W) D
SUSTZL 发表于 2018-8-21 23:30
: g8 \4 J8 F9 i6 ?* s大佬,还有一个想法,可以把stlink上的SWIM端口改成SWO吗,这样如果用SWO就不需要飞线了 ...

" e) d7 s: I& a2 V+ p. w2 r8 P4 o! h好想法,可是SWO走SWIM口,也可能需要修改。
) n$ B( b: `9 ]0 v: @' ^; u原因在于,SWO使用串口USART1的RX线,必须走PA10或者PB7,STLINK的PA10是空脚,PB7在电路图中是SWIM_IN。% q0 I0 x/ }+ h6 i* |
但是我手上其中一个STLINK板子,PB7竟然也是空脚。
( j4 C" e# S- Q) i9 j( h5 W! L
% O( O" _6 h+ f( I6 n7 W5 y: ~; E# @# w  q9 \$ E* b% B3 o2 r
& s/ A/ h8 x9 t/ ~" f, a$ c$ v
如果您的板子的PB7不是空脚,而是通过220欧姆电阻接到SWIM端口的,就可以,少修改一条线。 ' Y9 W. K' w4 C, d# P6 ?+ \
附件就是SWO(PB7)走SWIM端口的固件,我没有测试过的,哪位用过如果有问题告诉我,特别是SWO功能。
4 y/ Z+ z, A* \1 x( @! q& _! P: x" Q/ B8 P* V3 |, o0 F5 ]  u

& h- g) z* D* U8 |2 Q/ u4 ~

F103-DAP-SWO-CDC-STLINK_V2A-SWO_PB7-20180823.rar

下载

25.6 KB, 下载次数: 31

lzhang97 回答时间:2018-8-22 19:24:08
radio2radio 发表于 2018-8-22 11:06
  t" l2 v; h: X& i+ H+ k/ A" Z好想法,可是SWO走SWIM口,也可能需要修改。1 N, X. R; ^' q4 D8 D# p0 d# T
原因在于,SWO使用串口USART1的RX线,必须走PA10或者PB7,STL ...

5 B& ~$ T, t( C* n7 o, |3 ^谢谢大佬,学生党最近在忙着考研,没有时间去搞[code][/code] 得等其他老哥验证了
radio2radio 回答时间:2018-8-23 13:13:24
本帖最后由 radio2radio 于 2018-8-23 13:37 编辑 ; `2 U$ f1 i  ^" M, v0 j  J
SUSTZL 发表于 2018-8-22 19:24/ |9 j3 D1 k7 |) b
谢谢大佬,学生党最近在忙着考研,没有时间去搞 得等其他老哥验证了 ...
1 p: f; \4 Y) w6 E1 w) ?2 a4 n+ Q5 q
抱歉,下载过上面的“STLINK_V2A+SWO_PB7”固件的朋友,请重新下载我刚刚上传的更新过的。
hi201803 回答时间:2018-8-26 03:47:41
好消息, 楼主,
1 k0 c! W. m: Q5 j* q0 F刷你的最新版, 使用 Bluepill CMSIS-DAP  REmap,
1 P3 j$ {0 q1 G$ r; Q* T7 W3 U# a使用 pyOCD , 调试下载程序到stm32f107rc flash, 调试窗口报告 下载速度 17.43 kB/s.* W3 G- u; e- R" G$ y0 E2 D
/ G! j' g% B2 W+ e; O7 h
0006536:INFO:flash_builderrogrammed 86536 bytes (43 pages) at 17.43 kB/s
/ ^; w9 i. s$ c
# T2 [* U; E  ^3 C是否 启用了 SPI
8 O( f! N* ^- W( T5 R2 I" Y
# P# _0 V' G$ p# c1 V7 Z
radio2radio 回答时间:2018-8-26 12:53:51
hi201803 发表于 2018-8-26 03:475 u+ t7 g3 M7 B( D  t) X2 y7 }5 X
好消息, 楼主, $ F; G; P' C# w+ |- x/ H1 g9 S
刷你的最新版, 使用 Bluepill CMSIS-DAP  REmap, . m+ X+ X7 N% R0 i0 Y; R7 A
使用 pyOCD , 调试下载程序到stm32f ...
" s) Z( T# A) k5 f, C: l- e5 e! X
谢谢,这个速度算不算快? 我没有概念。
1 @* R! C7 {' h6 ?( {CMSIS-DAP里面,没有使用SPI,纯软件GPIO控制。
, E( e! N" B; v; [" Q" l+ b) O. G
hi201803 回答时间:2018-8-28 22:01:32
本帖最后由 hi201803 于 2018-8-29 06:18 编辑   l8 k1 E! D# s
radio2radio 发表于 2018-8-26 12:53( E! u; V( n* F  t( v* T( L4 x4 j
谢谢,这个速度算不算快? 我没有概念。
# w! \0 _* s. ], m* t& {1 L  f- C( W: xCMSIS-DAP里面,没有使用SPI,纯软件GPIO控制。* r9 F% }3 k3 C! n% W) W6 l
...

. C) M1 n: e8 y- x3 h- N7 u* @2 JJ-link 自称在 stm32F1xx 上,编程速度最快到33 KB/s.( e+ W5 {6 r& k  N4 O
但j-link 的产品,各个产品速率不一样. + L* ~2 p' ]. k9 }

- h  p  |1 p4 n: k0 O; N源自: http://www.segger.com/products/ ... ogy/flash-download/
radio2radio 回答时间:2018-8-29 15:04:27
hi201803 发表于 2018-8-28 22:011 F3 ]1 c5 j" S% p& |. P* r
J-link 自称在 stm32F1xx 上,编程速度最快到33 KB/s.1 w! D, C3 g( \: c# E; o6 ^
但j-link 的产品,各个产品速率不一样.
3 {" Q6 n: F, d! C2 i
看到了,这么说,下载速度,不仅与仿真器有关,还和IC的种类,以及工具软件等都有关。
/ o1 s. N7 N0 l- s/ ?7 d
  d# x! ?- b* I/ v6 V
: L! V2 D) B6 C1 j: N+ v3 F$ A另外,一楼更新了,更新到最新的包。
iechshy 回答时间:2018-9-11 16:37:41
多谢分享
radio2radio 回答时间:2018-9-11 22:11:39
有网友要我改一版Hex,用在下面的板子:. F6 p: v' G, u( }9 r

, s! B- t$ w7 U- M& p( y' xSWDIO PB14
' G0 u* i" Z* N( } SWCLK PB13
- s$ D/ r  f7 tnRESET PB0: |- k; T1 h$ P5 \
串口uart2_TX PA2& D2 K( [5 A& B1 z, ^
串口uart3_RX PA3
1 d* s% S( Y" X! J(以上,与STLINK_V20相同)3 ^5 O* J3 ^, s9 _' x
LED  PB11+ z& r) r0 G& L0 w% [4 ]0 w# R

+ \8 _% Z, T$ c) G) J" X现将Hex放在下面的附件:(SWD模式)4 O$ K& r* j5 W
0 h. j! P: @4 j& w( R- ?& ~

F103-DAP-SWO-CDC-STLINK_V20-LED_PB11.rar

下载

25.65 KB, 下载次数: 29

kamp 回答时间:2018-9-12 12:06:37
radio2radio 发表于 2018-9-11 22:11
! o# _& s* B% `2 ^+ r有网友要我改一版Hex,用在下面的板子:& z! Z# Y$ ^0 P, ?! K# j; e
3 p( @% Y: e6 a+ R5 q% E
SWDIO PB14

, S( C, n& K& ^, |  e感谢radio2radio,可以用了。但发现这个dap还是不能像Jlink-ob一样三线制下载仿真,必须要和Jlink转SWD那样接上VCC才能下载和仿真。看参考图这个vcc是为了检查目标板电压的。为了防止dap的VCC和目标板自电源灌流,可能还需串个电阻或者小的自恢复保险丝来保证安全。
7 U% C4 Z4 L* P. `
, k5 Q: @6 k( N& @  ?" T另外我改的DAP_CONFIG.H不知哪里不对,那个DCI黄色感叹号,串口正常,keil能识别仿真器,但无法连接目标板。
7 z$ K/ |' C- M9 m! y& V4 d8 L, u. F) N2 F1 b5 V8 j
' w+ U" }' h  v$ \
2018-09-12_115613.png
) U4 a. m: N0 t* i2 M
* I- U3 R3 ~" \* `* t# |3 ]
: m# I% V  F+ @" @) n
  1. #elif defined ( STLINK_V20 ) \
    * V+ Z" |; x1 g, Z' [# F
  2.    || defined ( STLINK_V21 )4 X- E. ^- g8 V- m4 c' }6 B

  3. 3 c- w6 R6 @+ P- k
  4. // SWDIO/TMS Pin* y' n8 e! E7 }! f. M. ^, c
  5. #define PIN_SWDIO_TMS_PORT  GPIOB0 o0 Y& Q7 X9 Y9 a5 a
  6. #define PIN_SWDIO_TMS_PIN   14
    " Y# ~. y0 r+ f' _  L" y
  7. 0 N: c% o2 R4 Q
  8. // SWCLK/TCK Pin
    " K& B+ z2 E. S3 b
  9. #define PIN_SWCLK_TCK_PORT  GPIOB. @: D" [7 h0 @: L5 I$ R7 ^
  10. #define PIN_SWCLK_TCK_PIN   13% Z' q& @, F# \: J/ Z6 D$ b2 g4 B
  11. 1 G$ h$ C& o7 {. _/ U) D
  12. // TDO/SWO Pin (input): F% H% |1 H' k0 Y
  13. #define PIN_TDO_PORT        GPIOB# x, s4 p/ R$ }8 \& u3 }7 F( h( L0 b
  14. #define PIN_TDO_PIN         71 I- A) n' X; ]

  15. 4 Y, a; P/ O0 Z2 m: D0 z( C  e, R
  16. // nRESET Pin+ k& F# m% ]; O& ?8 B% Q; E( i. Z. O
  17. #define PIN_nRESET_PORT     GPIOB
    + `$ N7 b# U0 t& I
  18. #define PIN_nRESET_PIN      0
复制代码
第一段) h' E, l# k; P! X" o8 W
$ M; C) F. ]: n5 O' }% U# B
  1. #elif defined ( STLINK_V21 )' W* g3 r. i7 x- L9 d- n
  2. 5 d0 A( s) k. K% O& \7 w
  3. #define PIN_USB_CONNECT_RCC   RCC_APB2ENR_IOPAEN: x/ J# o4 `( {/ @: V
  4. #define PIN_USB_CONNECT_PORT  GPIOA
    # S; Z3 O* ^5 C. F- X7 [
  5. #define PIN_USB_CONNECT_PIN   15/ G0 v9 t( ]( U) r5 H
  6. #define PIN_USB_CONNECT_MASK  PIN_MASK(PIN_USB_CONNECT_PIN)
    . P. S( H  @# |/ \( ^& D% b
  7. #define PIN_USB_MODE          GPIO_Mode_Out_OD$ P$ {/ P: Z8 ^5 }& Q& @
  8. #define PIN_USB_CONNECT_ON()  PIN_USB_CONNECT_PORT->BSRR = PIN_USB_CONNECT_MASK
    " J4 C3 a% n; Q' g5 S
  9. #define PIN_USB_CONNECT_OFF() PIN_USB_CONNECT_PORT->BRR  = PIN_USB_CONNECT_MASK
复制代码
第二段  不知有何作用,好像dap板子cpu连线也没有PIN_USB_CONNECT_PIN,随便改了个没有用到的pin2 ]& n4 v$ j! |2 n1 o4 F
, K) c1 K& T- ?. _. \- c4 M
另外 USE_STDPERIPH_DRIVER STM32F10X_MD STLINK_V21 SWO_PB7 SWD_REMAP  和没有SWD_REMAP都尝试过。
+ O! W; w; ^7 L; D5 a2 V3 U! e4 k/ A+ B
, C8 z% H0 X; q8 j
kamp 回答时间:2018-9-13 11:14:00
感谢radio2radio,可以用了。但发现这个dap还是不能像Jlink-ob一样三线制下载仿真
kamp 回答时间:2018-9-13 11:15:32
本帖最后由 myj2050 于 2018-9-13 11:16 编辑 # \" N0 I0 S/ E& R- R
. V, d$ {+ B) J7 C: P+ X
2018-09-12_115613.png ' m0 e) [: v9 P  o; J$ A- [( b

0 ^% c" U" D# b1 _3 X+ Y基本上只改了引脚定义,不知道为何编译后会出现这个问题,radio2radio提供的HEX下载就没有问题" P5 t) T% H; I: q$ t& ?
! @, x/ _% q$ a$ V7 y$ K
图片被遮挡了,那个是“其它设备”CMSIS DAP DCI    黄色感叹号0 r2 c3 n" f9 r% p5 a
radio2radio 回答时间:2018-9-13 15:14:08
myj2050 发表于 2018-9-12 12:06
4 B, l4 z) ~3 L" V感谢radio2radio,可以用了。但发现这个dap还是不能像Jlink-ob一样三线制下载仿真,必须要和Jlink转SWD那 ...
# R  A+ I8 j. p3 f( G
这个是USB连接控制,如果是一些原装STLINK_V21的设计,可以通过GPIO(比如PA15)来控制USB口的连接,断开和再连接,而不需要插拔USB硬件。 当然需要PC软件支持。极少使用。
, ?2 i9 \  {/ D( ?
( W- s0 M8 o# C. L3 T/ |7 \现在大多数的板子,比如BLUEPILL,STLINK_V2......,USB的D+线有连接一个1.5K~10K欧姆的电阻到3V3高电平,这种情况下,就没有这个USB连接控制。
+ R5 r9 X7 f0 B$ D( l, U# m9 s. h. {0 v/ k) D4 N/ D0 K# P9 @' m
) c# k7 Q: d" g5 a; {( }- ?
radio2radio 回答时间:2018-9-13 15:18:26
本帖最后由 radio2radio 于 2018-9-13 15:19 编辑
- j, u7 ?. C" q7 |. y/ N
myj2050 发表于 2018-9-13 11:14$ Z1 W; K( N+ X: s( X
感谢radio2radio,可以用了。但发现这个dap还是不能像Jlink-ob一样三线制下载仿真 ...
) z) o4 `2 _5 a9 V7 T4 }4 l0 r0 g- P
不知道你那边出了什么问题。 检查你的硬件。
$ O4 \1 t% h, r4 B) C& q% k) o. w7 N5 u" m# ^7 b- c
这个DAP仿真器的VCC,3.3V,是给目标板供电用的(50~100mA,不能太大),与软件没有关系,可以不接。& k3 \+ S# S0 o: Z- v; P
我刚刚试过,3线连接,工作正常。
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版