配環(huán)境什么的最想死了,真的很想死。
因為最近給NRF的藍牙芯片寫東西,用了Keil,開發(fā)板是以前朋友的。遇到了不少問題。
先解決第一個,現在Keil版本默認的編譯器都是V6的。
這樣就叫V6
OK,一般你現在配好環(huán)境編譯以前的版本的文件,都是報錯:
ADuCM355電化學模擬前端-Keli編譯版,可以看這個文章下載安裝。
但是注意這個就編譯器的位置你要和V6的編譯器平行安裝:
就是在這個目錄先建立一個文件夾,我名字叫ARMCC
在這里啟用,就是給項目啟用
最新的是這樣的版本
然后在默認編譯器的版本選擇里面都是選帶版本號的
如果沒有錯,應該是這樣的,或是就多一個V6版本的名字
因為我這個開發(fā)板的demo以前是用這個CMSIS4.5寫的,所以你就得下載這個。
先安裝NRF家族的器件包
然后安裝CMSIS的版本包
然后怎么啟用呢?
這里,fixed的版本,都選中(我不知道有沒有用,但是你最好和我一樣)
然后編譯,看見3個錯誤
指向這里
是一個管編譯控制的文件
我就在想,應該是版本跨太多了,一些標記變化了。
事實上3個版本的CMSIS都是在這里的
雖然看上去上面啟用了4.5的CMSIS,但是還是不生效,這里也沒有被啟用的選項。
就在寫的功夫,發(fā)現這個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之后發(fā)生了什么。
也是這樣的命令
原來NRF51是M0內核
鏈接文件
為啥要下這么大辛苦搞這個呢?因為keil被ARM買了,編譯器也相比于ARM GUN有著更好的編譯性能。
可以這里切換
最重要的是,基于M3,M0的單片機太多了。51的內核太老了,不像樣子。
搞這個也是熟悉別的單片機的開發(fā),百利而無一害,畢竟嵌入式第一課永遠是搭建環(huán)境。
感謝這個
-
藍牙芯片
+關注
關注
17文章
376瀏覽量
46046 -
STM32
+關注
關注
2270文章
10900瀏覽量
356008 -
CMSIS
+關注
關注
0文章
40瀏覽量
11904
原文標題:Keil-V6版本加裝V5編譯器破解失效問題
文章出處:【微信號:TT1827652464,微信公眾號:云深之無跡】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論