当前位置:文档之家› STM32工程模版的建立

STM32工程模版的建立

通过STM32固件库V3.5.0来建立一个简单的工程模版
首先,打开Keil,选择Project->New uV ision Project,选择合适的文件夹,输入工程名后,点击保存,建立工程。

如下图,在Template文件夹下建立工程名为stm32_demo的工程。

然后我们选择器件,以STM32F103RB为例(STM32其他系列可类推),在STMicroelectronics 栏中选择STM32F103RB,如下图,在图右侧我们可看到关于芯片的描述。

点击确定后弹出如下的对话框,问需不需要添加启动文件(此启动文件为MDK自带的),
在这里,选择否(N),等会我们会添加STM32固件库中的启动文件。

接下来,我们要建立几个文件组,用来存放不同的源文件,让整个工程目录结构清晰,点击
中的后如下图所示
点击中的可建立一个文件组,可以删除分组,下面我们将建立User,StdPeriph_Drive,CMSIS,MDK-ARM四个文件组,User用来存放与用户有关的文件,StdPeriph_Drive用来存放库函数中的外设驱动文件,CMSIS用来放于Cortex_M3内核有关的文件,MDK-ARM用来存放启动文件,文件组建立好后,如下图所示。

点击OK,我们可看到文件组如下所示
接下来,我们将对固件库文件夹(如下图所示)与Template文件夹中的文件进行操作。

将固件库文件夹中的Libraries文件夹复制到工程目录下(即刚才建立的Template文件夹下),并在Template下建立User与Output两个文件夹,User用来放与用户代码有关的文件,Output 用来存放编译后产生的中间文件。

打开Template文件夹后如下图所示。

然后,将
STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_Stdperiph_Examples\GPIO\IOToggle
目录下main.c,stm32f10x_conf.h,stm32f10x_it.h,stm32f10x_it.c四个文件复制到User目录下。

至此,文件的操作结束。

重新点击,现在我们要向各个文件组中添加文件。

首先是User文件组,点击Add Files,然后添加User文件夹下的3个C文件,如下图所示。

然后是StdPeriph_Drive文件组,向其添加Libiraries\STM32F10x_StdPeriph_Driver\src下的所有源文件,如下图所示
然后是CMSIS文件组,向其添加Libiraries\CMSIS\CM3\CoreSupport下的core_cm3.c和Libiraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x下的system_stm32f10x.c文件,如下图所示
然后是MDK-ARM文件组,向其添加启动文件,启动文件在
Libiraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\arm下,因为我们选择的芯片型号为STM32F103RB,故向其添加startup_stm32f10x_md.s,如下图所示,其他类型芯片可根据芯片容量来选择相应的启动文件
完成后,点击OK,至此,文件组的文件添加完毕。

接下来,我们将进行编译选项的设置
选择中的,在Target
栏中勾选,Output栏中点击,选择
Template文件下下的Output文件夹,并且勾选,Listing栏中点击
,选择Output文件夹,最后要在C/C++选项栏中设置好宏定义与文件包含路径。

宏定义设置如下,其中STM32F103RB对应的宏定义STM32F10X_MD,可以根据其他芯片型号改变宏定义。

文件包含路径设置如下,
点击
中的来添加文件路径,在此要添加4个文件路径,如下图所示
接下来是最后一步了,将main.c文件中的第24行#include "stm32_eval.h"注释掉即可。

点击编译后,编译即可通过。

编译的结果如下:
主函数是一个关于IO翻转的例子,我们可以通过软件仿真来看波形。

点击
中的,然后选择
中的(波形仿真),点击后如下图所示
点击后如下图所示
点击新建要观察的信号,在此处应输入PORTD.0与PORTD.2两个信号,设置好后点击
Close,点击,仿真开始,我们可以观察到的波形如下图所示
至此,库函数的移植结束。

关于库函数的使用,大家可以参考官方关于固件库的手册。

相关主题