单片机开发中除必要的硬件外,同样离不开软件,我们写的汇编语言源程序要变为CPU可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编,目前已极少使用手工汇编的方法了。机器汇编是通过汇编软件将源程序变为机器码,用于MCS-51 单片机的汇编软件有早期的A51,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil 软件是目前最流行开发MCS-51 系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil 即可看出。Keil 提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。运行Keil 软件需要Pentium 或以上的CPU,16MB或更多RAM、20M 以上空闲的硬盘空间、WIN98、NT、WIN2000、WINXP等操作系统。掌握这一软件的使用对于使用51 系列单片机的爱好者来说是十分必要的,如果你使用C 语言编程,那么Keil 几乎就是你的不二之选(目前在国内你只能买到该软件、而你买的仿真机也很可能只支持该软件),即使不使用C 语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。我们将通过一些实例来学习Keil 软件的使用,在这一部份我们将学习如何输入源程序,建立工程、对工程进行详细的设置,以及如何将源程序变为目标代码。图1 所示电路图使用89C51 单片机作为主芯片,这种单片机性属于MCS-51 系列,其内部有4K 的FLASH ROM,可以反复擦写,非常适于做实验。89C51 的P1 引脚上接8 个发光二极管,P3.2~P3.4 引脚上接4 个按钮开关,我们的第一个任务是让接在P1 引脚上的发光二极管依次循环点亮。 一、Keil 工程的建立首先启动Keil 软件的集成开发环境,这里假设读者已正确安装了该软件,可以从桌面上直接双击uVision 的图标以启动该软件。UVison启动后,程序窗口的左边有一个工程管理窗口,该窗口有3 个标签,分别是Files、Regs、和Books,这三个标签页分别显示当前项目的文件结构、CPU 的寄存器及部份特殊功能寄存器的值(调试时才出现)和所选CPU 的附加说明文件,如果是第一次启动Keil,那么这三个标签页全是空的。
上传时间: 2013-12-26
上传用户:liulinshan2010
I2C总线高频头控制程序(Keil C51程序 基于芯片TSA5522系列) /*I2C总线高频头控制Keil C51程序(PLL芯片为TSA5522系列) *///--------------------------------------------------------------------------//// 源程序大公开 //// (c) Copyright 2001-2003 xuwenjun //// All Rights Reserved //// V1.00 ////--------------------------------------------------------------------------////标 题: I2C总线高频头控制程序(PLL芯片为TSA5522系列) ////文件名: xwj_fi1256.c ////版 本: V1.00 ////修改人: 徐文军 E-mail:xuwenjun@21cn.com ////日 期: 06-02-26 首次公开 ////描 述: I2C总线高频头控制程序(PLL芯片为TSA5522系列) ////声 明: //// 以下代码仅免费提供给学习用途,但引用或修改后必须在文件中声明出处. //// 如用于商业用途请与作者联系. E-mail:xuwenjun@21cn.com //// 有问题请mailto xuwenjun@21cn.com 欢迎与我交流! ////--------------------------------------------------------------------------////老版本: 无 老版本文件名: ////创建人: 徐文军 E-mail:xuwenjun@21cn.com ////日 期: 06-02-26 ////描 述: ////--------------------------------------------------------------------------// /* 频率单位为KHz */#define FUENCY 38900 /* 中频频率 */#define PLLdataH(f) ((f+FUENCY)*16/1000/256) /* 频率数据高 第1字节*/#define PLLdataL(f) ((f+FUENCY)*16/1000%256) /* 频率数据低 第2字节*/#define PLLCON1 0x8e /* 控制字1 第3字节*/ /* 控制字2 第4字节*/#define PLLCON2(f) (((f)<(168000))?(0xa0):(((f)<(450000))?(0x90):(0x30)))#define PLLdata3(fchan) PLLdataH (fchan),PLLdataL (fchan),PLLCON2 (fchan)
上传时间: 2013-11-10
上传用户:nanfeicui
Keil Cx51 V7.0单片机高级语言编程与uVision2应用实践详细介绍了KeilCx51V7.机C语言编译器和全新Windows集成开发环境μVision2的强大功能和具体使用方法。全面介绍了最新版本Cx51编译器新增加的控制命令,给出了全部Cx51运行库函数及其应用范例,对KeilCx51软件包中各种应用工具,如BL51/Lx51连接定位器、A51/Ax51宏汇编器、LIB51库管理程序以及OH51符号转换程序等都作了详细介绍,还介绍了单片机实时多任务操作系统RTX51及其子集RTX51TINY的具体功能与应用方法。μVision2已经将调试器功能集成于其中,用户可以在单一环境下完成从源程序编写、编译、连接定位一直到目标文件的仿真调试等全部工作,书中详细介绍了μVision2各种功能和应用,包括软件模拟调试和硬件目标板实时在线仿真。第1章 851单片机与KeilCx51基础 1.1 851单片机的存储器组织结构 1.2 KeilCx51开发工具 1.3 Cx51简单编程与调试第2章 Cx51程序设计基础 2.1 标识符与关键字 2.2 Cx51程序设计的基本语法 2.2.1 数据类型 2.2.2 常量 2.2.3 变量及其存储模式 2.2.4 用typedef重新定义数据类型 2.2.5 运算符与表达式 2.3 Cx51程序的基本语句 2.3.1 表达式语句 2.3.2 复合语句 2.3.3 条件语句 2.3.4 开关语句 2.3.5 循环语句 2.3.6 返回语句第3章 函数 3.1 函数的定义; 3.2 函数的调用 3.2.1 函数的调用形式 3.2.2 对被调用函数的说明 3.2.3 函数的参数和函数的返回值 3.2.4 实际参数的传递方式 3.3 函数的递归调用与再入函数
上传时间: 2014-01-16
上传用户:edisonfather
keil RealView MDK
上传时间: 2013-10-07
上传用户:nshark
keil RealView MDK 4.23for ARM破解注册机及教程
上传时间: 2013-11-17
上传用户:paladin
这是一个为51系列单片机开发的4*4键盘驱动程序。该驱动程序包括2个文件,使用时将C文件关联入工程,在调用文件前包含H文件即可。本键盘驱动程序具有两个接口函数提供两种扫描方式(阻塞和非阻塞),可以任意定制返回键值,具有防抖动处理,具体使用方法可以参见注释。(本程序在Keil C51开发环境中测试成功,并经过多次实践应用)。
上传时间: 2013-12-24
上传用户:xuanchangri
这个例子如果运行,将在仿真的PC窗口中的第1,2,3行显示一些信息后,在随机位置显示 1 ~ 5 .由于keil c51默认不支持重入函数,它的重入函数使用仿真的重入栈而不使用系统栈,而Small RTOS 51没有进行重入栈管理,所以在TaskA~TaskE虽然及其相似,但不能合并. 注意:(1)在KEIL C51 工程中,我已经把输出文件目录设在e:\temp中,您可以在Project->Options for Target "Target 1"的output页点击Select Folder for Objects...和Listing页点击Select Folder for Listing...改变. (2)编译时会有5个警告,其中一个是因为没有使用一个系统函数OSSendSignal引起,它可以忽略.另4个是禁止任务间变量覆盖分析引起,必须忽略.感谢网友John X. Liu,在这个例子中我使用了他编写的仿真(dllPc51Emu.dll),这个dll原来是为他移植的Ucos-ii for keil c51的例子编写. (3)Pc51Emu.dll在KEIL C51 V6.23 V7.00工作不正常.
上传时间: 2015-05-29
上传用户:无聊来刷下
这是一个C51写的程序,采用Keil C51 编译开发.是16*2字符液晶屏驱动程序.硬件连线:DB0-->P0.0 DB1-->P0.1 DB2-->P0.2 DB3-->P0.3 DB4-->P0.4 DB5-->P0.5 DB6-->P0.6 DB7-->P0.7 RS-->P2.0 RW-->P2.1 E-->P2.7 VLCD接1K2的电阻到CND。
上传时间: 2013-12-29
上传用户:tb_6877751
51单片机4*4键盘识别,已通过Keil 8.2检查
上传时间: 2014-01-07
上传用户:maizezhen
51单片机控制产生4路标准舵机PWM(周期20ms,脉宽1~2ms,分辨率0.001ms)的代码,含有与PC的通讯功能,通讯严格握手,测试可靠。keil平台开发,包含串口通讯的指令定义和说明
上传时间: 2015-11-24
上传用户:1966640071