Keil C51是
美国Keil Software公司出品的51系列兼容
单片机C语言
软件开发系统。与汇编相比,
C语言在功能上、结构性、可读性、
可维护性上有明显的优势,因而易学易用。Keil提供了包括C
编译器、宏汇编、
链接器、库管理和一个功能强大的仿真
调试器等在内的完整开发方案,通过一个
集成开发环境(μVision)将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。如果你使用C语言编程,那么Keil几乎就是你的不二之选,即使不使用C语言而仅用
汇编语言编程,其方便易用的集成环境、强大的软件仿真
调试工具也会令你事半功倍。
公司简介
Keil公司是一家业界领先的
微控制器(
MCU)
软件开发工具的独立供应商。Keil公司由两家
私人公司联合运营,分别是德国
慕尼黑的Keil Elektronik GmbH和美国德克萨斯的Keil Software Inc。Keil公司制造和销售种类广泛的
开发工具,包括ANSI C
编译器、
宏汇编程序、
调试器、连接器、库管理器、固件和
实时操作系统核心(real-time kernel)。有超过10万名微控制器开发人员在使用这种得到业界认可的解决方案。其Keil C51编译器自1988年引入市场以来成为事实上的
行业标准,并支持超过500种8051变种。
与ARM
Keil公司2005年由ARM公司收购。其两家公司分别更名为ARM Germany GmbH和ARM Inc。Keil公司
首席执行官Reinhard Keil表示:“作为ARM Connected Community中的一员,Keil和
ARM保持着长期的良好关系。通过这次收购,我们将能更好地向高速发展的32位微控制器
市场提供完整的解决方案,同时继续在μVision环境下支持我们的8051和C16x编译器。”
而后ARM Keil推出基于μVision界面,用于调试ARM7,ARM9,
Cortex-M内核的MDK-ARM开发工具,用于微控制领域的开发。
界面
Keil μVision2
KeilμVision2是美国Keil Software公司出品的51系列兼容单片机C语言
软件开发系统,使用接近于传统
C语言的语法来开发,与汇编相比,C语言易学易用,而且大大的提高了
工作效率和
项目开发周期,他还能嵌入汇编,您可以在关键的位置嵌入,使程序达到接近于汇编的工作效率。Keil
C51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保留了汇编代码高效,快速的特点。C51编译器的功能不断增强,使你可以更加贴近
CPU本身,及其它的
衍生产品。C51已被完全集成到μVision2的集成
开发环境中,这个
集成开发环境包含:编译器,
汇编器,
实时操作系统,
项目管理器,调试器。μVision2
IDE可为它们提供单一而灵活的开发环境。
Keil μVision3
2006年1月30日
ARM推出全新的针对各种
嵌入式处理器的
软件开发工具,集成Keil μVision3的RealView MDK开发环境。RealView MDK开发工具Keil μVision3源自Keil公司。RealView MDK集成了业内领先的技术,包括Keil μVision3
集成开发环境与RealView
编译器。支持ARM7、
ARM9和最新的
Cortex-M3核处理器,自动配置启动代码,集成
Flash烧写模块,强大的Simulation设备
模拟,
性能分析等功能,与ARM之前的
工具包ADS等相比,RealView编译器的最新版本可将性能改善超过20%。
Keil μVision4
2009年2月发布Keil μVision4,Keil μVision4引入灵活的窗口
管理系统,使开发人员能够使用多台
监视器,并提供了视觉上的表面对窗口位置的完全控制的任何地方。新的
用户界面可以更好地利用屏幕空间和更有效地组织多个窗口,提供一个整洁,高效的环境来开发
应用程序。新版本支持更多最新的
ARM芯片,还添加了一些其他新功能。
2011年3月ARM公司发布最新集成开发环境RealView MDK开发工具中集成了最新版本的Keil μVision4,其
编译器、
调试工具实现与ARM器件的最完美匹配。
Keil μVision5
2013年10月,Keil正式发布了Keil μVision5 IDE。
Keil中国
Keil 官网虽然没有发布中文版本,但是Keil 系列软件却被中国80%以上的软
硬件工程师使用,但凡与电子相关的专业,都会开始从
单片机和计算机编程开始学习,而学习单片机自然会用到Keil 软件。国内由亿道电子提供Keil 的销售和
技术支持服务,他们是ARM公司合作伙伴,也是国内领先的嵌入式解决方案提供商。
基础
Keil C51开发系统基本知识
⒈系统概述
Keil C51软件提供丰富的
库函数和功能强大的集成开发调试工具,全
Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil的优势。下面详细介绍Keil C51开发系统各部分功能和使用。
C51工具包的整体结构,μVision与Ishell分别是C51 for Windows 和for Dos 的
集成开发环境(DE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE本身或其它编辑器编辑C或汇编
源文件。然后分别由C51及C51
编译器编译生成
目标文件(.obj)。目标文件可由LIB51 创建生成
库文件,也可以与库文件一起经L51 连接定位生成绝对目标文件(.abs)。abs文件由OH51 转换成标准的hex 文件,以供调试器dScope51 或tScope51 使用进行
源代码级调试,也可由
仿真器使用直接对
目标板进行调试,也可以直接写入程序
存贮器如
EPROM中。
使用独立的Keil仿真器时,注意事项
*仿真器标配11.0592MHz的
晶振,但用户可以在仿真器上的晶振插孔中换插其他频率的晶振。
*仿真器上的复位按钮只复位仿真芯片,不复位目标系统。
* 仿真芯片的31脚(/EA)已接至高
电平,所以仿真时只能使用片内
ROM,不能使用片外ROM;但仿真器外引
插针中的31脚并不与仿真芯片的31脚相连,故该仿真器仍可插入到扩展有外部ROM(其CPU的/EA引脚接至
低电平)的目标系统中使用。
优点
⒈Keil C51生成的
目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现
高级语言的优势。
⒉与汇编相比,C语言在功能上、结构性、可读性、
可维护性上有明显的优势,因而易学易用。用过
汇编语言后再使用C来开发,体会更加深刻。
教程
为了让初学者更好地入门,笔者利用Keil 提供的AGSI
接口开发了两块
仿真实验板。这两块仿真板将枯燥无味的数字用形象的图形表达出来,可以使初学者在没有硬件时就能感受到真实的
学习环境,降低
单片机的入门门槛。图1 是键盘、
LED 显示实验仿真板的图,
从图中可以看出,该板比较简单,有在P1 口接有8 个发光二管,在P3 口接有4 个按钮,图1 的右边给出了
原理图。
图 2 是另一个较为复杂的实验仿真板。在该板上有8 个
数码管,16 个按键(接成4×4 的矩阵式),另外还有P1 口接的8 个
发光管,两个
外部中断按钮,一个带有
计数器的
脉冲发生器等资源,显然,这块板可以完成更多的实验。
一、实验仿真板的安装
这两块
仿真实验板实际上是两个dll 文件,名称分别是ledkey
.dll 和simboard.dll,安装时只要根据需要将这两个或某一个文件拷贝到Keil 软件的C51in 文件夹中即可。
二、实验仿真板的使用
要使用仿真板,必须对工程进行设置,设置的方法是点击Project→Option for Target ‘Target1’打开对话框,然后选中Debug 标签页,在Dialog :Parameter:后的编缉框中输入-d 文件名。例如要用ledkey.dll(即第一块仿真板)进行调试,就输入-dledkey,如图3所示,输入完毕后点击确定退出。编译、连接完成后按CTRL+F5 进入调试,此时,点击菜单Peripherals,即会多出一项“键盘LED 仿真板(K)”,选中该项,即会出现如图1 的界面,同样,在设置时如果输入-dsimboard 则能够调出如图2 的界面。
第一块仿真板的硬件电路很简单,
电路图已在板上,第二块板实现的功能稍复杂,其键盘和数码
显示管部分的电路原理图如图4 所示。下表给出了常用
字形码,读者也可以根据图中的接线自行写出其它如A、B、C、D、E、F 等的字形码。除了键盘和数码管以外,P1 口同样也接有8 个
发光二极管,
连接方式与图1 相同;键盘旁的两个按钮INT0和INT1分别接到P3口的INT0和INT1即P3.2和P3.3引脚,
脉冲发生器是接入T0即P3.4引脚。
三、实例调试
以下以一个稍复杂的程序为例,说明键盘、LED 显示实验仿真板的使用。该程序实现的是可控流水灯,接P3.2 的键为开始键,按此键则灯开始流动(由上而下),接P3.3 的键为停止键,按此键则停止流动,所有灯暗,接P3.4 的键为向上键,按此键则灯由上向下流动,接P3.6的键为向下键,按此键则灯由下向上流动。