IAR建立STM32F103ZET6工程

使用IAR和STM32固件库v3.5建立STM32F103ZET6工程步骤

软件:IAR
单片机:STM32F103ZET6
操作系统:win7

1.建立工程目录,在工程目录下新建如下目录:

在这里插入图片描述
各目录的作用从上到下依次为:

  • APP 用户的应用程序,包含所有驱动头文件,调用所有驱动初始化函数,并在此实现单片机的完整功能。用此文件封装应用程序后,mian.c只需要在while(1)循环中调用一个app()函数即可。因此APP功能需修改时只需要修改APP文件和中断函数。
  • Core 与内核相关的文件(包含Startup启动文件,如果是keil的工程还需要添加core_cm3.c和core_cm3.h,iar软件自带这2个文件)
  • Libraries 标准外设驱动库文件(内有inc、src)
  • Preiph_Driver 用户的外设驱动文件,包括板级外设驱动和片内外设配置驱动。相互独立,禁止互相依赖,可依赖库中的驱动。用户直接在app中实现中断函数,app调用片内外设配置驱动的中断初始化函数时,通过形参的函数指针,将用户中断函数地址传递给官方中断函数。
  • Project 软件建工程创建的各个文件(IAR软件要在此包含.icf文件用于定义内存区,keil不需要)
  • User 用户自定义的文件。说明文档介绍程序功能和排故记录等。

2.拷贝固件库的文件分发到各目录中:

  • 在APP中新建app.c和app.h(此时软件还没打开,我直接建立txt文件强制修改后缀名)。

  • 将STM32最新固件库v3.5\Libraries\CMSIS\CM3
    DeviceSupport\ST\STM32F10x\startup\iar\startup_stm32f10x_hd.s拷贝到目录Core中。(注意:这个文件视单片机容量选择,自行查询.s汇编启动文件命名含义)
    在这里插入图片描述

  • 将STM32最新固件库v3.5\Libraries\STM32F10x_StdPeriph_Driver中的inc和src拷贝到目录Libraries中。
    在这里插入图片描述

  • 将STM32最新固件库v3.5\Libraries\CMSIS\CM3\DeviceSupport
    \ST\STM32F10x中的stm32f10x.h、system_stm32f10x.c、system_stm32f10x.h拷贝到目录User中。
    在这里插入图片描述

  • 将STM32最新固件库v3.5\Project\STM32F10x_StdPeriph_Template中的stm32f10x_conf.h、stm32f10x_it.c、stm32f10x_it.h拷贝到目录User中。
    在这里插入图片描述

  • 在User目录下新建main.c。

  • 将STM32最新固件库v3.5
    Project\STM32F10x_StdPeriph_Template\EWARM中的stm32f10x_flash.icf拷贝到目录Project中。
    在这里插入图片描述

3.至此拷贝文件完成,接下来是新建工作空间和一个空工程(简写,IAR使用方法请参考别人的教程)。

  • 打开IAR软件,新建工作空间,将工作空间保存在Project文件夹所在目录的上一级目录中,以便有需要时包含所有工程进来。在Project目录中新建一个空工程,并在IAR中按照Project文件所在位置的同级目录(APP、Core等)的命名新建5个目录(不包括Project),将各目录中对应的.c文件添加到IAR中的各目录中。结果如下:
    在这里插入图片描述
    其中output是IAR自动添加的目录。

4.配置工程

  • 右击目录最上边的 1.steering_engine -> options进入配置工程界面
    在这里插入图片描述
  • 如图选择STM32单片机型号,这里最终要选择的是STM32F103ZE
    在这里插入图片描述
    在这里插入图片描述
  • 接下来设置图示2处,注意上边栏选项变化。
    在这里插入图片描述
  • 在图示界面点击图示按钮设置好所有.h头文件的包含路径
    在这里插入图片描述
    ** 注意:要点进去设置路径才能包含到最后一级目录
    在这里插入图片描述
  • 将所有路径转换为相对路径,以保证工程可以移动位置。
    在这里插入图片描述
  • 在下面的框中添加2个宏定义:
    USE_STDPERIPH_DRIVER
    STM32F10X_HD
    (注意:后面这条视单片机容量选择,还可选STM32F10X_LD、STM32F10X_MD,后缀名与本文第2步《2.拷贝固件库的文件分发到各目录中》的启动汇编文件后缀名一致)在这里插入图片描述
  • 设置.icf文件路径,转换相对路径的相对路径自己去头文件包含路径中拷贝(相对路径和文件名中间的斜杠不要丢了,否则报错)。
    在这里插入图片描述
  • 根据自己的仿真器型号选择下拉菜单,我选J-Link,再设置仿真调试功能在这里插入图片描述
    在这里插入图片描述
  • 这个位置根据自己的仿真器接口选择2种模式(根据仿真器型号选择左边栏对应的选项设置仿真器参数)在这里插入图片描述
  • 点击OK,配置完成。
  • 双击左边栏的main.c,编写一个程序框架,点击框中按钮编译链接
    在这里插入图片描述
  • 只有警告,没有错误,恭喜你完成了自己的第一个stm32工程,向stm32单片机大门伸进去一只脚。
    在这里插入图片描述
  • 2
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值