STM32F10X建立工程
最近刚刚入手STM32F10X系列的单片机,下面总结一下基于keil5软件的工程建立(基于库函数的工程),下面分为两种方法介绍:
一般方式建立工程
1.先做好建立工程前的文件夹准备:随意选择磁盘建立名为Template的文件夹,以后的工程文件都可以放到Template文件夹下。(名字可以任意更改)
2.在Template的文件夹下再建立一个任意一个名字的文件夹(最好命名当前工程名)这里以Frame这个名字为例。
3.在Frame文件夹下建立Core,Library,OBJ,Start,U-library,User六个文件夹,如下图:
其中Core存放核心文件,Library用于存放固件包给出的.c和.h文件,OBJ用于存放编译过程中所产生的垃圾,Start用于存放单片机的启动文件,U-library用于存放自己以后所写的库函数,User用于存放主函数。
4.在第4步中我们将添加各个文件夹下面的内容
(1)将固件库中的stm32f10x_conf.h,stm32f10x_it.c,stm32f10x_it.h文件复制到Core文件夹下。
(2)将 src,inc 文件夹 中的文件复制到到我们刚才建立的Library文件夹下面。
(3)将文件core_cm3.c,文件core_cm3.h,和STM32F10x\startup\a
rm 下面的文件,以及stm32f10x_conf.h,stm32f10x_it.c,stm32f10x_it.h 复制到 USER 目录下面复制到Start文件夹下。
(4)将main.c复制到User下。
(5)U-library可以存放自己的的.c和.h文件,这里不用处理,OBJ存放编译垃圾文件这里也不用处理。
5.打开keil5软件选择Project>New uVision Project…,之后在目录中定位到刚刚所建立的User中,文件名命名为Project,之后保存。
6.在接下来的框子中选择自己的单片机类型这里以STM32F103C8T6为例,之后关闭接下来弹出的界面。
7.关闭之后弹出的界面,点击品字形(如下图)。
在Groups中添加User,U-library,Start,Core Library,在User下添加main.c文件;在Start中添加system_stm32f10x.c,system_stm32f10x.h,stm32f10x.h,core_cm3.hcore_cm3.c,startup_sm32f10x_md.s(这个文件需根据自身单片的配置选择这里以stm32c8t6为例);在Library中添加下一步中Library中的全部文件,(在文件类型中需要选择All files);在Core中添加stm32f10x_conf.h,stm32x_it.c,stm32_it.h;在U-library中添加自己日后所写的库文件。
8.点击魔术棒图标(如下图)
在Output中点击Select Folder for Objects…定位至OBJ文件下,并在Create HEX_File前打对勾。之后选择C/C++在Define中输入USE_STDPERIPH_DRIVER字符串,点击lnclude Paths右边省略号,选择Library,Start,U-library,CORE文件夹。
至此工程模板建立完毕,我们可以在main.c中输入以下代码测试程序
#include "stm32f10x.h"
int main(void)
{
while(1)
{
}
}
这里显示到0警告0错误表示工程建立成功。
快速建立工程方式
1.先做好建立工程前的文件夹准备:随意选择磁盘建立名为Template的文件夹,以后的工程文件都可以放到Template文件夹下。(名字可以任意更改)
2.在Template的文件夹下再建立一个任意一个名字的文件夹(最好命名当前工程名)这里以Frame这个名字为例。
3.在Frame文件夹下建立OBJ,U-library,User三个文件夹,如下图:
4.在User中添加main.c。
5.打开keil5软件选择Project>New uVision Project…,之后在目录中定位到刚刚所建立的User中,文件名命名为Project,之后保存。
在接下来的框子中选择自己的单片机类型这里以STM32F103C8T6为例,之后关闭接下来弹出的界面。
5.在弹出的框子中如下图选择
如果需要其他的外设,需要在Device—>StdPeriph Drivers中自行选择。
6.点击品字形图标,在弹出的框子中Groups下添加User,在User中添加mian.c
7.点击魔术棒图标(如下图)
在Output中点击Select Folder for Objects…定位至OBJ文件下,并在Create HEX_File前打对勾。在C/C++中点击lnclude Paths右边省略号,选择U-library文件夹。
至此工程建立完毕。我们可以在main.c中输入以下代码测试程序
#include "stm32f10x.h"
int main(void)
{
while(1)
{
}
}
这里显示到0警告0错误表示工程建立成功。
总结
快速建立工程虽然简单,但需要对单片机的外设有一定的认识。在建立好工程模板后,需要再次建立工程时可以直接复制工程模板,改一下工程名就好(注意要删除User下除自己添加的文件外的所有东西,以免造成两次工程的文件混乱)。当电脑内存不足时可以删除OBJ中的文件(编译时的垃圾文件,作用不大)。