STM32新建固件库工程模板

新建工程模板

Stm32新建工程模板步骤如下:

1、首先新建一个工程文件夹(英文命名)作为工程根目录

 

2、在文件夹中新建USER子目录文件夹

 

3、打开keil软件,点击菜单:Project=》New Uvision Project,然后定位到刚才建立的USER文件夹下边,工程文件就保存到USER下面,工程命名为SmartSensor

 

4、选择CPU界面,即选择芯片型号,我用的型号为STM32F103ZET6,所以选择该型号即可

 

点击ok,MDK会弹出 Manage Run-Time Environment 对话框,如图所示

 

直接点击cancel即可,得到如图  所示界面

 

至此为止我们只是建立了一个框架,还需要添加启动代码。现在USER目录下包含2文件夹和2个文件

 

5、在SmartSensor工程目录下边,新建CORE,OBJ以及STM32F10x_FWLib文件夹。CORE用来存放核心文件和启动文件,OBJ是用来存放编译过程及hex文件,STM32F10x_FWLib用来存放ST官方提供的库函数源码文件,USER目录除了用来放置工程文件外,还用来存放主函数文件main.csystem_stm32f10x.c

 

6、打开官方固件库包,定位到准备好的固件库包目录,将src,inc文件夹拷贝到STM32F10x_FWLib文件夹下

 

7、打开官方固件库包,定位到目录STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\CoreSupport下面,将文件core_cm3.c和文件core_cm3.h复制到CORE下面,然后定位到目录STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x\startup\a rm,将 startup_stm32f10x_hd.s文件复制到CORE下边

 

8、定位到目录:STM32F10x_StdPeriph_Lib_V3.5.0\Libraries\CMSIS\CM3\DeviceSupport\ST\STM32F10x下边,将里边的三个文件stm32f10x.hsystem_stm32f10x.csystem_stm32f10x.h,复制到USER文件夹下边,然后将STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Template下边的4个文件main.cstm32f10x_conf.hstm32f10x_it.cstm32f10x_it.h 复制到 USER 目录下面

 

9、前面 8 个步骤,我们将需要的固件库相关文件复制到了我们的工程目录下面,下面我们将 这些文件加入我们的工程中去。右键点击Target1,选择 Manage Project Items  Project Targets一栏,我们将Target名字修改为SmartSensor,然后在Groups一栏删掉一个Source Group1,建立三个 GroupsUSER,CORE,FWLIB。然后点击 OK,可以看到我们的 Target 名字以及 Groups 情况。

 

10、接下来我们往Group里边添加文件,邮件SmartSensor,选择Manage Project Item,然后选择需要添加文件的Group,优先的,选择FWLIB,点击右边的Add Files,定位到刚才建立的目录STM32F10x_FWLib/src 下边,将所有文件选中,然后点击Add,然后close,得到的结果如下:

 

11、用同样的方法,将Group定位到CORE和USER目录下,添加需要的文件,CORE下边需要添加的文件为core_cm3.c,startup_stm32f10x_hd.s.USER目录下需要添加的文件为main.c,stm32f10x_it.c,system_stm32f10x.c,最后点击ok,至此需要添加的文件已经添加到我们的SmartSensor工程中了

 

12、接下来是编译工程,在编译之前我们首先要选择编译文件编译后存放的目录。点击魔术棒,然后选择Output选项下边的select folder for objects,然后选择目录为我们上面新建的obj目录。

13、下面我们点击编译按钮,编译工程,可以看到很多报错,因为找不到头文件

 

14、点击魔术棒,然后点击c/c++选项,然后点击Include path右边的按钮,弹出一个添加path的对话框,然后我们将图上面的3个目录添加进去

 

15、接下来编译工程,同样会发现报了很多同样的错误,这是因为3.5版本的库函数在配置选择外设的时候通过宏定义来选择的,所以我们需要配置一个全局的宏定义变量,定位到c/c++界面,然后填写”STM32F10X_HD,USE_STDPERIPH_DRIVER”到Define输入框里面。

 

16、接下来还需要配置,让编译之后能够生成hex文件,点击魔术棒,选择output,选择creat HEX_File

 

17、重新编译代码,可以看到生成了hex文件在OBJ目录下面,这个文件我们用flymcu下载到mcu即可。至此,一个完整的基于固件库的模板就制作完成了。

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值