S32DS配IAR for ARM编译器开发S32K14X

时间:2024-05-22 19:23:00

IAR 在嵌入式业界大名不用多讲,随便列几条

1、编译速度超级快,比MDK 要快2-3倍应该没问题,比起eclipse的各种IDE 就不用说了。
2、编译的最终代码质量,也是很不错的。比gcc应该好很多。
3、优化配置的选项也很多,是偏代码size,还是speed,还是balance,可以选择配置。
4、还有就是对于MISRA 标准的支持,这个对于提高软件的可靠性有很大的帮助。

S32DS for ARM,是NXP 官方助推的,基于eclipse+GCC的,凑合用,但是免费,又是官方推荐的,很多例程都是基于这个的。

最好的办法就是S32DS+ IAR 结合下。
S32DS配IAR for ARM编译器开发S32K14X
不知道怎么弄的,参考了官方的例程。
S32DS配IAR for ARM编译器开发S32K14X
S32DS for ARM v2018.R1 安装 IAR Eclipse Plugin后配置输出 IAR 链接器输出转换器(Output Converter)生成
S19/HEX/BIN 文件,编译报错问题的解决。
在安装 IAR Eclipse Plugin 后,若配置输出 IAR 链接器输出转换器(Output Converter)生 成 S19/HEX/BIN 文件:S32DS配IAR for ARM编译器开发S32K14X
S32DS配IAR for ARM编译器开发S32K14X
然后,再编译应用工程,将提示以下链接器错误:Fatal error[Ms007]: could not open file "config.icf"
解决办法是:去掉 IAR 链接器配置文件设置的双引号“”

“${ProjDirPath}/Project_Settings/Linker_Files/S32K144_64_flash.icf” 改为
${ProjDirPath}/Project_Settings/Linker_Files/S32K144_64_flash.icf

S32DS配IAR for ARM编译器开发S32K14X
接下来可以开始编译了,第一次 编译会比较慢,后面就会快很多。

S32DS配IAR for ARM编译器开发S32K14X
3、 S32DS for ARM v2018.R1 安装 IAR Eclipse Plugin后,添加 S32K SDK 的 PAL 层组件编译报错文件解决
基于 IAR Eclipse Plugin,创建 SDK 的 IAR 工程时,添加外设抽象层(PAL)组件后,编译时会提示相应的 PAL 组件的头文件找不到的错误:
Fatal error[Pe1696]: cannot open source file “xxx_pal.h”
比如,添加 can_pal 组件后,生成代码,并编译,将提示以下错误:
Fatal error[Pe1696]: cannot open source file “can_pal.h”
S32DS配IAR for ARM编译器开发S32K14X
S32DS配IAR for ARM编译器开发S32K14X
解决方法是:在工程属性 C/C++ Bulid–>Settings–>Tool Settings–>IAR C/C++
Compiler for ARM–>Preprecessor–>Additional include directories: 点击“+”添加 PAL层组件的 SDK 目录即可:
“${ProjDirPath}/SDK/platform/pal/can/inc”

S32DS配IAR for ARM编译器开发S32K14X

最好的办法:使用相对路径可以保证工程在其他电脑上也可以正确找到该文件路径!
S32DS配IAR for ARM编译器开发S32K14X
S32DS配IAR for ARM编译器开发S32K14X

2020年5月27日
今天很匆忙,大概截了图,也参考了部分 别人的,系统编译没问题。

后面有其他的使用方面的问题或者小技巧,在补充吧。