ARM 之 Keil uVision4、Keil uVision5、Keil C51同一系統下的共存

問題

  因學習的需要,電腦會同時安裝MDK-ARM v4.x(Keil uVision4) 、 MDK-ARM v5.x(Keil uVision5)、C51(Keil uVision5)。但是由於 Keil uVision5 是直接由 Keil uVision4 升級而來,ARM公司在升級上不知道到咋考慮的(Keil 5 文件名竟然還是Keil 4),如果同時安裝時,後安裝的Keil版本會把之前安裝的Keil版本的文件關聯給覆蓋掉。 這就導致了不同版本的項目無法通過雙擊使用正確的 Keil 版本打開。
  在之前的文章ARM 之 Keil 項目/生成的各種文件類型(.AXF、.D、.crf)說明中已經說過,Keil uVision4 與 Keil uVision5 的項目文件是彼此獨立的。那麼從理論上來說,兩者是可以相互獨立的!

C51 和 MDK-ARM

  由於目前最新版 C51 和 MDK-ARM v5.x 均使用了 Keil uVision5 作爲IDE。在安裝時這倆的默認路徑是一樣的(C://Keil_v5),ARM公司在這方面應該是已經考慮到共存問題,直接安裝在同一目錄下即可共存。
MDK_C51
  兩部分是相互獨立目錄,共同使用UV4(Keil uVision5中文件名沒有改名)。那麼兩者具體如何區分呢?其實就是通過目錄下的 TOOLS.ini 來加載各部分的配置的。
TOOLS.INI
  當然,也可以將兩者分別安裝到不同的目錄下,然後將兩部分的TOOLS.ini進行合併。具體這裏就不多說了。
  以上處理過後,在建立項目時,可以直接選擇使用C51還是MDK,如下圖
NewProjects

  1. 由於環境原因,未測試 兩者均爲舊版本(Keil uVision4)時的兼容情況!理論上來說也是直接安裝在同一目錄即可。
  2. 如果先安裝C51再安裝MDK的情況未測試。

Keil uVision4 和 Keil uVision5

  兩者的共存問題主要通過修改註冊表來實現。具體鍵值的位置\HKEY_CLASSES_ROOT\UVPROJFILE見下圖即可
Keil註冊表
按照上圖的註釋,將對應版本的Keil關聯文件修改爲自己的目錄位置就可以了。注意的是,修改完後需要重新纔會有效果
關聯
注意:需要重啓纔會刷新圖標

  1. 以上情況針對先安裝了Keil uVision4 後安裝 Keil uVision5。如果安裝順序倒過來是否會出現問題,暫未測試!但是處理方法是一致的。
  2. 初次安裝後有可能遇到沒有有效關聯啓動程序,及時重啓也無效。這似乎是Windows的bug。這時直接雙擊項目文件,Windows會出現選擇打開的程序界面,並且推薦就是Keil,選擇一下就正常了!

參考

  • Keil 官網
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章