关注、星标公众号,不错过精彩内容
作者:黄工
公众号:strongerHuang
有很大一部分朋友都在用 Keil 和 IAR 进行开发,针对ARM内核的MDK和EWARM这两个工具存在一个跨版本兼容性的问题。
其实,他们两个工具兼容性的问题,官方都给有相应的迁移和兼容手册。
下面简单说下Keil MDK和IAR EWARM跨版本迁移和兼容的指导(不详说)。
一、Keil MDK
目前对于Keil MDK最新版本使用的编译器是Arm® Compiler V6.13。
V6.13介绍:
Arm Compiler 6是Arm架构的编译工具链,可在所有MDK版本中使用。它汇集了现代LLVM编译器基础结构和高度优化的Arm C库,从而为Arm架构提供了性能和功耗优化的嵌入式软件。
高效的代码生成,更好的诊断和更快的功能开发,再加上Arm的编译器后端专业知识,使得LLVM成为下一代Arm编译器的自然选择。
Arm Compiler 6在编译器前端使用Clang,同时还保留了熟悉的子工具,例如armasm,armlink,armar和fromelf。
Arm Compiler 6特点:
它具有基于Armv7-M架构(Arm Cortex-M3 / M4 / M7)的内核的同类最佳代码大小。
它支持基于Armv8-M的内核(Arm Cortex-M23和M33),并使用TrustZone for Armv8-M为设备创建安全和非安全代码。
它完全支持C ++ 14语言标准。
可以使用Arm Compiler 6构建和优化为gcc创建的源代码。
V5和V6对比:
参考地址:
http://www2.keil.com/mdk5/compiler/6/
V5 -> V6迁移和兼容指南视频:
V5 -> V6迁移和兼容指南文档:
我之前也简单写过相关说明,见文章:MDK-ARM编译器从V5升级到V6需要做哪些工作?
同时,官方也给了文档:
http://www.keil.com/appnotes/files/apnt_298.pdf
还有,你安装最新的MDK,里面有迁移说明文档:
更多关于Keil的内容,可以关注公众号『strongerHuang』,在后台回复“Keil系列教程”查看。
二、IAR EWARM
EWARM改动较大,目前最新版本是V8.42,引入了一些新的技术,比如支持IoT、 RISC-V等。
EWARM AWS版本描述:
新版本EWARM集成了亚马逊云解决方案,借助这种集成方案,您可以直接在全球领先的开发工具链中检查和控制设备的云通信,从而简化并提高物联网应用程序的开发和调试效率。
在调试过程中,您可以访问TCP / IP接口,查看MQTT软件包的状态,并检查设备影子以实现从设备到云的完全控制。通过订阅AWS主题和发布命令,也可以检查和控制与AWS IoT的云通信。
AWS版本包括什么?
具有集成代码分析工具的完整C / C ++编译器和调试器工具链
功能丰富的调试探头I-jet
支持与IAR Systems和AWS合作的公司提供的各种合格的MCU,包括 恩智浦,意法半导体和德州仪器
通过先进的优化技术获得出色的性能
适用于AWS的IAR仪表板
与IoT实时操作系统Amazon FreeRTOS集成
全面的调试器,可访问云通信,从而实现从设备到云的完全控制
用户友好的功能可简化工作流程
编译器支持C18(ISO / IEC 9899:2018)和所有C ++ 17功能。C ++库支持C ++ 14,没有添加C ++ 17。
参考地址:
https://www.iar.com/iar-embedded-workbench/tools-for-arm/iar-embedded-workbench-for-aws/
EWARM不同版本迁移向导:
参考官方文档:
http://supp.iar.com/FilesPublic/UPDINFO/014255/arm/doc/EWARM_MigrationGuide.ENU.pdf
这里面包含:V4迁移到V5、 V5迁移到V6、 V6或V7迁移到V8的指导。
具体内容,我就不列出来了,有需要的朋友,可以自己进入网址查看。
更多关于IAR的内容,可以关注公众号『strongerHuang』,在后台回复“IAR系列教程”查看。
最后强调:
如果是维护老项目,不建议轻易更换软件包,以及工具。
‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧ END ‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧
推荐阅读:
关注微信公众号『strongerHuang』,后台回复“1024”,查看更多精彩内容。
长按识别图中二维码关注