zoukankan      html  css  js  c++  java
  • 【转】Keil、uVision、RealView、MDK、Keil C51之间的区别比较

    【转】Keil、uVision、RealView、MDK、Keil C51之间的区别比较

    我们要区别的概念:KEIL uVision,KEIL MDK,KEIL For ARM,RealView MDK,KEIL C51,KEIL C166,KEIL C251

    从接触MCS-51单片机开始,我们就知道有一个叫KEIL的软件。在开发单片机时,使用的是C语言或者汇编语言,我们知道,这两种语言都不能直接烧写到单片机里面,执不执行暂且不说,光是代码的体积,就足以撑破整个单片机。

    所以,我们需要一个软件,把C语言或者汇编语言编译生成单片机可执行的二进制代码,而且它的体积也非常的小,足够存放在单片机的存储器里面。KEIL公司(现在是ARM公司的一个公司)的软件恰好可以提供这样的功能,并且它还有很多优点,比如工程易于管理,自动加载启动代码,集编辑、编译、仿真一体,调试功能强大等等。因此,不管是初学单片机的爱好者,还是经验丰富的工程师,都非常喜欢使用这些软件。

    但是,即使熟练使用了KEIL软件,有些概念我们还是不容易理清,常常混淆。KEIL、uVision、RealView、MDK、KEIL C51,它们到底有什么区别,又有什么联系?下面我们就做一个详细的分析。

    KEIL是公司的名称,有时候也指KEIL公司的所有软件开发工具,目前2005年Keil由ARM公司收购,成为ARM的公司之一。

    uVision是KEIL公司开发的一个集成开发环境(IDE),和Eclipse类似。它包括工程管理,源代码编辑,编译设uVision置,下载调试和模拟仿真等功能,uVision有uVision2、uVision3、uVision4、uVision5四个版本,目前最新的版本是uVision5。它提供一个环境,让开发者易于操作,并不提供能具体的编译和下载功能,需要软件开发者添加。uVisionu通用于KEIL的开发工具中,例如MDK,PK51,PK166,DK251等。

    RealView是一系列开发工具集合的称呼,简称RV,包括有RVD(RealView Debugger),RVI(RealView ICE),RVT(RealView Trace),RVDS(RealView Development Suite),RV MDK(RealView Microcontroller Development Kit)这些产品。这些都是为了让客户容易记住,采取的一个宣传策略。

    RealView 品牌

    举个例子说,米尔科技是一家主营优质ARM工控板的企业,其产品系列由工控板(开发板)、单板机和核心板组成,虽然本来可以都叫工控板,但是为了让客户清晰了解产品的功能,进行选型,所以就分为3个系列。不过2009年ARM又宣布停止使用Realview品牌,所以目前ARM就剩下了ARM和KEIL两个品牌了。

    MDK(Microcontroller Development Kit),也称MDK-ARM、KEIL MDK、RealView MDK、KEIL For ARM,都是同一个东西。ARM公司现在统一使用MDK-ARM的称呼,MDK的设备数据库中有很多厂商的芯片,是专为微控制器开发的工具,为满足基于MCU进行嵌入式软件开发的工程师需求而设计,支持ARM7,ARM9,Cortex-M4/M3/M1,Cortex-R0/R3/R4等ARM微控制器内核。

    Keil MDK

    KEIL C51,亦即PK51,KEIL公司开发的基于uVision IDE,支持绝大部分8051内核的微控制器开发工具。

    KEIL C166,亦即PK166,KEIL公司开发的基于uVision IDE,支持绝大部分XC16x,C16x和ST10系列的微控制器开发工具。

    KEIL C251,亦即DK251,是KEIL公司开发的基于uVision IDE,支持绝大部分基于251核的微控制器的开发工具。

    总结来说,KEIL公司目前有四款独立的嵌入式软件开发工具,即MDK、KEIL C51、KEIL C166、KEIL C251,它们都是KEIL公司品牌下的产品,都基于uVision集成开发环境,其中MDK是RealView系列中的一员。

    本文来自米尔科技,原文地址: http://www.myir-tech.com/resource/512.asp,转载请注明出处。

  • 相关阅读:
    HttpClient调用RestFul接口(post和get方式)
    mysql权限异常
    javascript:用法
    Java哈希值HashCode理解
    Java的CountDownLatch和CyclicBarrier的理解和区别
    Java并发编程与技术内幕:ThreadGroup线程组应用
    面试官: 谈谈什么是守护线程以及作用 ?
    java 成员变量 静态成员变量 方法 静态方法初始化顺序
    【java并发核心一】Semaphore 的使用思路
    threadlocal原理及常用应用场景
  • 原文地址:https://www.cnblogs.com/lpp2jwz/p/7364002.html
Copyright © 2011-2022 走看看