芯查查logo
  • 物料选型
  • 数据服务
    1. 新产品
    2. 查替代
    3. 丝印反查
    4. 查品牌
    5. PCN/PDN
    6. 查方案
    7. 查代理
    8. 数据合作
  • 应用方案
  • SaaS产品
      SaaS产品
    1. 供应链波动监测预警
    2. 半导体产业链地图
    3. 智能BOM管家
    4. 解决方案
    5. 汽车电子
    6. 政府机构
    7. 数据API
  • 商城
  • 行业资讯
    1. 资讯
    2. 直播
  • 论坛社区
    1. 论坛
    2. 学习
    3. 测评中心
    4. 活动中心
    5. 积分商城
  • 查一下
正在使用账号登录iCEasy商城
聪聪哥哥
使用高版本的keil中添加AC5的方法

    最近对使用keil进行了升级,发现高版本KEIL中对于AC5的编译器没有安装,而在之前的项目中,需要使用AC5编译器进行调试,使用AC6编译器的时候,发现有很多错误。
 

 对于一些友商32位单片机,发现低版本的keil无法安装一些pack包,没办法只好对高版本的MDK添加AC5的编译器。

一:手动下载AC5的编译器。

     AC5: ARM Compiler 5,传统编译器,使用 --c99 编译。

    AC6: ARM Compiler 6,基于 LLVM/Clang 的新编译器,默认使用 -std=c99 等。性能更好,但某些旧代码可能需要修改才能编译通过。

 第一种方法就是去官方进行下载,

https://developer.arm.com/downloads/view/ACOMP5

 第种方法就是:在低版本的MDK中将AC5 编译器复制出来。

二:安装AC5编译器

     将下载的AC5安装到MDK的文件中,这里最好是默认安装,如果不是默认安装的情况下,也需要将AC5的编译器安装到arm的目录下,方便软件识别。
 

三:软件配置如下所示

打开 Keil MDK。

打开一个工程,点击魔术棒工具 Option for Target。转到 Target 选项卡。

在 Code Generation 区域,点击 Use Default Compiler Version 5 下拉菜单。

如果安装成功,你应该能看到新安装的编译器版本(例如 Use Default Compiler Version 5 或者具体的 Compiler Version 5)。

选择它,然后点击 OK。

AC5和AC6 编译器的区别如下:

这是 AC5 和 AC6 的分散加载文件语法差异导致的。AC5 的分散加载文件可能需要使用 * 来匹配所有对象文件,而 AC6 需要使用 *.*。你需要根据编译器版本调整你的 .sct 文件。

Keil 找不到编译器

确保安装或复制的路径没有中文或特殊字符。

尝试使用方法二中的 Project -> Manage -> Project Items -> Folders/Extensions 来手动添加路径。

代码在 AC5 下编译通过,但在 AC6 下报错

这是迁移旧项目时最常见的问题。AC6 语法检查更严格。常见原因包括:

隐式函数声明(未包含正确的头文件)。

变量定义和作用域问题。

内联汇编语法不同。

通常需要根据 AC6 的错误提示逐一修改代码。

当然我这里还尝试了另外一个比较协修的方法就是:为了安装AC5的编译器,先安装一个低版本的,成功之后,再安装一个高版本的的。也是可以的。

申请原创奖励
版块: 新手入门指南
2025/12/27 08:08
  • 举报
😁😂😃😄😅😆😉😊😋😌😍😏😒😓😔😖😘😚😜😝😞😠😡😢😣😤😥😨😩😪😫😭😰😱😲😳😵😷😸😹😺😻😼😽😾😿🙀🙅🙆🙇🙈🙉🙊🙋🙌🙍🙎🙏✂✅✈✉✊✋✌✏✒✔✖✨✳✴❄❇❌❎❓❔❕❗❤➕➖➗➡➰🚀🚃🚄🚅🚇🚉🚌🚏🚑🚒🚓🚕🚗🚙🚚🚢🚤🚥🚧🚨🚩🚪🚫🚬🚭🚲🚶🚹🚺🚻🚼🚽🚾🛀Ⓜ🅰🅱🅾🅿🆎🆑🆒🆓🆔🆕
@好友

全部评论

加载中
游客登录通知
已选择 0 人
自定义圈子
移动
发布帖子
发布动态
发布问答
最新帖子
做了3年硬件,才明白PCB降本不是一味压价,从这5个环节省钱出于成本考量,怎样设计一块高效的PCB电路板?个人电子元器件管理系统USB-226-BRW大功率USB扩展器RA4M2-SENSOR+ADC采集工业位移传感器
热门版块
查看更多
萤火工场
每日打卡
问型号
问技术
问行情
电子元器件
飞腾
开源硬件项目
机器人开源工坊
电子DIY

124

收藏

分享

微信扫码
分享给好友

评论