配环境什么的最想死了,真的很想死。
因为最近给NRF的蓝牙芯片写东西,用了Keil,开发板是以前朋友的。遇到了不少问题。
先解决第一个,现在Keil版本默认的编译器都是V6的。

这样就叫V6
OK,一般你现在配好环境编译以前的版本的文件,都是报错:
ADuCM355电化学interwetten与威廉的赔率体系 前端-Keli编译版,可以看这个文章下载安装。
但是注意这个就编译器的位置你要和V6的编译器平行安装:

就是在这个目录先建立一个文件夹,我名字叫ARMCC

在这里启用,就是给项目启用

最新的是这样的版本

然后在默认编译器的版本选择里面都是选带版本号的

如果没有错,应该是这样的,或是就多一个V6版本的名字

因为我这个开发板的demo以前是用这个CMSIS4.5写的,所以你就得下载这个。

先安装NRF家族的器件包

然后安装CMSIS的版本包
然后怎么启用呢?

这里,fixed的版本,都选中(我不知道有没有用,但是你最好和我一样)

然后编译,看见3个错误

指向这里
是一个管编译控制的文件
我就在想,应该是版本跨太多了,一些标记变化了。

事实上3个版本的CMSIS都是在这里的

虽然看上去上面启用了4.5的CMSIS,但是还是不生效,这里也没有被启用的选项。
就在写的功夫,发现这个CMSIS的版本可以选择了:

选择4.3,成功编译

事实上我刚刚不是这样成功的

我是把这个目录加到了编译头文件的位置

就是这样

现在是这样

这里写了一个STM32的小程序也是可以正常编译的

所有的编译显示在这里

这里就是显示了这个,但是我没有找到
一定编译器是找到了这个地址的头文件,编译成功。

看链接的头文件

看,4.5

剩下是这里


*.dep和*.d文件(Dependency file)记录的是工程或其它文件的依赖,主要记录了引用的头文件路径,其中*.dep是整个工程的依赖,它以工程名命名,而*.d是单个源文件的依赖,它们以对应的源文件名命名。
F (.main.c)(0x66236C9D)(-c --cpu Cortex-M0 -D__MICROLIB -g -O3 --apcs=interwork --split_sections ...)
这个是编译项目的命令,也就是rebuild之后发生了什么。

也是这样的命令

原来NRF51是M0内核

链接文件
为啥要下这么大辛苦搞这个呢?因为keil被ARM买了,编译器也相比于ARM GUN有着更好的编译性能。

可以这里切换
最重要的是,基于M3,M0的单片机太多了。51的内核太老了,不像样子。
搞这个也是熟悉别的单片机的开发,百利而无一害,毕竟嵌入式第一课永远是搭建环境。

感谢这个

-
蓝牙芯片
+关注
关注
17文章
376浏览量
46047 -
STM32
+关注
关注
2270文章
10900浏览量
356044 -
CMSIS
+关注
关注
0文章
40浏览量
11907
原文标题:Keil-V6版本加装V5编译器破解失效问题
文章出处:【微信号:TT1827652464,微信公众号:云深之无迹】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
PIC XC8 V1.41 编译器破解
keil自带的ARMCC V5和V6 和 GCC编译器 编译用时和目标文件的大小对比
V5协议,V5协议内容有哪些?
如何在Keil MDK中使用GCC编译器工具链
keil5 报错 Connection refused due to device mismatch! 的原因以及解决办法
使用ARMClang V6版本编译器出现错误的解决方法
使用V5版本经ARMCC编译放到V6时的一些错误

Keil-V6版本加装V5编译器破解失效问题简析
评论