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

【经验分享】一步步告诉你stm32开发环境搭建流程

[复制链接]
STMCU小助手 发布时间:2021-12-13 22:13
一、搭建开发环境需要的文件
3 U8 g1 q! G, A% x' Z* s: s. N; ?
20151228160733749.jpg

! N; z: ?7 ?% m" k
, Y% p5 R, H9 n- l' Y) E% h/ i[蓝色框是解压后的文件夹]

; [& ~) _* O  s3 ]1 O4 c% o6 ^
8 G2 c4 s- e* B; g1、首先我们需要一个ST库
: E8 {* F8 s& b" x4 @. R ST的官网经常改变,就不放置路径了,毕竟过一段时间也会出错,大家除了在官网找也可以在网上找人家分享的资源,网上也有很多人分享。如果你是用库函数开发的话,则必须要有一个ST库,在找的时候要注意找对应的MCU系列ST库
* D4 B; C" W4 V2、安装MDK软件
/ s) U/ S$ R; S" [( wMDK的安装很简单,直接下一步最后完成再破解就可以了,大家安装MDK软件时需要注意的是安装的
7 A2 w9 g0 Z2 V版本最好包括直接开发的MCU的型号的,而且使用版本稳定的,因为MDK是我们的开发编写程序的软
* G. d: s( E4 |$ v件,想必你也不想日后麻烦。/ x( x8 J) L6 v6 x3 Q/ r
3、安装Jlink8 q1 c; {2 ~' w* E  f; F5 }: ?& Z. ]
这个驱动是下载调试需要的驱动软件,安装完成后插进Jlink下载器就会自动安装了2 O6 G4 Y8 b+ w) ]
6 y& M; [, B+ Z. W$ n" B0 R; v& m

! b4 Z3 i% r& }5 t, s$ ^我选用的ST库时3.50的[MCU STM32F103RCT6],MDK是4.54,JLINK是4.80,大家可以根据实际需要找自己
% M& q1 c9 Z; N; w# c4 |* V合适的
  m. X# R0 i7 m, z9 s
$ i( t' X) a  F/ h3 s) C* J# t2 {0 R  {" p1 n8 V! }
二、文件说明
+ p* Q1 r9 q0 F( c) FST库压缩包解压后,会出现如下文件,但是这些文件并不是所有的都是我们需要的。8 j) e7 A9 B0 o$ r

* I( D! N8 o) `
20151228161036308.jpg
+ y: {; {: v, P: J

, `' A6 H% ]# B首先在STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\STM32F10x_StdPeriph_Driver下的inc和src是我们需要的库文件函数库。: J* k/ b  k0 W( H  p4 _$ ~3 a- D

( ~1 C. a' Q9 A5 _6 g3 Y1 m7 S
20151228161117702.jpg
; K$ ~0 T3 E& h; c- @/ V" \

1 v9 |9 ~: a5 Z( A) Y2 k1 q在STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport下的是M3内核MCU编译需要的文件. E5 l$ |  {3 N- j. o0 S0 ^: f
  A* s! d- B4 ^, P0 {7 X
20151228161304059.jpg
" |2 U# x/ J5 z- b4 x+ ]) O
8 g: J( Q& a. `. D7 J5 `6 z
在STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Examples里面是ST的官方例程,大家可以用来参考4 C% u$ K* [  Y1 }4 U3 ]/ w
. m0 ?( w' E* J" c  _
20151228161426526.jpg
: A( Y5 L2 [7 `. G( Z6 g

' t, Y0 b( Z$ X. V! O在STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template下还有几个文件也是开发需要的。0 K. |2 s3 n0 d6 D3 f. C: Q& f
) V- D& U( L* L9 S% u4 X2 G( r# F
20151228161519510.jpg
* k( |. U" E* K4 \' O

7 @0 g& O6 y1 b, {# b. V三、环境搭建
( l3 r6 |* e) N$ n4 ^9 Q( t在电脑上新建一个文件夹,最好在路径中不要带中文,有时会出错。
9 @8 {1 R- ~7 T' ^0 W! A8 C在文件夹中再新建这些文件夹用来区分文件[当然你也可以不建立,只是这样文件就麻烦很多]
3 D3 |: {+ t+ h6 V6 r: m3 P+ S8 i8 X2 ?4 c9 _0 ^# ]6 {
20151228161608682.jpg
8 u6 h. B2 s7 F; H7 H0 n! W

. t3 a  H- U" Z4 p把ST库中的这些文件拷贝到CMSIS文件夹[看上面的路径找]1 d7 Q3 w& G. k+ ]3 v
. @  ^$ M; }4 ]6 p
20151228161637300.jpg
, I# h: g" _) D1 P# u
. t) p8 F7 a. y' v7 b
把之前的函数封装库拷贝到Lib文件夹
# ?) f+ b  U% y3 z; t8 @, t, j- X% ]. h2 `
20151228161825271.jpg
* ~  ^$ Y+ K* g
2 x9 Q* j9 ?( q' l7 ?$ O1 }
把ST库project里面的这三个文件拷贝到project文件夹下。# n1 F( W# P( z2 \, i) {' w
' Q" r. d7 o7 {9 p$ s; w  Q
20151228161849317.jpg
8 g" u6 C: p  v
! H) s1 L' L  R3 w! X% b
另外,在User文件夹下新建个main.c文件,在Readme文件夹下新建一个Readme.txt文件,
+ F8 l8 Q; U" S2 z+ c: j: g
+ A/ G  ]' z: ]" a' O[当然以上这是我的习惯,你也可以按照你的习惯做] 把这个文件夹当做模板这样就不用每次都这么麻烦了。
& _3 _; U1 _5 @1 g4 p0 D2 h4 i- }, d4 j6 U# D+ K9 k& ^1 k
) |2 i/ e: Z' q# |5 a
下面开始正式搭建[我尽量用图说画]
  e  |; J& o& b5 G+ _  o3 p+ V7 O, l- {
打开keil 4出现如下界面
( F. B) u% P0 ?( ]
3 w$ c; a% V& N
20151228162039939.jpg

2 k& A- ]) v0 ^- U9 Y2 Y$ M7 g: w3 ]* s9 A4 ?
20151228162117150.jpg

8 t4 q) S& m* c' R/ C
6 g7 ^5 r! s; E/ m7 [6 x  b& x选择之前建好的模板文件夹的project文件夹保存,然后在弹出的MCU型号选择中选择对应的单片机型号
: u/ X0 H9 u5 z  j5 J/ K: u' U
1 N$ ~' p3 d' C/ J6 M
20151228162201283.jpg
+ A  k+ Z0 o. v! k
* Y. }7 f! W4 B# Z2 h9 `
这一项,选择你自己的单片机型号
+ w6 Y$ Q9 g+ p1 i. t) X( d7 j. y
20151228162222319.jpg
3 z) K+ t: e/ Y: S
6 w! j" X9 z9 k
20151228162317942.jpg

1 U; y, f2 Q  b0 m/ Z- x* V1 \# G# ~/ q' {+ ?% L. B5 c
20151228162331300.jpg
* I% j: S) r, M7 }5 K; B7 }- F, c/ A9 o3 @

; z$ o( e+ ~* Q) }
20151228162347536.jpg
0 ~9 J* W+ R- N! [/ n3 y& U
9 L3 l' S# X  h% e! h- U* g8 i
20151228162432310.jpg
1 N& w: [; d( c' M

. A- O4 ?! y* E9 }$ T假设我要建立一个LED的工程则添加以下文件8 r" J4 N0 I& V# K7 b& U3 g
8 K! l5 G8 x/ }8 J  g0 \* D: n6 C
20151228162445897.jpg

' V; r- F6 w5 [: A' u
, T* g: ], z- R' I4 N当然,以下文件你也可以像51单片机以前的keil 3时直接在project窗口右击添加
0 A5 @) l2 `6 M( |0 S9 Y: [9 k# Z9 a3 C6 r6 t2 @% J5 H
下面继续说调试下载的工具,
1 ]) ^+ b# S" v/ v1 a5 P
( P! D( A, R2 A3 r7 {
20151228163131145.jpg

& q" l# E) @' R& m- g8 m4 v
9 T0 c/ N: Z9 H" t
20151228163158731.jpg
9 p( z( h' D+ W* u# J) C
4 I- c9 m1 V0 p% c1 D2 D
下面这一步要添加USE_STDPERIPH_DRIVER, STM32F10X_HD告诉编译器相关参数配置
; U/ h" ~9 g) O( o- |. k
; `1 l2 C3 O  r2 \7 L/ m' H
20151228163332421.jpg
/ U* J8 a0 ~" P$ j. e6 |
+ j8 [/ O# Q$ I3 n% _' f" X
20151228163407058.jpg
1 }$ U3 N* k' P; @" u) e

9 F5 k7 e3 i" i
20151228163419856.jpg
7 F; Y6 [0 |$ c# @" p

, h; K5 r2 H9 z
20151228163433566.jpg

: E& m- m2 Y$ v" \
6 n3 m% a3 C5 a0 f8 X最后按OK,确认退出,到此搭建完毕,可以开始编程开发了0 h- b1 \; r) Q$ h5 Z+ M- f0 c$ a

' \, A4 A) ]. I
* W, y/ X0 f+ N! a7 a' _" @
赞 收藏 评论0 发布时间:2021-12-13 22:13

举报

0个回答

所属标签

相似技术帖

官网相关资源

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