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

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

[复制链接]
radio2radio 发布时间:2018-5-31 15:47
阅读主题, 点击返回1楼
1 收藏 45 评论418 发布时间:2018-5-31 15:47
418个回答
radio2radio 回答时间:2019-12-25 10:20:44
caihaiyun 发表于 2019-12-24 16:50
( Y- x+ l; _( W+ x; ]8 q, o楼主,你好:/ E/ G2 K1 ^3 P: @
刚刚使用你的源代码,但是编译出现很多错误。. U% t8 p( {* @5 k! L) q- L' a# G
出现:找不到RTL.h和core_cm3.h两个文件

+ a9 R5 g% b0 ~8 [2 b看Doc文件夹,按要求安装兼容包。
caihaiyun 回答时间:2019-12-25 10:24:13
已经OK了。下载程序度已经OK了。感谢楼主。
; g; ~9 |! y' f* |5 N但是楼主,这个SWO(PB7)引脚一定要接出来的??
1 y' a$ a" T; j( A1 a" X两个SWD(PB8、PB9)引脚我能不能更改为其他引脚?
radio2radio 回答时间:2019-12-25 11:24:01
caihaiyun 发表于 2019-12-25 10:24+ w+ a& v' ?2 g2 K
已经OK了。下载程序度已经OK了。感谢楼主。
# n0 g: m# j# l5 G( a, [, [: ~- w( S( c但是楼主,这个SWO(PB7)引脚一定要接出来的??
( ^& Y& n8 V  k8 d3 y两个SWD(PB8、 ...

5 c0 q6 z1 K' a6 l不使用SWO功能就不需要接PB7。 SWD的引脚当然可以换做其他的,特别是软件中设置SWD_REMAP就换成了PA13/PA14,方便Bluepill板子使用。
caihaiyun 回答时间:2019-12-25 13:56:29
楼主。我之前焊接了一块按照st_link的板子。然后我更改你的SWD引脚为PB13、PB14。但是发现如果不接出PB7时,会识别失败(SWD/JTAG Communication Failure)
John-2049691 回答时间:2019-12-25 17:16:34
hi201803 发表于 2018-7-22 19:23
$ Z" C* Y( ?9 E- U2 \. O7 R在  MDK 4.xx  里面编译通过了。 7 f6 [  t& K  E& w- H7 Q" w! r
只需要把 缺少的头文件复制过去就可以,大约3个,再改一下include 设置 ...

" o5 V2 l- B/ }8 a3 f& B1 ]按照你的方法不行啊,具体需要多少版本的MDK啊。
. c3 E0 |/ b& _; N* w5 G+ E1 W* h2 E' ?9 T3 o& u$ l( _$ K
我下载了5.2.9的MDK,下载了F1的pack,同时在MDK里升级了5.3.0的CMSIS,仍然报很多错,楼主也帮忙回复下,谢谢
2 O6 e8 @& `) ?$ S7 a8 p  J5 f4 B+ [
radio2radio 回答时间:2019-12-26 10:39:24
caihaiyun 发表于 2019-12-25 13:56
  z0 d$ j! A* M- I楼主。我之前焊接了一块按照st_link的板子。然后我更改你的SWD引脚为PB13、PB14。但是发现如果不接出PB7时 ...

7 ^( ^/ u" B4 F" t" a没有遇到过,估计你的板子干扰太大,接了PB7干扰变小。
radio2radio 回答时间:2019-12-26 10:40:25
John-2049691 发表于 2019-12-25 17:16* h! d! ]9 m, k5 @4 b
按照你的方法不行啊,具体需要多少版本的MDK啊。; P' @- c  u# N' E

0 g" k: p4 ]$ |% ], F7 ?: n我下载了5.2.9的MDK,下载了F1的pack,同时在MDK里升级 ...
8 b5 a! ^! D/ w* w6 Z, G4 ?. l
还要安装Keil4的兼容包,使用AC5. 1 O$ v- a2 E! P! Y% d9 h! I( ~' }
MDK5.29应该ok,我现在已经升级到5.28了。2 |' Y* u! j9 v5 N
John-2049691 回答时间:2019-12-26 22:59:12
radio2radio 发表于 2019-12-26 10:40! `, s/ t/ e5 G: \* D* g
还要安装Keil4的兼容包,使用AC5.
  L8 D4 B* C( b1 n/ eMDK5.29应该ok,我现在已经升级到5.28了。
/ M) d; `# m9 G+ a2 l ...

3 U4 X7 H7 k3 h3 ?- o5 W( i下载了Keil 5.2.9
; A8 o' w$ T. f# b/ R更新了CMSIS到5.6.0
; C2 E6 D; s2 }4 Q更改了C/C++的包含路径指向5.6.0后$ F" F. z8 d2 }
编译是成功了,也成功点亮了指示灯。* i# \& f: ?' S( }
但是又出现了另外一个问题,现象如下:6 s+ e0 w. A" Q- v
1.工程里宏定义设置为- N& g. s& ~& D; c  s& J
USE_STDPERIPH_DRIVER STM32F10X_MD BLUEPILL SWO_PB7 STLINK_V2A
: U/ O2 q- W- Z. d2 O) H5 ~2.引脚没有改动,代码没有改动& f- g) j; k. F# J/ H7 t
3.安装了CDC的驱动了
9 X& Q1 I% Z" i% O/ {7 Z/ Q4.设备管理器里仍然显示“未知USB设备(设备描述符请求失败)”- g6 z+ d  W: C. c; W5 w! `* Y
5.经调试,指示灯可控,但是“usbd_configured()”这个while循环,一直跳不出来,是USB配置不成功吗?( P; f% _8 @' _! O5 E2 l' ^
, ?' `  ~* o5 \7 k/ ?2 i% O
应该怎么设置,才可以啊?
radio2radio 回答时间:2019-12-27 10:50:48
John-2049691 发表于 2019-12-26 22:59
0 ^2 S& T$ |+ Q下载了Keil 5.2.9
6 p. V" U: i% ]$ f. b更新了CMSIS到5.6.0! ~) n, `. B! H* R# e5 J
更改了C/C++的包含路径指向5.6.0后
. q! H/ o0 |; ~& J. P' N* j1 k4 I
你这个宏定义不对呀:, _1 v) r+ z9 T# f# @* d7 C! S4 n
USE_STDPERIPH_DRIVER STM32F10X_MD BLUEPILL SWO_PB7 STLINK_V2A
5 z! ?5 F  i; Q( HBLUEPILL是一种板子,STLINK_V2A是另外一种,只能取其一。9 `! g" O1 h- d& l" F) A  Q: w) j4 F

1 q. \2 f/ A8 p$ t& A! X1 r) M+ |为了方便选择不同的板子,软件包已经开好了一些分支:
4 l8 y1 v5 z, ~ Capture.JPG $ b7 ]1 _- u! W% o- ]
John-2049691 回答时间:2019-12-27 11:27:24
radio2radio 发表于 2019-12-27 10:50
0 L& W8 @' e3 o2 l) M# W& v5 U你这个宏定义不对呀:
9 @  E7 L7 t; C9 v5 y5 EUSE_STDPERIPH_DRIVER STM32F10X_MD BLUEPILL SWO_PB7 STLINK_V2A& t2 f, a! E7 i
BLUEPILL是一种 ...

0 R: {3 \7 k4 C8 u; @去掉了BLUEPILL,现在是USE_STDPERIPH_DRIVER STM32F10X_MD SWO_PB7 STLINK_V2A
; V$ V( U. g% s7 ?1 |; ]0 J& O$ ]还是不识别USB啊,有其他地方的问题吗?
John-2049691 回答时间:2019-12-27 11:56:04
radio2radio 发表于 2019-12-27 10:50- L' o, Q& H1 b( t; G; o% @7 T
你这个宏定义不对呀:1 h8 E% o5 P( Z$ z' c( E
USE_STDPERIPH_DRIVER STM32F10X_MD BLUEPILL SWO_PB7 STLINK_V2A
8 W- {/ I2 _' r" A$ t$ KBLUEPILL是一种 ...

  t- X- Y2 {9 {- z' A1 F  a9 y8 G我的板子比较特殊,是105VC的
$ z# D2 ]! g: V! H8 I引脚定义如下:7 j2 v% L# [) t4 x, |  X& W6 n
5 y" q+ {& \1 J; c# ^1 N
JTMS PB82 ?& }& q+ b' m1 L6 i! c* \
JTCK PB9
* Y8 |6 y$ T: F. RRESET PE0! w5 |( @: b+ n5 j* J. P9 C& f
CDC TX PA22 k# }* l; k$ {  j6 c$ O7 j
CDC RX PA36 ~2 U6 F6 F% o& {# W
USB D+ PA12
0 h9 X/ j! M6 H: M. k% h9 fUSB D-  PA117 v3 f/ {& l, m7 f% G8 r
) c! P" p. Y, D- P$ c
请问这些引脚配置有问题吗?
2 y2 B; T; }; R3 h但是USB连接电脑无法识别的问题,应该与这些引脚配置关系不大吧
radio2radio 回答时间:2019-12-27 15:59:05
John-2049691 发表于 2019-12-27 11:562 M7 @% E% l+ M' {" t
我的板子比较特殊,是105VC的
0 j. a5 h! T1 |) E( {1 h引脚定义如下:
3 ^# `" s/ z6 t& j- d) n/ U
这么大的事情你放到现在才说,105VC我完全不了解。
/ \0 o2 u6 s) m  J" E
0 f$ M: ^+ ~0 l$ f* O5 X# T4 B要验证你的编译系统是否正常,建议你找一块Bluepill/STLINKv2板,然后下载你自己编译的固件,不行再试一试我编译固件,我相信不难吧。; j; h( V0 g' }; |- z

- V4 D! A+ l+ d5 a- m接下来的问题是我的F103的USB库,能不能用于105VC? 直接用还是要做修改,这些都要搞清楚。/ S. O) S4 _+ q. T8 P- ]" T! G
(不知道你为什么使用105VC,速度快?价格低?)
8 ~1 Z- N" [5 h! \1 Z+ y- f
John-2049691 回答时间:2019-12-27 17:31:01
radio2radio 发表于 2019-12-27 15:594 _% A0 y: C9 \+ B# b' ^+ G1 M) I
这么大的事情你放到现在才说,105VC我完全不了解。* r2 a* L  ^; x( s* V1 T0 M6 @
! ]+ l8 M4 Z: y$ `4 _. K  D, O! H
要验证你的编译系统是否正常,建议你找一块Bluepill/ ...

4 I# T$ k# }7 ^用103的最小系统板试了可以识别了( k4 y3 P5 M- ~& T+ K- u& C1 r
但是我看了103和105的USB寄存器地址都一样,没发现哪里不一样引起的问题
radio2radio 回答时间:2019-12-28 15:07:51
John-2049691 发表于 2019-12-27 17:31
4 Y  C1 b+ x  k  K4 _' @: N0 d4 j用103的最小系统板试了可以识别了- z* Y7 r, i) ~
但是我看了103和105的USB寄存器地址都一样,没发现哪里不一样引起的问 ...

1 g* H5 ^! D" G! k3 k+ s- A  i我简单看了看规格书,105的是OTG的USB,那设置方面肯定与103的有不同,不能直接使用103的USB配置,你需要详细研究修改105的USB底层驱动,比如如何设置OTG为设备模式,如何做一个HID设备,等等。 如果您要套用我的源码,还不能更换到CubeMX的USB库,只能使用和现在103差不多的标准库。 工作量大。
4 m6 s9 W% @( n, D
John-2049691 回答时间:2019-12-28 15:31:39
radio2radio 发表于 2019-12-28 15:07
2 {3 L2 X! `5 g6 x' P- M我简单看了看规格书,105的是OTG的USB,那设置方面肯定与103的有不同,不能直接使用103的USB配置,你需要 ...

3 s% @" _  W- J* L6 \3 A& r好的,暂时决定先不用105来做了,换103
2 b" L2 k; U1 Z% ]我想问下,在你的源码里可以拓展CDC多串口吗?毕竟103也有3个串口可用

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版