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

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

[复制链接]
radio2radio 发布时间:2018-5-31 15:47
阅读主题, 点击返回1楼
赞 1 收藏 45 评论418 发布时间:2018-5-31 15:47
418个回答
lzhang97 回答时间:2018-8-21 23:30:36
大佬,还有一个想法,可以把stlink上的SWIM端口改成SWO吗,这样如果用SWO就不需要飞线了
radio2radio 回答时间:2018-8-22 11:06:06
本帖最后由 radio2radio 于 2018-8-23 13:11 编辑 ( r# \' I2 ?/ J3 _6 d  N
SUSTZL 发表于 2018-8-21 23:30
1 W' I- F& C& i* j5 y大佬,还有一个想法,可以把stlink上的SWIM端口改成SWO吗,这样如果用SWO就不需要飞线了 ...

- N4 N. ?5 d/ y: K# g好想法,可是SWO走SWIM口,也可能需要修改。
: C5 C% _4 R- ?0 U原因在于,SWO使用串口USART1的RX线,必须走PA10或者PB7,STLINK的PA10是空脚,PB7在电路图中是SWIM_IN。. Z) e* X* q# E# c& m6 S5 J
但是我手上其中一个STLINK板子,PB7竟然也是空脚。' S( G. f1 G0 ~& F$ O# B

1 o2 P2 v. d- Y1 ^' X+ D6 \1 D4 `1 o2 P4 K' T) l

( S* H! ~! Q, z  z3 y如果您的板子的PB7不是空脚,而是通过220欧姆电阻接到SWIM端口的,就可以,少修改一条线。 1 T: x4 \$ c1 b& Y: y
附件就是SWO(PB7)走SWIM端口的固件,我没有测试过的,哪位用过如果有问题告诉我,特别是SWO功能。
! d8 Z2 F. i- b
& K) z0 t! g8 U' f9 j# ]$ z: ]

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

下载

25.6 KB, 下载次数: 34

lzhang97 回答时间:2018-8-22 19:24:08
radio2radio 发表于 2018-8-22 11:06
, V* k  J* T; u  W; C/ K好想法,可是SWO走SWIM口,也可能需要修改。
+ d+ \+ Q7 T$ C: Y% ^0 ~/ `9 c, ?原因在于,SWO使用串口USART1的RX线,必须走PA10或者PB7,STL ...
8 y1 N; q6 j4 c$ A1 B
谢谢大佬,学生党最近在忙着考研,没有时间去搞[code][/code] 得等其他老哥验证了
radio2radio 回答时间:2018-8-23 13:13:24
本帖最后由 radio2radio 于 2018-8-23 13:37 编辑
9 r: E2 t/ c8 \9 _' l5 u& E  Y  ?
SUSTZL 发表于 2018-8-22 19:24
7 c4 o' J9 E' |) a  f3 c( o谢谢大佬,学生党最近在忙着考研,没有时间去搞 得等其他老哥验证了 ...
, ^9 e4 F( M6 V" P
抱歉,下载过上面的“STLINK_V2A+SWO_PB7”固件的朋友,请重新下载我刚刚上传的更新过的。
hi201803 回答时间:2018-8-26 03:47:41
好消息, 楼主,
/ N9 |8 t9 o. }; p/ ~5 G# q$ ^刷你的最新版, 使用 Bluepill CMSIS-DAP  REmap,
5 r; n# M+ e/ C% B4 f2 d1 u" z使用 pyOCD , 调试下载程序到stm32f107rc flash, 调试窗口报告 下载速度 17.43 kB/s.( H% Y# E& h9 M/ z/ U, Q
' O$ Z* ^$ Q+ m
0006536:INFO:flash_builderrogrammed 86536 bytes (43 pages) at 17.43 kB/s
9 b+ K5 d- Z/ m' ~6 h, A6 {* S
* l6 H0 g/ U' M3 \; a6 O. n是否 启用了 SPI ! W. U+ ~1 ^% b, A' ~. D* h0 K

* V: a% [) s$ j
radio2radio 回答时间:2018-8-26 12:53:51
hi201803 发表于 2018-8-26 03:47
7 R" D5 E& \6 s( ~' Q2 |& \' d% b! D好消息, 楼主,
( Q  v; B3 M4 F& W% c# j2 z刷你的最新版, 使用 Bluepill CMSIS-DAP  REmap,
$ D3 N4 h, K- O5 h使用 pyOCD , 调试下载程序到stm32f ...

4 h+ Q- G3 ?* h7 X1 l1 \' B谢谢,这个速度算不算快? 我没有概念。
) S4 D: o& y- LCMSIS-DAP里面,没有使用SPI,纯软件GPIO控制。  }/ T4 `: T* L% u! B% R' `/ ^, j
hi201803 回答时间:2018-8-28 22:01:32
本帖最后由 hi201803 于 2018-8-29 06:18 编辑 ) z) U: R, g5 i# h8 h9 o6 b
radio2radio 发表于 2018-8-26 12:53
. V6 y) d9 I2 P- H& v! U- H  @谢谢,这个速度算不算快? 我没有概念。. I* i; D+ {% \% d
CMSIS-DAP里面,没有使用SPI,纯软件GPIO控制。* D4 e. b) c2 q
...

% D1 Z, v- e7 i( S8 C  Z5 GJ-link 自称在 stm32F1xx 上,编程速度最快到33 KB/s.# l5 V6 z* Y; A8 H2 z( W- m; O
但j-link 的产品,各个产品速率不一样. 9 }* I6 l& t: y: T4 o  T4 a7 i
+ a& c" `% z3 m" _5 x
源自: http://www.segger.com/products/ ... ogy/flash-download/
radio2radio 回答时间:2018-8-29 15:04:27
hi201803 发表于 2018-8-28 22:01
# S; ^* d% \8 tJ-link 自称在 stm32F1xx 上,编程速度最快到33 KB/s.
% ~4 @/ _0 |0 C' S( y, x8 |* A3 G但j-link 的产品,各个产品速率不一样.

- {, L: \3 ]% y; j看到了,这么说,下载速度,不仅与仿真器有关,还和IC的种类,以及工具软件等都有关。- z  b) l  L* e. a* q, q% k4 R

1 b7 w2 e' p0 ~* p* ^+ K) g  e+ y" K
  |( v0 k4 U) }! s* c) k另外,一楼更新了,更新到最新的包。
iechshy 回答时间:2018-9-11 16:37:41
多谢分享
radio2radio 回答时间:2018-9-11 22:11:39
有网友要我改一版Hex,用在下面的板子:5 e. }; R* ^7 l! D

, f2 Z) S1 j( u  r/ H7 ESWDIO PB146 D- P7 n2 b* ]/ m* l8 c% Z1 e
SWCLK PB13) Z- O0 J( C$ D: {2 q
nRESET PB0- }' N8 V  R5 H& V2 r/ f: p. X2 K
串口uart2_TX PA2: [) _5 B+ O# }( v9 N
串口uart3_RX PA3* }$ w$ ~8 R5 i7 n7 N
(以上,与STLINK_V20相同)
4 [1 @5 `# S( k( p5 ?5 D0 MLED  PB118 C7 j: K6 P8 v

. @5 ]& g; F5 j6 F+ f) Y+ {8 P( |1 Z现将Hex放在下面的附件:(SWD模式)6 h) \3 ~: j7 T8 A& ^# f1 B, t& V

5 g! _% V, k/ a; Y* z1 @& I

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

下载

25.65 KB, 下载次数: 31

kamp 回答时间:2018-9-12 12:06:37
radio2radio 发表于 2018-9-11 22:11
& r! c) C( K) D9 v4 H+ D! g' Q' }+ a有网友要我改一版Hex,用在下面的板子:6 D; p  w( S) l* M/ a' e

' \4 L9 Z! e$ }  _/ B9 bSWDIO PB14
+ G/ X, S) x* f, X8 y6 A
感谢radio2radio,可以用了。但发现这个dap还是不能像Jlink-ob一样三线制下载仿真,必须要和Jlink转SWD那样接上VCC才能下载和仿真。看参考图这个vcc是为了检查目标板电压的。为了防止dap的VCC和目标板自电源灌流,可能还需串个电阻或者小的自恢复保险丝来保证安全。
/ z2 c; ^% b7 l
: j! Q2 D( x: O, \4 @8 _- t  P% ]另外我改的DAP_CONFIG.H不知哪里不对,那个DCI黄色感叹号,串口正常,keil能识别仿真器,但无法连接目标板。0 Q5 c9 r$ q' W* w

7 K$ a: n' \7 z* Q! ?1 m' k+ Q  E
- S' W" ~6 B$ k/ G6 `4 y6 p" ? 2018-09-12_115613.png
3 |9 Z3 d6 Y0 N  I$ J0 ?. m
' V  b2 v4 Y, l+ O4 u& K/ w* v0 [4 n6 T
  1. #elif defined ( STLINK_V20 ) \
    . o* a9 L0 w+ `2 n0 g/ O( I
  2.    || defined ( STLINK_V21 )
    , L( A& c- D0 A7 g
  3. & }. w7 u/ r7 x! q$ l
  4. // SWDIO/TMS Pin
    # ?. a/ @( E. {& K$ s2 s
  5. #define PIN_SWDIO_TMS_PORT  GPIOB7 e' d3 ]1 V/ B
  6. #define PIN_SWDIO_TMS_PIN   14
    $ w7 _) j* q9 N8 O; v
  7. 3 l6 k0 {; n! t
  8. // SWCLK/TCK Pin
    ) ^8 ^9 V. V( Y2 G- R+ I7 E: J- S
  9. #define PIN_SWCLK_TCK_PORT  GPIOB
    1 J7 X% @: x) }% X
  10. #define PIN_SWCLK_TCK_PIN   13
    5 B* T' A/ x7 ^. l. k! s

  11. ' k, N* I+ U- ^  H7 o5 o
  12. // TDO/SWO Pin (input)5 L% Q% t8 @) y
  13. #define PIN_TDO_PORT        GPIOB
    & N; t/ a. q" `& A! k' B4 U" N
  14. #define PIN_TDO_PIN         7
    : ]; t* o3 B+ {% W
  15. , G  C* P6 C8 S4 f8 D
  16. // nRESET Pin; I4 p4 u7 q, e7 P' |
  17. #define PIN_nRESET_PORT     GPIOB
    0 L' P1 f) B. l, C% f
  18. #define PIN_nRESET_PIN      0
复制代码
第一段. X% Y, ~0 s: d) s: R
% `6 p+ x4 ?" Q2 t  J$ i8 F. |" B
  1. #elif defined ( STLINK_V21 )
    ; [7 w7 F# p' f$ N& _5 S, w
  2. 2 @: q6 [# |# i* v$ i: ]
  3. #define PIN_USB_CONNECT_RCC   RCC_APB2ENR_IOPAEN
    : V8 b' H  O  x7 K. D+ P* R: w5 `
  4. #define PIN_USB_CONNECT_PORT  GPIOA
    % ?! ]; o7 B7 u
  5. #define PIN_USB_CONNECT_PIN   15
    " N& ~( B+ f( _0 w0 ^
  6. #define PIN_USB_CONNECT_MASK  PIN_MASK(PIN_USB_CONNECT_PIN)6 @" r  h3 K2 W" B2 Q" ]
  7. #define PIN_USB_MODE          GPIO_Mode_Out_OD
    9 @# o. H, Z. ~8 Q' }
  8. #define PIN_USB_CONNECT_ON()  PIN_USB_CONNECT_PORT->BSRR = PIN_USB_CONNECT_MASK
    8 E& V$ R. x2 C
  9. #define PIN_USB_CONNECT_OFF() PIN_USB_CONNECT_PORT->BRR  = PIN_USB_CONNECT_MASK
复制代码
第二段  不知有何作用,好像dap板子cpu连线也没有PIN_USB_CONNECT_PIN,随便改了个没有用到的pin! _# s' f2 ]. e# i- K( q. m9 @
! z) {" s2 l) h9 T: l( h
另外 USE_STDPERIPH_DRIVER STM32F10X_MD STLINK_V21 SWO_PB7 SWD_REMAP  和没有SWD_REMAP都尝试过。2 S+ q4 o, n& S

# F8 w/ B$ o" @. c# X9 P- ]! i6 j  \+ d- z1 K5 S( }6 b
kamp 回答时间:2018-9-13 11:14:00
感谢radio2radio,可以用了。但发现这个dap还是不能像Jlink-ob一样三线制下载仿真
kamp 回答时间:2018-9-13 11:15:32
本帖最后由 myj2050 于 2018-9-13 11:16 编辑 6 @# s6 W) I+ P; l& W* b
* C1 O9 x, W  }3 n9 r5 Z0 v
2018-09-12_115613.png
- `, i3 Z+ v  w1 w* ^- j1 L- I& U; K1 L7 T1 D7 W
基本上只改了引脚定义,不知道为何编译后会出现这个问题,radio2radio提供的HEX下载就没有问题9 ^) h  N1 s' |0 c9 v8 {

* w1 }3 O8 Y  J" e7 R图片被遮挡了,那个是“其它设备”CMSIS DAP DCI    黄色感叹号. N7 T2 R. D" s
radio2radio 回答时间:2018-9-13 15:14:08
myj2050 发表于 2018-9-12 12:06! I0 Q. `4 X+ R9 B* I# a" b
感谢radio2radio,可以用了。但发现这个dap还是不能像Jlink-ob一样三线制下载仿真,必须要和Jlink转SWD那 ...

7 s$ @) M- B9 G. z/ V% [$ y这个是USB连接控制,如果是一些原装STLINK_V21的设计,可以通过GPIO(比如PA15)来控制USB口的连接,断开和再连接,而不需要插拔USB硬件。 当然需要PC软件支持。极少使用。
" {/ T8 h  u6 t+ b5 j$ k+ ~; R- m5 q9 p2 C: ?& Q
现在大多数的板子,比如BLUEPILL,STLINK_V2......,USB的D+线有连接一个1.5K~10K欧姆的电阻到3V3高电平,这种情况下,就没有这个USB连接控制。( o& P7 @5 H: `- S7 N0 |

& Q& _2 u, O4 |* E/ q, {$ P0 f, l5 x  L' u4 d
radio2radio 回答时间:2018-9-13 15:18:26
本帖最后由 radio2radio 于 2018-9-13 15:19 编辑
' s  B. B* D8 ]  B& {; Y
myj2050 发表于 2018-9-13 11:14
/ I) p8 [3 k: _) d, ?2 W感谢radio2radio,可以用了。但发现这个dap还是不能像Jlink-ob一样三线制下载仿真 ...
5 T2 c/ E  P& ?/ X. P, y' T
不知道你那边出了什么问题。 检查你的硬件。
0 s# n$ f- }" ^$ E# D# k6 X& m- s" W0 s2 d. d2 B" s* |) q9 a$ |- @
这个DAP仿真器的VCC,3.3V,是给目标板供电用的(50~100mA,不能太大),与软件没有关系,可以不接。
" `+ L- n9 J# m; [, y我刚刚试过,3线连接,工作正常。

所属标签

相似技术帖

官网相关资源

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