IAR使用教程


前言

  介绍一下单片机开发软件IAR的基本使用,以STM32f407标准库建立工程


一、开发环境搭建

1.1 IAR的安装

IAR 7.1下载链接如下,点击install进行安装,其余参考百度
https://download.csdn.net/download/weixin_44567668/87358393
在这里插入图片描述
注意:如果使用高版本,高版本可以兼容低版本,只需要在高版本编译保存一下原工程即可

1.2 其他工具安装

下载链接:https://download.csdn.net/download/weixin_44567668/88503033

  1. CH340串口驱动安装
    安装方法:直接点击安装(安装失败见readme),提示预安装成功即安装成功
    作用:安装了串口驱动后,电脑就能识别串口
  2. 串口程序下载工具mcuisp(FlyMcu)
    作用:可以将.hex格式程序通过串口下载到板子里
  3. 串口调试助手XCOM
    作用:可以通过串口收发数据
  4. STLINK驱动安装
    作用:可以在windows下配合MDK进行程序下载和调试。

1.3 官方固件库

下载链接:https://download.csdn.net/download/weixin_44567668/88633544


二、IAR基本使用

2.1 新建工程

2.1.1 文件创建

  1. 新建Template文件夹,在其中创建EWARMFWLIBUSER文件夹
    在这里插入图片描述

  2. EWARM文件添加
    1)新建Debug调试文件夹
    2)将链接文件stm32f4xx_flash.icfstm32f4xx_sram.icf复制过来
    注意:该文件在官方固件库里Project\STM32F4xx_StdPeriph_Templates\EWARM目录下,找不到官方库文件,可以直接从附件例程里复制,下同
    在这里插入图片描述

  3. FWLIB存放标准库文件
    1)将STM32F4固件库\Libraries\STM32F4xx_StdPeriph_Driver里的srcinc(源文件和头文件)文件夹复制到FWLIB,然后创建CORE文件夹
    在这里插入图片描述
    2)CORE文件夹添加
    ①将启动文件startup_stm32f40_41xxx.s(文件目录在官方库文件Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates\iar)复制过来
    ②将核心文件core_cm4.hcore_cm4_simd.hcore_cmFunc.h以及core_cmInstr.h(文件目录Libraries\CMSIS\Include)4个文件同样复制过来
    ③将时钟文件system_stm32f4xx.c(目录Libraries\CMSIS\Device\ST\STM32F4xx\Source\Templates)复制过来,此外将文件stm32f4xx.hsystem_stm32f4xx.h(目录Libraries\CMSIS\Device——ST\STM32F4xx\Include)复制过来
    在这里插入图片描述

  4. USER
    1)创建文件夹App(用于存放应用程序)和文件夹Driver(用于存放BSP驱动文件)
    在这里插入图片描述2)将文件stm32f4xx_conf.hstm32f4xx_it.cstm32f4xx_it.h(目录Project\STM32F4xx_StdPeriph_Templates)复制到USER目录下面(复制头文件和源文件)
    在这里插入图片描述
    3)复制一份delay,sysusart文件夹到Driver里(这三个文件是正点原子的,此步可有可无)
    在这里插入图片描述

2.1.2 创建IAR工程

  1. 点击File——New——Workspace,新建工作空间
    在这里插入图片描述

  2. 点击Project——Create New Project创建工程,在对话框Tool chain(选择ARM)——Project template(选择Emply project)——OK
    在这里插入图片描述
    文件名Project,保存路径在EWARM文件夹里
    在这里插入图片描述
    点击Save All,文件名保存为Project,以后就可以点击Project.eww文件打开工程
    在这里插入图片描述

2.1.3 添加工程

  1. 首先添加组
    右击Project->Add->Add Group(CMSIS,FWLIB,USER(App,Driver))
    在这里插入图片描述
    有*号说明还没有保存
    在这里插入图片描述

  2. 添加文件
    1)右击工程->Add->Add Files,只添加.c文件和.s文件,其中FWLIB里添加\Template\FWLIB\src的所有文件
    在这里插入图片描述
    2)新建一个空白文件
    在这里插入图片描述
    输入如下代码:

#include "stm32f4xx.h"

int main(void)
{	
    while(1);
}

点击保存,将文件命名为main.c,保存到App文件夹里
在这里插入图片描述
此时右击就可以把main.c文件添加进来
在这里插入图片描述

2.1.4 IAR选项配置

  1. Project右击->Option,打开选项配置
    在这里插入图片描述

  2. 通用选项General Options
    1)Target——Device选择自己使用的相应芯片型号
    在这里插入图片描述
    2)Output(选择输出路径,基本不需要动)
    3)Library Configration
      Library选择Full,勾选CMSIS(如果需要使用某些标准的库函数接口,如我们使用的printf and scanf
    注意:CMSIS是微控制器软件接口标准的意思。IAR for ARM在V5和 V6、V7版本之间存在差异,很多人用新版本IAR编译以前工程出现错误的原因就在于此
    在这里插入图片描述

  3. C/C++ Compiler->Preprocessor添加路径和宏定义
    1)在Additional include directories:(one per line)里添加.h头文件路径
    在这里插入图片描述
    注意:添加的路径最好是相对路径$,而不是绝对路径。使用绝对路径工程位置改变之后就会找不到文件而报错。可以点击按钮选择路径,也可以通过复制文件路径进行配置。
    在这里插入图片描述
    2)在Defined symbols添加宏定义

USE_STDPERIPH_DRIVER
STM32F40_41xxx
xVECT_TAB_SRAM

3)Optimizations->Level框中勾选Medium,这是选择了中等的代码优化选项。
在这里插入图片描述

  1. Output Converter—— Output可以设置最终编译链接后输出的文件类型和名称。
    在这里插入图片描述

  2. Linker——Config——Linker configuration file添加链接文件
      勾选Override default重设默认文件,选择我们之前复制过来的stm32f4xx_flash.icf链接文件
    在这里插入图片描述

  3. Debugger->Setup配置仿真器
    1)Driver选择ST-LINK
    在这里插入图片描述
    2)Download勾选上Verify Download和Use flash loader开启下载校验
    在这里插入图片描述

  4. ST-Link->Interface选择SWD
    在这里插入图片描述

2.2 编译和调试

  1. 编译
    1)单独编译Compile,快捷键Ctrl+F7
    2)全局编译Make,快捷键F7
    在这里插入图片描述

  2. 进入调试状态
    点击Download and Debug,快捷键Ctrl+D
    注意:需要在Debugger——Driver选择Simulator模拟,或者用ST-Link连接设备,如果使用ST-Link则开启调试就会烧录程序
    在这里插入图片描述
    调试窗口都在View打开:

序号名称功能
调试断点按钮打开调试界面和设置断点
调试控制按钮可以跳转调试点
Registers寄存器视图
Disassembly程序执行栈
Watch可以查看全局变量值
Memory显示内存情况
  1. 仿真进行调试
    在这里插入图片描述
      常用的调试操作是Debug——Step Over(F10)逐过程、Step Into(F11)逐条执行程序指令、Go(F5)直接把程序执行到最后。在工具栏上也有调试可以直接使用,此程序的调试过程与结果如下:
    在这里插入图片描述
      再次执行将调至main处循环执行,可以看到将寄存器R0和R1的值相加存入R2当中。结束调试点击Stop Debugging(一个红色×号)。如果在调试期间修改程序,修改完成后点击Restart Debugger重新生成仿真
  2. 断点问题
      在该行指令的最前面点击Toggle Breakpoints(或按F9)可以设置断点。按F5 键或工具条上的Go 按钮都可以让程序执行到断点。
      IAR显示所有的断点,可以在View——Breakpoints中调用断点窗口,将需要找到所有的断点并将其关闭(右击delete)

2.3 环境配置

  代码页面右击Option,打开IDE Options
在这里插入图片描述

  1. 如何使用操作系统自带而IAR没有的字体?
      在IAR的APPDATA文件目录中找到IarIdePm.ini文件,编辑选择自己要使用的字体名。其中Common是通用字体,TextEditor是编辑器代码字体。代码字体选用了Keil默认的Courier New字体。
    在这里插入图片描述

  2. 部分文件字体显示与设置的字体不一致?
      不要勾选“Auto-detect character encoding”
    在这里插入图片描述

  3. IAR显示行号
      显示行号:在代码段点击右键,找到Options——Editor——Show Line Numbers 勾选上就可以了。

2.4 常用快捷键

1、F9 光标处添加/删除断点;Ctrl+F9 使能/失能断点
2、注释的快捷键:Ctrl+K;取消注释:Ctrl+Shfit+K
3、Ctrl+Shfit+空格:可以使用IAR提供的内部代码的编写,如if、for、class语句。
4、CTRL + SHIFT +I:选中某些行可以实现自动的缩进
5、TAB键:可以实现自动缩进
6、Ctrl+Shift+V:列出剪切板中所有的字符串供选择粘贴
7、Ctrl+B:智能选择光标所在括弧内的区域,多次使用可选更大的区域
8、Shift+Alt+E:打开断点窗口,列出所有断点
9、Ctrl+F:向下寻找光标所在处的单词;Ctrl+Shift+F:在文件中搜索
10、Ctrl + H:替换字符串
11、Ctrl + G:跳到指定行
12、Ctrl+1:新增垂直窗口;Ctrl+2:新增水平窗口
13、F2:跳到下一个标签处;Shift + F2 在光标处添加标签
14、F3 向下寻找上次搜索的字符;Shift+F3:向上寻找上次搜索的单词
15、F4:跳到定义处;Ctrl+F4关闭当前文件;Ctrl+Shift+4关闭除当前激活外的所有文件


附录

1、STM32f407实验IAR版本

  包含常规外设实验(uart,tim等)、应用实验(gps、蓝牙等)、文件系统fatfs以及RTOS(UCOS、FreeRTOS),具体见附件

2、C语言基础

https://blog.csdn.net/weixin_44567668/article/details/129003611

3、编译报错解决方式

https://blog.csdn.net/weixin_44567668/article/details/129003692

  • 8
    点赞
  • 125
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
当然,我可以为您提供一些iar7.8的使用教程IAR Embedded Workbench是一款广泛使用的嵌入式开发工具,它支持多种芯片平台和编程语言。 以下是一些iar7.8使用教程的步骤: 1. 安装和启动IAR Embedded Workbench:首先,从IAR Systems的官方网站下载并安装IAR Embedded Workbench。安装完成后,启动该软件。 2. 创建一个新项目:在IAR Embedded Workbench的主界面中,选择"File"菜单,然后选择"New"来创建一个新项目。在弹出的对话框中,选择你要开发的芯片平台和编程语言。 3. 配置项目选项:在创建新项目后,你可以配置一些项目选项,例如编译器设置、调试器设置等。根据你的需求进行配置。 4. 编写代码:使用IAR Embedded Workbench的集成开发环境(IDE),你可以编写嵌入式代码。打开源文件编辑器,编写你的代码,并保存。 5. 构建项目:在IAR Embedded Workbench的主界面中,选择"Project"菜单,然后选择"Make"来编译你的项目。如果没有错误,编译将成功。 6. 调试代码:使用IAR Embedded Workbench提供的调试功能,你可以调试你的代码。连接调试器到目标硬件,并使用断点、变量观察等功能进行调试。 7. 下载代码到目标硬件:在IAR Embedded Workbench的主界面中,选择"Project"菜单,然后选择"Download and Debug"来下载你的代码到目标硬件。 这些是iar7.8使用教程的基本步骤。当然,还有更多高级的功能和设置可以根据具体需求进行学习和使用。希望对你有所帮助!如果您有其他问题,请随时提问。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

别问,问就是全会

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值