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

【源代码】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
6 Z5 w8 T) Z* c试用了一下发现很好很强大,SW模式下一切正常,但是JTAG下载一直无法实现,接线(DAPLINK->目标板的JTAG接口 ...

* e4 L" |1 m+ a# E5 q没有遇到过这种情况。您新开一个简单的工程试一试,是不是MDK的设置有问题。
- J# d- k- C2 ~5 f注意Flash Download和Pack的设置。
redgragon 回答时间:2019-4-29 23:06:24
radio2radio 发表于 2019-4-29 11:47
) v. ^( l1 c3 h$ A6 `; E) S没有遇到过这种情况。您新开一个简单的工程试一试,是不是MDK的设置有问题。
6 x! j# Z6 M8 C: f/ T注意Flash Download和Pack的 ...

- e1 M3 m  x5 C: r( Dswd模式一切正常,所以感觉不是FLASH或者Pack的问题。。
! v6 S0 [- n2 [4 ], ~! T只有在JTAG模式才会出问题。。
radio2radio 回答时间:2019-4-30 10:36:21
redgragon 发表于 2019-4-29 23:06
6 }  c) e/ ^) l0 ^: `0 s1 S" bswd模式一切正常,所以感觉不是FLASH或者Pack的问题。。+ `1 m5 |2 D6 I( ~! S
只有在JTAG模式才会出问题。。 ...
9 r; f$ o; T' L7 n2 i, O$ v; m' q1 Q
试过其他简单的工程没有?
ricklou 回答时间:2019-4-30 16:15:59
我发现这个仿真器还可以调试仿真stc8a8k64,用kc51,如果单片机用的是5伏电压需要电平转换。3.3v就可以直接连仿真器。其他型号的stc单片机可以下载。如果你同时开发stm32和51的话,这个仿真器真是不二之选。具体的接线如下,如果线序不对,可以调换不会烧。3 t5 ~" C* x: S+ M7 O
PA2>P3.0
) d$ E# [& ?% |/ c: s7 YPA3>P3.1
$ z- D2 H" Z0 m( X教程可以看见网友的,我也是跟着他学的。他用的也是DAP。dap仿真stc51教程1 \8 I3 Y& ~' A

: ^8 v  u" d5 a* [" W' M$ A2 k) b/ T8 }  S0 U. A' a
radio2radio 回答时间:2019-4-30 19:36:58
本帖最后由 radio2radio 于 2019-4-30 19:38 编辑
( E( s% K" C1 R; F% G6 h
ricklou 发表于 2019-4-30 16:15
7 U$ Y6 R2 b. T6 ]1 l( k我发现这个仿真器还可以调试仿真stc8a8k64,用kc51,如果单片机用的是5伏电压需要电平转换。3.3v就可以直接 ...
6 z/ [9 u1 e9 C' [" d4 B
大材小用了,和DAP没有关系。! e+ ~, X$ M5 n7 s0 W
这个只是用了板子上面独立的CDC功能,也就是UART转USB串口功能。与通常的FT232RL/PL2303/CH340/CP210X转换板功能是一样的。
" `9 `2 F" u& V7 W不过,反正价格便宜,就手用了就是。  s( B7 {6 ^: \# P% }' v( L
redgragon 回答时间:2019-4-30 21:22:30
radio2radio 发表于 2019-4-30 10:36
. [+ v0 O& O' `7 U- i+ z试过其他简单的工程没有?
2 ^, O+ O: A) C5 h* S) t
试过了都是这样的,怀疑是keil设置错了或者硬件接错了?) v. ]" V& t" }* \
PB5->JTDI
8 F3 h5 r4 B) E6 XPB6->RESET(这里不知道该接RESET还是JTRST?). c6 x* W$ c+ @4 g3 O+ n1 v
PB7->JTDO
3 |3 V1 G7 u$ Y$ `5 R4 }5 b$ r应该没错把,,,
radio2radio 回答时间:2019-4-30 21:38:56
redgragon 发表于 2019-4-30 21:225 j/ L/ m- k) N3 s' ?
试过了都是这样的,怀疑是keil设置错了或者硬件接错了?- L  w7 B  q. W* C2 u# a8 c
PB5->JTDI
! ~9 U2 A7 `( _$ A% b( D. c% |PB6->RESET(这里不知道该接RESET还是J ...
4 K  q  s9 [8 U. n9 @: {! {  g2 l% S
PB6->nRESET,应该接目标板MCU的/RESET脚,也就是JTAG口的第15脚。
3NVN 回答时间:2019-4-30 21:41:09
我的的STLINK就PB7是连接到SWIM口的, 经过测试,可以用SWO功能。这样飞线PA2和PA3就可以。
! F2 C* J- J+ J* o, Y5 z: k. v使用SWO_PB7的宏定义,然后在DAP_config.h中增加PB7的定义
) x& `% y& H  ~- v" S. Y& y& D) O0 W* w) G+ c$ r
#if defined ( SWO_PB7 )% s) j- G3 @  G& g
// TDO/SWO Pin (input)
0 {* f7 N7 c7 ?) a! S# a#define PIN_TDO_PORT        GPIOB    //remap USART1_Rx_Pin to PB7 for SWO7 y$ a5 G4 e3 J7 V6 k. q0 m
#define PIN_TDO_PIN         7
- P, h- f% i3 {6 U! }
3 F. a1 \! r* ]6 R% B1 X#elif defined ( SWO_PA10 )( p8 G1 m" M- q, t
// TDO/SWO Pin (input)  j* \1 D7 y3 y+ ?2 [: x; N, C, Q( C3 C
#define PIN_TDO_PORT        GPIOA
- M' f0 {6 Y, h8 o#define PIN_TDO_PIN         10
  d! m3 p  b- a" R7 _' i2 |9 n. ?#else
( A1 i" {' k3 s8 @#error "SWO Pin undefined, please define SWO_PA10 or SWO_PB7 for your board."& Z% J5 K8 d2 @: m
#endif
radio2radio 回答时间:2019-4-30 22:10:04
3NVN 发表于 2019-4-30 21:41
/ h$ [4 u. S- }我的的STLINK就PB7是连接到SWIM口的, 经过测试,可以用SWO功能。这样飞线PA2和PA3就可以。+ y" z9 i& u4 D9 w
使用SWO_PB7的 ...

6 o* f& Z4 _5 V1 G! i- Y9 K. Y谢谢您帮我验证了可以这样使用。" S( }: q; J( n
看1楼的图纸,与SWIM有关的脚有PB7,PB8,PB9三条(晕),您的板子的PB8/PB9是什么情况?如果有连接到SWIM,您是不是要切断他们?
3NVN 回答时间:2019-4-30 22:30:39
我的是PB7,PB9,PB10三条,标号是SWIM_IN,还有一条PB8标号是SWIM,见下边原理图。
! {4 o3 F1 s. H7 R+ O我没有割断,SWO工作正常。
; ~% ^) a: x3 V1 v) F' ?" }另外,GitHub 给您Pull Requests了,谢谢~
6 z4 r% `, E: V: I1 d
3NVN 回答时间:2019-4-30 22:32:03
跟您1楼图纸是一样的
radio2radio 回答时间:2019-4-30 23:13:24
3NVN 发表于 2019-4-30 22:30
  n) [6 c. x$ F" }我的是PB7,PB9,PB10三条,标号是SWIM_IN,还有一条PB8标号是SWIM,见下边原理图。& d# J1 x: ^$ j' I; U% v2 l/ z
我没有割断,SWO工作正常 ...
; ~: P4 X. T6 i. U9 f0 U: E
谢谢,估计SWIM脚是输入/输出双向的,ST软件的版本不同,使用其中的两条。
2 t- O( f- `" l' ]0 v; I我们的程序,没有使用的脚都设置成高阻输入状态,所以即便是有连接,也不产生影响。
5 y" M' Q) g( Y# i' L
; A. N* |  S5 G) e* X7 ygithub上面容我再仔细考虑一下怎么改,可能还要兼顾STLINK_V2B的JTAG模式的引脚安排。
3NVN 回答时间:2019-5-1 00:34:31
radio2radio 发表于 2019-4-30 23:131 l5 v/ p! D1 }
谢谢,估计SWIM脚是输入/输出双向的,ST软件的版本不同,使用其中的两条。
/ q8 o  q& T3 W8 ^  B我们的程序,没有使用的脚都设 ...
/ o) X4 m9 E' k! q; C
是的,我的现在保留了一个5v
radio2radio 回答时间:2019-5-1 00:49:58
3NVN 发表于 2019-5-1 00:34
9 J+ L- a5 {7 R; z  X是的,我的现在保留了一个5v
9 N1 b8 e% G5 l: R& D* `
那么,你的STLINK板子,是很容易分开两条5V线的吗?
; i2 U% i( J7 u  ^' P; O: w* R我的3.3V和5V都是上下过孔联通的,很难分开的,可能需要拆下10pin的连接器。/ k* A' @2 q& t2 _# M" L

1 g9 n  j8 M1 P如果要有JTAG模式,就要改这个5V脚为JTDI。
3NVN 回答时间:2019-5-1 00:55:43
radio2radio 发表于 2019-5-1 00:49+ k! G- _! r! I* R1 V0 f5 V% |
那么,你的STLINK板子,是很容易分开两条5V线的吗?2 [# y7 V) E0 g# S# k# e
我的3.3V和5V都是上下过孔联通的,很难分开的,可能需 ...

% F- A) V% ]7 X! S7 _) X, Q我的也是过孔连接的,紧挨着连接器隔断,没有问题,不会破坏过孔影响另一面的电路。

所属标签

相似技术帖

官网相关资源

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