ARM 之三 Keil uVision四、Keil uVision五、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 的项目文件是彼此独立的。那么从理论上来讲,二者是能够相互独立的!web

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,以下图
NewProjectssvg

  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 官网