建立嵌入式STM32工程

建立一个STM32工程

前期准备: 版本说明:MDK5.15,如果有更高的版本可使用高版本。
版本号可从 MDK软件的“Help–>About uVision”选项中查询到。

  1. 新建本地工程文件夹

为了工程目录更加清晰,我们在本地电脑上新建 1 个文件夹用于存放整个工程,如命名为“工程模板”,然后在该目录下需要包含 六个文件夹。

    为了让大家更直观,下面给出工程文件夹的详解图
工程模板
Doc
Libraries
Listing
Output
Project
User

以下是每个文件夹的作用

名称 作用
Doc 用来存放程序说明的文件,由写程序的人添加
Libraries 存放的是库文件
Listing 存放编译器编译时候产生的 C/汇编/链接的列表清单
Output 存放编译产生的调试信息、hex 文件、预览信息、封装库等
Project 用来存放工程
User 用户编写的驱动文件
  1. 在KEIL5里建工程
    打开 KEIL5,新建一个工程,工程名根据喜好命名,保存在 Project\文件夹下。
    新建工程1
  2. 选择 CPU型号
    这个根据你开发板使用的CPU具体的型号来选择,如果这里没有出现你想要的 CPU型号,或者一个型号都没有,那么肯定是你的KEIL5没有添加 device 库,KEIL5 不像 KEIL4 那样自带了很多 MCU 的型号,KEIL5 需要自己添加。

选择CPU

  1. 在线添加库文件
    等下我们手动添加库文件,这里我们点击关掉.
    选择库为文件

  2. 添加组文件夹
    在新建的工程中添加 5 个组文件夹,用来存放各种不同的文件,文件从本地建好的工程文件夹下获取,双击组文件夹就会出现添加文件的路径,然后选择文件即可。

    	工程组文件夹详解
    
名称 存放的文件
STARTUP startup_stm32f10x_ld.s(此处存放的是启动文件,根据不同的STM32板子选择不同的启动文件)
CMSIS core_cm3.c、system_stm32f10x.c
FWLB 用户编写的文件如:main.c
DOC 工程说明.txt:程序说明文件,用于说明程序的功能和注意事项等

添加文件

  1. 配置魔术棒选项卡

这一步的配置工作很重要,很多人串口用不了printf函数,编译有问题,下载有问题,都是这个步骤的配置出了错。
(1) Target 中选中微库“ Use MicroLib”,为的是在日后编写串口驱动的时候可以使用printf 函数。

在这里插入图片描述
(2) 在 Output 选项卡中把输出文件夹定位到我们工程目录下的“output”文件夹,如果想在编译的过程中生成 hex文件,那么那 Create HEX File 选项勾上。
(3) 在 Listing 选项卡中把输出文件夹定位到我们工程目录下的“Listing”文件夹。
(4) 在 C/C++选项卡中添加处理宏及编译器编译的时候查找的头文件路径。如果头文件路径添加有误,则编译的时候会报错找不到头文件。
在这里插入图片描述
在这个选项中添加宏,就相当于我们在文件中使用“#define”语句定义宏一样。在编译器中添加宏的好处就是,只要用了这个模版,就不用源文件中修改代码。
 STM32F10X_HD宏:为了告诉 STM32标准库,我们使用的芯片类型是 STM32型号是大容量的,使 STM32标准库根据我们选定的芯片型号来配置。
 USE_STDPERIPH_DRIVER 宏:为了让 stm32f10x.h 包含 stm32f10x_conf.h 这个头文件.
“Include Paths ”这里添加的是头文件的路径,如果编译的时候提示说找不到头文件,一般就是这里配置出了问题。你把头文件放到了哪个文件夹,就把该文件夹添加到这里即可。(请使用图中的方法用文件浏览器去添加路径,不要直接手打路径,容易出错)

  1. 仿真器配置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
8. 选择 CPU型号

这一步的配置也不是配置一次之后完事,常常会因为各种原因需要重新选择,当你下载的时候,提示说找不到 Device 的时候,请确保该配置是否正确。有时候下载程序之后,不会自动运行,要手动复位的时候,也回来看看这里的“Reset and Run”配置是否失效。这里用的 STM32 的 FLASH 大小是 1M,所以这里选择 1M 的容量,如果使用的是其
他型号的,要根据实际情况选择。
在这里插入图片描述工程已经成功的建立,后面会陆续更新STM32工程。欢迎关注。

发布了30 篇原创文章 · 获赞 29 · 访问量 9299

猜你喜欢

转载自blog.csdn.net/qq_44629109/article/details/105184605