一、Missing Compiler Version 5
1. 下载 Arm Compiler 5
链接:百度网盘 请输入提取码
提取码:zv2i
2. ARMCC
下载ARMCC.rar文件,
解压后将其中的ARMCC文件复制到keil安装目录下的ARM目录里:F:\KEIL_C51\ARM
3.Keil 配置
①打开
② Folders/Extensions
③添加ARMCC文件夹
④选择版本5
二、core_cm3.c 在编译器v6下报错,无法编译
原因:
core_cm3.c过于陈旧(2009)
方法一、更换编译器版本
通过上一节,在Target
使用v5的编译器就行,
方法二、更新相关内核文件
- 更换内核文件
打开安装MDK的目录:
F:\KEIL_C51\ARM\CMSIS\5.9.0\CMSIS\Core\Include
复制下面4个文件: - 启动文件
将上面4个文件粘贴至项目工程下面的启动文件夹里,如我的是放在了Startup文件夹里
注意target要包含此文件的路径: - 弃用(删除)旧版本的 core_cm3.c
- 启动编译器版本6
- 编译链接成功
或者(效果一样,就看使用的是什么固件库了)
下载STM32的cube软件包,如F1系列
官网下载处:https://www.st.com/en/embedded-software/stm32cube-mcu-mpu-packages.html#products
同样地,找到这4个文件,复制到项目工程下的启动文件夹内。
路径:STM32Cube_FW_F1_V1.8.0\Drivers\CMSIS\Include
总结
- 若用的是旧版本的core_cm3.c ,就使用编译器v5编译工程;
- 若想用编译器v6,就更新4个相关的内核文件:
core_cm3.h、cmsis_version.h、cmsis_compiler.h、cmsis_armclang.h
(CMSIS:Cortex Microcontroller Software Interface Standard,ARM Cortex™ 微控制器软件接口标准)
注:本文非原创,文章出处转自:https://www.cnblogs.com/YIKeLB/p/17127470.html