今天给小伙伴分享一篇给stm32新建工程模版

 

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

1、首先打开IAR,就是这个样子

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第1张

 

2、再建一个目录文件夹

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第2张

 

3、建立一个工作空间,以及建好工作空间如右图所示

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第3张IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第4张

 

4、接下来建立工程,Project--------Creat New Project

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第5张

点击Empty project-------------再点击OK

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第6张

选择你之前创建的目录里面,取个名字再保存就行了

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第7张

保存之后就是这个样子

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第8张

 

5、这个时候再点保存,就像下图,会跳出一个窗口(如图),这个是保存你的工作空间,取个名字(用原来的工程名字都行),点保存就行

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第9张

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第10张

 

6、接下来添加分组

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第11张

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第12张

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第13张

 

7、我们要多多添加这样的几个分组,如下

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第14张

 

8、在我们之前的目录里面也创建如下的文件夹

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第15张

 

9、按图示操作把下载的库文件夹里的这部分 复制 到之前创建的文件夹里

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第16张

 

10、按照图示,把iar文件夹里的启动文件全部复制到Startup内

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第17张

 

11、再把这三个文件复制到Startup文件夹内

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第18张

 

12、继续复制文件,把标准库内(图示)目录下的三个文件复制到User目录下,

之前少做了一件事要把Startup文件夹里面的stm32f10x.h移到User文件夹内,这样看的美观一些。

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第19张

 

13、导入文件,之前少创建了一个分组,补上如图所示

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第20张IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第21张

导入文件的如下(如图):这里要注意一点,startup_stm32f10x_md.s这个文件是需要根据你的单片机型号来定的,不同型号的单片机这个启动文件不一样,我这里是stm32f103c8t6单片机

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第22张

 

14、在App里面创建一个main.c

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第23张

14、接下来配置工程

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第24张

 

15、选择单片机的型号

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第25张

 

16、将库配置选成Full,再勾选下面的Use CMSIS

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第26张

 

17、将char类型改成 有符号型

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第27张

 

18、接下来就是极为重要的一件事,添加group里面.c文件的路径,黄色框的文件都要点进去,再点确认

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第28张

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第29张

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第30张

添加完成的路径图片是这样的

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第31张

 

 

19、到这里,已经完成了七七八八,把鼠标点击到main.c,来编译一下,就是图中的图标

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第32张

这样编译会出现好多个错误,一看到这么错误肯定会慌

不要慌!!!!!!!!

不要慌!!!!!!!!

不要慌!!!!!!!!

不就是这样的错误么,英文意思是请选择你应用中的单片机型号的启动文件

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第33张

点击这个错误可以定位到这里

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第34张

也就是说工程里缺少   #if !defined (STM32F10X_LD) && !defined (STM32F10X_LD_VL) && !defined (STM32F10X_MD) && !defined (STM32F10X_MD_VL) && !defined (STM32F10X_HD) && !defined (STM32F10X_HD_VL) && !defined (STM32F10X_XL) && !defined (STM32F10X_CL)  这么多宏里面的一个

所以我的单片机stm32f103c8t6的启动文件是STM32F10X_MD,按下图所示,添加这个东西之后,再编译

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第35张

 

20、再编译之后是下图

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第36张

这也是有原因的,我们点击一个警告错误,这个是初学者可能不懂,再把这个  USE_STDPERIPH_DRIVER  添加进去

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第37张

你们肯定会疑问为什么要添加这个这个宏,如下图所示

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第38张

看红框里面的斜蓝色字体,意思大致就是“如果你不使用外设驱动,在这种情况下,这些驱动不会被包括并且这些应用代码会直接基于外设寄存器”,所以我们需要这样的宏,再编译就显示没有错误,没有警告。

 

 

  • 以上为参考内容,与STM32f103SET6基本配置相同。仅有几处区别如下所示:

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第39张

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第40张

 

 

  •  配置过程中与遇到的主要问题:
  1. 不知道MDK中启动文件与IAR中是不同的两个文件,直接将MDK工程模板中启动文件拷贝到IAR工程中,作为启动文件。导致错误。。

  解决参考考博客:启动文件大量报错《startup_stm32f10x_hd.s》

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第41张

 

 

  • 配置成功截图:

IAR为STM32创建工程模板(基于STM32f103zet6) 随笔 第42张

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄