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

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

[复制链接]
radio2radio 发布时间:2018-5-31 15:47
阅读主题, 点击返回1楼
赞 1 收藏 45 评论418 发布时间:2018-5-31 15:47
418个回答
radio2radio 回答时间:2019-4-29 11:47:26
redgragon 发表于 2019-4-28 16:15
' G5 j! B3 I5 W试用了一下发现很好很强大,SW模式下一切正常,但是JTAG下载一直无法实现,接线(DAPLINK->目标板的JTAG接口 ...

0 c* g8 |' R  {) X! O9 h1 C没有遇到过这种情况。您新开一个简单的工程试一试,是不是MDK的设置有问题。
, a4 z/ @* B" T+ |7 ]9 H注意Flash Download和Pack的设置。
redgragon 回答时间:2019-4-29 23:06:24
radio2radio 发表于 2019-4-29 11:47
' ?5 b8 ]6 T5 ~' g6 L没有遇到过这种情况。您新开一个简单的工程试一试,是不是MDK的设置有问题。
) f5 T2 p& [7 p3 {# j& @6 \$ `5 u注意Flash Download和Pack的 ...
( i1 I$ F" B4 O. f6 D* I
swd模式一切正常,所以感觉不是FLASH或者Pack的问题。。* ^( D5 S4 @8 ^, s1 H9 |
只有在JTAG模式才会出问题。。
radio2radio 回答时间:2019-4-30 10:36:21
redgragon 发表于 2019-4-29 23:06/ f1 ?  n' }- L0 Q$ m
swd模式一切正常,所以感觉不是FLASH或者Pack的问题。。
: l* ]$ Y+ {7 M* ]$ \9 V* I只有在JTAG模式才会出问题。。 ...
6 N8 S4 Q, x4 ]: {5 {$ u( t; @' R7 H1 X
试过其他简单的工程没有?
ricklou 回答时间:2019-4-30 16:15:59
我发现这个仿真器还可以调试仿真stc8a8k64,用kc51,如果单片机用的是5伏电压需要电平转换。3.3v就可以直接连仿真器。其他型号的stc单片机可以下载。如果你同时开发stm32和51的话,这个仿真器真是不二之选。具体的接线如下,如果线序不对,可以调换不会烧。
( \: r) Q6 V$ t. Q% \7 N% L$ ?4 [PA2>P3.0$ ~3 {8 g  C; h6 E0 o
PA3>P3.17 r% s* _, |$ m- T
教程可以看见网友的,我也是跟着他学的。他用的也是DAP。dap仿真stc51教程- q9 Z2 u) m% q' F+ D

, ~) T# m( v0 T  j" b% i: E2 l+ X2 ^3 J! v  D
radio2radio 回答时间:2019-4-30 19:36:58
本帖最后由 radio2radio 于 2019-4-30 19:38 编辑
$ o; B6 J+ L# e& H5 p
ricklou 发表于 2019-4-30 16:157 {# f; N% P8 e7 p3 C! n
我发现这个仿真器还可以调试仿真stc8a8k64,用kc51,如果单片机用的是5伏电压需要电平转换。3.3v就可以直接 ...

. a$ l+ V% K) H4 s: m# a9 e0 ~大材小用了,和DAP没有关系。
. N% \1 k1 g) l% g, F1 z0 j这个只是用了板子上面独立的CDC功能,也就是UART转USB串口功能。与通常的FT232RL/PL2303/CH340/CP210X转换板功能是一样的。  W( ^6 Y" r2 E/ I+ X
不过,反正价格便宜,就手用了就是。
, K5 B. _9 d/ L8 P- X, l6 w0 W
redgragon 回答时间:2019-4-30 21:22:30
radio2radio 发表于 2019-4-30 10:365 p9 E5 G. t8 X
试过其他简单的工程没有?

" x- q  |; f* y$ \1 q试过了都是这样的,怀疑是keil设置错了或者硬件接错了?$ Q9 j/ F3 V( \5 w8 _! _
PB5->JTDI0 |. b" j# v; v% q# W5 _/ r
PB6->RESET(这里不知道该接RESET还是JTRST?)
# p& Z: Y" P# Y- q( t7 s' S4 MPB7->JTDO; ?: A) \  e) A  G, z0 a: V+ p
应该没错把,,,
radio2radio 回答时间:2019-4-30 21:38:56
redgragon 发表于 2019-4-30 21:22
" P0 x& p; U4 C试过了都是这样的,怀疑是keil设置错了或者硬件接错了?7 |/ k5 Q& V4 i. }
PB5->JTDI) D& ]5 H, [$ l# M4 m
PB6->RESET(这里不知道该接RESET还是J ...
% H/ ^1 y* P& Q! R  _
PB6->nRESET,应该接目标板MCU的/RESET脚,也就是JTAG口的第15脚。
3NVN 回答时间:2019-4-30 21:41:09
我的的STLINK就PB7是连接到SWIM口的, 经过测试,可以用SWO功能。这样飞线PA2和PA3就可以。
' z1 w" S2 u9 [3 [使用SWO_PB7的宏定义,然后在DAP_config.h中增加PB7的定义
1 [2 w8 s5 P- \) m5 p8 Y. Q2 L% ^3 k7 _# _1 Z& G2 A
#if defined ( SWO_PB7 )
+ E: Y2 k& P# O8 ]( R, a// TDO/SWO Pin (input)
3 q4 {# p8 m* X& E#define PIN_TDO_PORT        GPIOB    //remap USART1_Rx_Pin to PB7 for SWO
# D" O5 O3 g6 ]9 i- u9 m#define PIN_TDO_PIN         71 l" `2 R* d4 g1 |

2 H/ [0 o; K4 U4 j* C5 b# x#elif defined ( SWO_PA10 )
+ Y$ J/ h( y& ]- _// TDO/SWO Pin (input)
! g8 ?  Z5 i9 w3 g6 O#define PIN_TDO_PORT        GPIOA4 \/ }* Q) A6 U* Z% |& m
#define PIN_TDO_PIN         10
0 O9 n4 i* Y. i* ~  O, Y#else- ]6 e6 I. s! ?6 }- V: A! G6 J; c, {' _
#error "SWO Pin undefined, please define SWO_PA10 or SWO_PB7 for your board."% W) \! Y8 y1 n* `, U
#endif
radio2radio 回答时间:2019-4-30 22:10:04
3NVN 发表于 2019-4-30 21:41/ V- M7 |" U# x- k2 |
我的的STLINK就PB7是连接到SWIM口的, 经过测试,可以用SWO功能。这样飞线PA2和PA3就可以。2 \9 X9 Y2 U; l' z
使用SWO_PB7的 ...
8 i- w5 m* f* o# P
谢谢您帮我验证了可以这样使用。* A( L2 Z/ z) v0 A6 Y6 n. @1 v
看1楼的图纸,与SWIM有关的脚有PB7,PB8,PB9三条(晕),您的板子的PB8/PB9是什么情况?如果有连接到SWIM,您是不是要切断他们?
3NVN 回答时间:2019-4-30 22:30:39
我的是PB7,PB9,PB10三条,标号是SWIM_IN,还有一条PB8标号是SWIM,见下边原理图。& e& S& i! d7 v/ c+ n3 i1 _) z4 Y
我没有割断,SWO工作正常。
$ \2 J7 q/ Q0 p! K2 [& A另外,GitHub 给您Pull Requests了,谢谢~# t) d9 v1 O6 v/ x$ G
3NVN 回答时间:2019-4-30 22:32:03
跟您1楼图纸是一样的
radio2radio 回答时间:2019-4-30 23:13:24
3NVN 发表于 2019-4-30 22:30  D8 R& I$ k0 Q1 H$ f
我的是PB7,PB9,PB10三条,标号是SWIM_IN,还有一条PB8标号是SWIM,见下边原理图。8 H8 n% A) N( _; d: b
我没有割断,SWO工作正常 ...
3 r& ~- r& i) B% D" j# y
谢谢,估计SWIM脚是输入/输出双向的,ST软件的版本不同,使用其中的两条。3 }$ g$ C( o& w* A
我们的程序,没有使用的脚都设置成高阻输入状态,所以即便是有连接,也不产生影响。% I* k. f7 ~$ l; e' Z" `
6 R4 Z5 W9 V4 W6 y0 L- ^/ m! |
github上面容我再仔细考虑一下怎么改,可能还要兼顾STLINK_V2B的JTAG模式的引脚安排。
3NVN 回答时间:2019-5-1 00:34:31
radio2radio 发表于 2019-4-30 23:133 _% O$ P' `6 u( v3 o. G
谢谢,估计SWIM脚是输入/输出双向的,ST软件的版本不同,使用其中的两条。/ B  s# e/ T) E
我们的程序,没有使用的脚都设 ...
6 n; c! V' f9 \8 @2 W
是的,我的现在保留了一个5v
radio2radio 回答时间:2019-5-1 00:49:58
3NVN 发表于 2019-5-1 00:34
* [% _3 _+ j" q  `8 O# L是的,我的现在保留了一个5v

4 z2 h9 D, k! r  ~, |& S那么,你的STLINK板子,是很容易分开两条5V线的吗?+ C3 V& {6 A- f
我的3.3V和5V都是上下过孔联通的,很难分开的,可能需要拆下10pin的连接器。
1 Y. \- b& l4 e$ Q5 d) _+ A$ p
( P. l: P& P$ J如果要有JTAG模式,就要改这个5V脚为JTDI。
3NVN 回答时间:2019-5-1 00:55:43
radio2radio 发表于 2019-5-1 00:492 d' E9 A9 s4 s: V# ?1 U
那么,你的STLINK板子,是很容易分开两条5V线的吗?- n9 Q/ D* }* G- i
我的3.3V和5V都是上下过孔联通的,很难分开的,可能需 ...
2 x, b" g8 e! y. I
我的也是过孔连接的,紧挨着连接器隔断,没有问题,不会破坏过孔影响另一面的电路。

所属标签

相似技术帖

官网相关资源

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