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

STM32F3学习,建立 工程模板

[复制链接]
dlyt03 发布时间:2013-2-28 13:27
 8 F6 K9 o. Y! B; O/ O5 o1 v
作为一个初学者,虽然先前看了一些资料,感觉自信满满,但是收到板卡后发现,一切都是过眼烟云,还是实践出真知!!& R6 J% u# V- X4 t" G. }  c
踏踏实实的从建立模板开始学习!!- T) n( Y5 O* I8 }/ X" J1 P
大家在官网可以下载到STM32F3的固件库,也可以看到工程模板,可以拿来用,但我想建立自己的模板,借此熟悉软件、熟悉工程库!
: g4 O7 ~. M* p! L( }5 S# z4 z: p我是新手,肯定又许多不足或不对的地方,贴出来和大家交流一下,请大家多多指教!!+ I+ L1 B9 C& ]% O
下面就我建立模板的过程:
9 S* S% A% S2 q# w& I1、新建一个文件夹,取名:Demo/ X3 o6 d, O# V, l, z2 c, ~1 E
2、在文件夹Demo中新建:User、Core、Output、STM32F3_Discovery、STM32F30x_StdPeriph_Driver五个文件夹
4 J: R% z  g9 \# u' d3、在Core 文件夹中拷入:Libraries\CMSIS\Device\ST\STM32F30x中的Include文件夹,新建一个名为Source的文件价,并把上述路径中Source文件夹下的arm文件夹中的startup_stm32f30x.s文件拷入5 m' B6 r6 E9 D
4、STM32F3_Discovery文件夹中拷入:STM32F3-Discovery_FW_V1.1.0\Utilities路径下文件夹STM32F3_Discovery中的全部文件
/ W- }, J: ~  _: ~. C5、在文件夹STM32F30x_StdPeriph_Driver中拷入:STM32F3-Discovery_FW_V1.1.0\Libraries\STM32F30x_StdPeriph_Driver文件夹中的inc和src两个文件夹
2 q$ ~3 h) ^6 |; ?! `' n6、打开任意一个工程文件,把stm32f30x_conf.h、stm32f30x_it.c、stm32f30x_it.h、system_stm32f30x.c四个文件拷贝到User文件夹中。
" f* J" R# r! k6 u$ Y  G接下来就是建立MDK工程了,启动MDK,建立一个新的工程文件,保存在User文件夹中。这个过程比较简单就不说了,但是有一点,在选择了单片机型号后,会出现一个对话框,, n9 C; v1 a! e5 p
1.jpg
( I! X% w3 U' t" ]3 V* _) M  V这里我们选择“否”。新的工程文件就建立了,新建一个main.c保存在User文件夹,接下来就是添加文件步骤了:' i4 j: F2 B# p
1、右健选择Add Group添加文件夹,文件夹名称与上述名称一致(别的也可以):User、Core、Output、STM32F3_Discovery、STM32F30x_StdPeriph_Driver,建好的工程如下图:  _9 ~; d: p- r5 r
 " }" V' N8 X0 j) U' H
2.jpg
8 n/ N7 S# s' T3 y, r! M 
& D( c1 b/ d  u) w2、此时工程文件是空的,接下来添加文件,点击下图“品”字形图标。3 e- O0 A5 ~: S9 r8 u! [
 2 N1 N6 q% |: Z9 A. Q( L2 g; u
3.jpg
$ O+ \' _( X  a' L: a7 {, h 
! q: l! @+ \6 r  U% x出现下图:( t! G; W7 X( J: _" n/ n
 
1 r: c! W" [2 D( K" U, r 4.jpg
) k: N: I9 a1 Z% q' q" |5 \6 h0 R ( p5 W- O6 X( K8 O" @
选中其中要添加文件的文件夹,点击“Add file”,选择对应文件夹中的C文件,添加。以库文件中的ADC例程为例:( K' X, @# m0 E) y, x2 K& [$ d
User 文件夹中添加三个文件,下图:" f# t6 {3 H/ Z$ Z2 i8 ~
 $ Q- R* B: \! u7 H& A2 B& [+ a- A5 b
5.jpg
- j; L+ z2 {+ ]. |! ^ 0 _3 Y3 y! Z5 e4 g
添加后的效果:
4 r  U3 Z4 O6 e5 a+ W5 P6 j 6.jpg 3 f( l4 @  G$ Y

" u! L( H! u% d& m 
' \9 O1 ^! N6 A# D- x1 q同样的操作,在Core文件夹中添加:Core文件夹中Source下的:startup_stm32f30x.s* ~+ j5 E% ~- E7 @5 Q% m- R
在STM32F3_Discovery 中添加:stm32f3_discovery.c
赞 收藏 4 评论15 发布时间:2013-2-28 13:27

举报

15个回答
dlyt03 回答时间:2013-2-28 13:27:57

回复:STM32F3学习,建立 工程模板

 
% G& m/ u5 }  x1 W在STM32F30x_StdPeriph_Driver中需要添加六个文件:+ E$ W2 t, H( V" A
7.jpg
5 T1 Y: S, A. T% M( u# A ; \) G' Q- H# [3 F( Z
点击OK,添加全部文件后,工程文件如下图:' }; k6 e3 O. w4 p3 e1 ]
8.jpg # c. R8 t$ c4 }
按以上的添加步骤,在编程时,把所需要的c文件都添加进去。
2 t7 y0 m$ M. Z我们再点击下图中的图标,
1 u- c, U* u8 n' F0 L1 }. i 8-1.JPG 8 D7 F4 B; q" T
弹出对话框:
3 c: K( P& ]# `% d在Target选项卡中,把0xA000改为0x8000,选中 Use MicroLIB
. C2 t% o/ ]! i4 M# O 
; V+ ]' a$ S$ S- F7 p 9.jpg * R9 K1 b9 u+ \* e* ?; J
 
% d/ T* ^5 L9 Z( j/ t' I; M- \选中Output,把 Create HEX File这个选项框也选上。点击Select Folder for Objects... 设置编译后输出文件保存的位置,我们选择我们创建的Output文件夹。) H* n, v/ [9 J6 S7 F' U6 a
 
" w/ }4 ]+ i& E$ r( ] 12.jpg
2 w: A7 S) x* D4 o: q5 [. c # c$ E: r( N. v7 X
点击C/C++ ,再下图位置,填入“USE_STDPERIPH_DRIVER,STM32F30X,” 再点击图中位置:; C8 O" A2 A+ K0 h, j' ^7 t
13.jpg 3 S7 g2 D+ L. N9 J2 L- g3 c
, C" \" G7 H( K1 E8 g8 b  M9 h" s

' j# }: }2 V% R, o' o8 J. W) G8 q. ~# L
 4 l! o. K( f# T- P
弹出对话框,依次点击图标:
dlyt03 回答时间:2013-2-28 13:41:33

回复:STM32F3学习,建立 工程模板

 
9 H  k# l) N7 a5 _' w+ i弹出对话框,依次点击图标:7 c3 g7 V% \: b/ I( h* [2 l
14.jpg
( E9 w# O1 K' O 
: f+ y0 @9 v; ~+ t: m$ _在Core文件夹选择Include文件夹;0 G- N  {2 F  B
添加STM32F3_Discovery文件夹;& q' ~2 @/ d) `3 ^; h" y
添加STM32F30x_StdPeriph_Driver文件夹下的inc文件夹8 W( ]$ @! u' D& [
添加User文件夹4 C$ v$ y' i- i2 E7 H
添加后效果如图:% A* _; R5 V6 D1 O- g( \
15.jpg : R0 G% A) X( }6 r0 M& U9 _
 , R/ t0 _; _& ?& I0 [2 o
点击Ok保存,这步添加的是所有用到的h文件。
- G' h( V: V; f/ g2 ]     此时main.c还是空文件,我们把ADC中main文件中内容拷贝过来,编译一下,编译通过!!  @, o& |" p: n) B* `4 \# z+ g3 b
16.JPG
( k0 c, Y: _* |  P. {1 l' T: g / I2 b0 V' A# N/ R# M! k( w
 * h% M1 ]& c! c" b2 z4 z
自此,模板完成!!4 {5 F9 V. I9 W; t+ _! `* U
在以后使用过程中,只要按需选择头文件即可!!
) E- p) p' B; Z, {% A附件中是本次建立的工程模板,菜鸟,第一次建工程,请斧正!!5 Z* y6 }( g8 N
Damo.rar (338.73 KB, 下载次数: 383)
IC爬虫 回答时间:2013-3-1 10:05:33

RE:STM32F3学习,建立 工程模板

非常好的资料,谢谢楼主的辛苦整理!
wenze1367 回答时间:2013-5-16 23:33:01

回复:STM32F3学习,建立 工程模板

好东西,学习下
shuai37zhang 回答时间:2013-6-4 17:12:57

RE:STM32F3学习,建立 工程模板

谢谢
tiantian-201801 回答时间:2013-6-9 16:26:35

RE:STM32F3学习,建立 工程模板

谢谢
白小白 回答时间:2013-8-27 16:38:45

回复:STM32F3学习,建立 工程模板

看看
guyanbo313 回答时间:2014-3-18 15:42:56

回复:STM32F3学习,建立 工程模板

Rebuild target 'Demo'
( A  f1 w+ i# t0 A) {7 Z. ecompiling stm32f30x_it.c...1 o5 Y8 ~( q$ v9 |7 ?( F3 A
main.h(38): error:  #5: cannot open source input file "usb_lib.h": No such file or directory
1 H& m3 g. Q" a. Z/ Z" j( F2 k; |compiling system_stm32f30x.c...% L2 t1 o1 e# V7 b' I; ?
compiling stm32f3_discovery.c...
+ U. V, z, _! K: Mcompiling stm32f30x_adc.c...
2 V, Z! X# g/ Qcompiling stm32f30x_gpio.c...
, f9 p7 ^6 Z) G7 ^" Acompiling stm32f30x_misc.c...$ I5 x5 ^6 g) Y7 F: k4 b3 _' y+ T, R" I
compiling stm32f30x_rcc.c...
/ Y. w4 X/ S! t/ K# I% T* F  }5 ycompiling stm32f30x_exti.c.../ o5 q4 t3 @& {$ }, X
compiling stm32f30x_syscfg.c...
8 l- M3 ~( i2 A! ^# ]$ bassembling startup_stm32f30x.s...
  G; b# B; ?; r, w8 sTarget not created
guyanbo313 回答时间:2014-3-18 15:44:50

回复:STM32F3学习,建立 工程模板

求教,为什么会出来没有添加 usb_lib.h ? 楼主也没有添加呀
niumiker 回答时间:2016-7-31 16:58:29
dlyt03 发表于 2013-2-28 13:419 Y6 v( d& k% u) _. B; V
 # y. B5 n8 \9 K
弹出对话框,依次点击图标:
7 k8 p3 u# G. d5 i% F# ?
学习学习
maomoa 回答时间:2017-2-16 23:11:57
好的资料,谢谢楼主的辛苦整理
czhuanqilai 回答时间:2017-11-23 20:43:18
dlyt03 发表于 2013-2-28 13:41: E0 v3 o7 X. [
 6 _0 R- J; A: Z; y" Q
弹出对话框,依次点击图标:
7 ]9 F  y' [3 ]$ d
你好,问一下,有没有STM32F302R8的模板了,我建的工程老是不对,快崩溃了
电子学员 回答时间:2018-11-9 23:09:12
非常好的资料,谢谢楼主的辛苦整理!
djf3901 回答时间:2019-1-8 11:51:42
编译失败
12下一页

所属标签

相似技术帖

官网相关资源

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