IAR Embedded Workbench安装教程
一、下载安装包
包含2021年5月最新IAR软件包及注册机
我的网盘链接:https://pan.baidu.com/s/1DwtpQAxaJmvZ2_UhvYBmew
提取码:f1vb
1、安装
-
第一步:点击Intall IAR embedded workbench for ARM
一直下一步:
-
选择安装路径:
先创建安装的文件夹
-
再选择安装路径:
-
下一步-->默认全选
默认-->下一步
确定
-
点击install
等待几分钟安装结束
-
接下来的驱动直接点击安装
-
点击下一步
点击同意接受
-
下一步
-
点击安装,等待安装结束
下一步
点击安装
完成
二、注册
注意:使用管理员打开License Manager软件和注册机软件
- 点击license management for Arm
- 打开注册机License Generator
- 点击Generate
- 复制License Number到License Manager,点击下一步
点击NO
-
选择需要保存的activation information的保存位置(一定要记好,后边会用到)
点击下一步
点击下一步 -
点击标号1的browse,选择刚才保存的txt文件,然后点击生成响应文件(标号2),两者最好放到一块
-
回到注册页面,选择刚才注册机生成的响应文件,下一步
注册完成
-
最终显示
三、搭建STM32环境
下载STM32固件库:链接:https://pan.baidu.com/s/1yob4WkFQvWzd-ZZHPsY4hQ?pwd=iqqj
提取码:iqqj
1、文件夹创建
2、库文件移植
将固件库的Libraries文件夹存放到我们创建的目录下
将固件库目录STM32F10x_StdPeriph_Lib_V3.6.0\Project\STM32F10x_StdPeriph_Template中的下图文件放到ARM-MDK目录中:
3、新建stm32工程
打开iar,创建新工程:Project -> Create New Project:
CMSIS(Cortex Microcontroller Software Interface Standard) 是Cortex-M处理器系列的与供应商无关的硬件抽象层。它是ARM公司制定的一个标准。它可以为处理器和外设实现一致且简单的软件接口,
简单来说,就是ARM公司制定标准,芯片厂商按照此标准编写相应的程序,实现统一的接口,方便开发人员的使用。
- Startup_xxxxx.s——设备启动代码,包括复位处理程序和异常向量。
- System_xxxxx.c——设备的基本配置文件,包括时钟和总线的配置。
- .h寄存器定义及用户代码需要的包含文件,用于访问设备。在我们编程时需要将这些文件添加或包含到工程中
4、选择芯片
5、添加头文件
6、输出配置
7、选择下载调试工具,我使用的是stlink,接口选择swd
8、链接
FQA:
问题1:
Error[Pe147]: declaration is incompatible with "__nounwind __interwork __softfp unsigned int __iar_b
解决方法
1、把原有core_cm3.h头文件包含搜索路径去掉。
$PROJ_DIR$\..\Libraries\CMSIS\CM3\CoreSupport
2、Project options > General Options > Library Configuration 中勾选 Use CMSIS
问题2:
IAR STM32报错Error[Pe147]:declaration is incompatible with“__nounwind __interwork __softfp unsigned
解决方法:
在core_cm3中找到#include <intrinsics.h> 将其注释掉
问题3:
Warning[Pe223]: function “__DSB“ declared implicitly
解决方法:
或者:
删除“core_cm3.h”这个文件,在编译的时候系统会自动寻找到它的源文件,在IAR..\CMSIS\Core\Include\文件夹里。
参考文献
参考1:https://blog.csdn.net/weixin_42108484/article/details/97392212
参考2:https://blog.csdn.net/qq_56527127/article/details/119815640
本文来自博客园,作者:登云上人间,转载请注明原文链接:https://www.cnblogs.com/lj15941314/p/EmbeddedSoftware.html