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

建立嵌入式STM32工程模板

[复制链接]
STMCU小助手 发布时间:2022-11-28 14:19
建立一个STM32工程
8 h) P# }0 H3 e6 L前期准备:版本说明:MDK5.15,如果有更高的版本可使用高版本。. V& F% R. n2 [# E) W- A, M. G  ?+ `( c, F
版本号可从 MDK软件的“Help–>About uVision”选项中查询到。
3 z2 Q. P8 V# A/ r/ Z! y0 A# [
1.  本地工程文件夹
为了工程目录更加清晰,我们在本地电脑上新建 1 个文件夹用于存放整个工程,如命名为“工程模板”,然后在该目录下需要包含 六个文件夹。
为了让大家更直观,下面给出工程文件夹的详解图。
* I$ n" {( ^9 U7 c0 W6 x) \% H7 B% l
! g+ Y$ i6 L8 x! t( ^- J8 L
640 (12).png
以下是每个文件夹的作用:
0 {' k3 ^) \8 V
640 (11).png

# R; L( G* I) X  L  J3 G
2.  在KEIL5里建工程6 |/ x7 E. R( U, a  J& ~: s  g
打开 KEIL5,新建一个工程,工程名根据喜好命名,保存在 Project\文件夹下。

$ `3 }9 O9 {9 \; E' g) P
640 (10).png

8 g$ S& l; t" ~$ n7 l% n
3.  选择 CPU型号8 L* ]" f+ M: A4 j0 P. \0 m, d
这个根据你开发板使用的CPU具体的型号来选择,如果这里没有出现你想要的 CPU型号,或者一个型号都没有,那么肯定是你的KEIL5没有添加 device 库,KEIL5 不像 KEIL4 那样自带了很多 MCU 的型号,KEIL5 需要自己添加。
640 (9).png
: c/ T* T# P+ l  \+ R. i
4.  在线添加库文件
" G! p* A4 J* O9 v( E4 ]等下我们手动添加库文件,这里我们点击关掉。

& p1 o& h# P1 i( g9 G+ I
640 (8).png

" o' [2 u0 R! \3 H5 S

5.  添加组文件夹
3 C8 k: a2 W$ {: P6 k4 J5 ?) N在新建的工程中添加 5 个组文件夹,用来存放各种不同的文件,文件从本地建好的工程文件夹下获取,双击组文件夹就会出现添加文件的路径,然后选择文件即可。

4 x& ~% O8 h3 p

        工程组文件夹详解" e4 v, W1 _4 @7 ?* T/ K5 T
) N7 h# s0 A# L( o  V; \
640 (7).png

  n6 j2 }# E5 j
5 X& o0 ?2 a# U
640 (6).png
+ K) B# }$ w8 l9 B3 S0 u
- z6 @/ \* W0 Z7 F- M" O
6.  配置魔术棒选项卡
这一步的配置工作很重要,很多人串口用不了printf函数,编译有问题,下载有问题,都是这个步骤的配置出了错。
" F; I2 l) I6 E; L7 s

(1) Target 中选中微库“ Use MicroLib”,为的是在日后编写串口驱动的时候可以使用printf 函数。

" D* ]0 _0 }) P! g6 i4 n

640 (5).png
( d) a: O9 `6 Y$ m9 `; L

(2) 在 Output 选项卡中把输出文件夹定位到我们工程目录下的“output”文件夹,如果想在编译的过程中生成 hex文件,那么那 Create HEX File 选项勾上。$ u$ o( I( b& W! d
(3) 在 Listing 选项卡中把输出文件夹定位到我们工程目录下的“Listing”文件夹。# P- C: ]- H& O* e% B/ w3 k' |/ ~
(4) 在 C/C++选项卡中添加处理宏及编译器编译的时候查找的头文件路径。如果头文件路径添加有误,则编译的时候会报错找不到头文件。

640 (4).png

8 k- _7 f4 J7 x1 U+ @. n
在这个选项中添加宏,就相当于我们在文件中使用“#define”语句定义宏一样。在编译器中添加宏的好处就是,只要用了这个模版,就不用源文件中修改代码。9 Z. p* o* D( O
STM32F10X_HD宏:为了告诉 STM32标准库,我们使用的芯片类型是 STM32型号是大容量的,使 STM32标准库根据我们选定的芯片型号来配置。  k( W% r; O2 F( i# J- H
USE_STDPERIPH_DRIVER宏:为了让 stm32f10x.h 包含 stm32f10x_conf.h 这个头文件.
3 G! b( S' k1 E- t5 g1 Z“Include Paths ”这里添加的是头文件的路径,如果编译的时候提示说找不到头文件,一般就是这里配置出了问题。你把头文件放到了哪个文件夹,就把该文件夹添加到这里即可。

# }5 Y* Y" N: `* n+ ~+ G' n( X" a
7.  仿真器配置
1 o" c4 k9 r) z! U5 F* ]- w! g
640 (3).png
* s1 J! Q+ m6 g: F; o* S) v$ ^
640 (2).png
$ i- u' f, k8 K
640 (1).png
8. 选择 CPU型号( R7 p, D' |5 Q* N3 V
这一步的配置也不是配置一次之后完事,常常会因为各种原因需要重新选择,当你下载的时候,提示说找不到 Device 的时候,请确保该配置是否正确。有时候下载程序之后,不会自动运行,要手动复位的时候,也回来看看这里的“Reset and Run”配置是否失效。这里用的 STM32 的 FLASH 大小是 1M,所以这里选择 1M 的容量,如果使用的是其
$ o/ ^0 R6 _$ k$ D& C他型号的,要根据实际情况选择。
640.png
9 z  ?( R3 D* M4 X. @7 w
转载自: 跋扈洋
1 I% K* _+ t& D
2 P( y# O! ^* t; L: F" x. o
赞 收藏 评论0 发布时间:2022-11-28 14:19

举报

0个回答

所属标签

相似技术帖

官网相关资源

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