Keil C51使用详解Keil C51 是美国Keil Software 公司出品的51 系列兼容单片机C 语言软件开发系统,与汇编相比,C 语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。用过汇编语言后再使用C 来开发,体会更加深刻。Keil C51 软件提供丰富的库函数和功能强大的集成开发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。下面详细介绍 Keil C51 开发系统各部分功能和使用。第二节 Keil C51 单片机软件开发系统的整体结构C51 工具包的整体结构,如图(1)所示,其中uVision 与Ishell 分别是C51 forWindows 和for Dos 的集成开发环境(IDE),可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE 本身或其它编辑器编辑C 或汇编源文件。然后分别由C51 及A51 编译器编译生成目标文件(.OBJ)。目标文件可由LIB51 创建生成库文件,也可以与库文件一起经L51 连接定位生成绝对目标文件(.ABS)。ABS 文件由OH51 转换成标准的Hex 文件,以供调试器dScope51 或tScope51 使用进行源代码级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如EPROM 中。图(1) C51 工具包整体结构图第三节 Keil C51 工具包的安装81. C51 for Dos在 Windows 下直接运行软件包中DOS\C51DOS.exe 然后选择安装目录即可。完毕后欲使系统正常工作须进行以下操作(设C:\C51 为安装目录):修改 Autoexec.bat,加入path=C:\C51\BinSet C51LIB=C:\C51\LIBSet C51INC=C:\C51\INC然后运行Autoexec.bat2. C51 for Windows 的安装及注意事项:在 Windows 下运行软件包中WIN\Setup.exe,最好选择安装目录与C51 for Dos相同,这样设置最简单(设安装于C:\C51 目录下)。然后将软件包中crack 目录中的文件拷入C:\C51\Bin 目录下。第四节 Keil C51 工具包各部分功能及使用简介1. C51 与A51(1) C51C51 是C 语言编译器,其使用方法为:C51 sourcefile[编译控制指令]或者 C51 @ commandfile其中 sourcefile 为C 源文件(.C)。大量的编译控制指令完成C51 编译器的全部功能。包控C51 输出文件C.LST,.OBJ,.I 和.SRC 文件的控制。源文件(.C)的控制等,详见第五部分的具体介绍。而 Commandfile 为一个连接控制文件其内容包括:.C 源文件及各编译控制指令,它没有固定的名字,开发人员可根据自己的习惯指定,它适于用控制指令较多的场合。(2) A51A51 是汇编语言编译器,使用方法为:9A51 sourcefile[编译控制指令]或 A51 @ commandfile其中sourcefile 为汇编源文件(.asm或.a51),而编译控制指令的使用与其它汇编如ASM语言类似,可参考其他汇编语言材料。Commandfile 同C51 中的Commandfile 类似,它使A51 使用和修改方便。2. L51 和BL51(1) L51L51 是Keil C51 软件包提供的连接/定位器,其功能是将编译生成的OBJ 文件与库文件连接定位生成绝对目标文件(.ABS),其使用方法为:L51 目标文件列表[库文件列表] [to outputfile] [连接控制指令]或 L51 @Commandfile源程序的多个模块分别经 C51 与A51 编译后生成多个OBJ 文件,连接时,这些文件全列于目标文件列表中,作为输入文件,如果还需与库文件(.LiB)相连接,则库文件也必须列在其后。outputfile 为输文件名,缺少时为第一模块名,后缀为.ABS。连接控制指令提供了连接定位时的所有控制功能。Commandfile 为连接控制文件,其具体内容是包括了目标文件列表,库文件列表及输出文件、连接控制命令,以取代第一种繁琐的格式,由于目标模块库文件大多不止1 个,因而第2 种方法较多见,这个文件名字也可由使用者随意指定。(2) Bl51BL51 也是C51 软件包的连接/定位器,其具有L51 的所有功能,此外它还具有以下3 点特别之处:a. 可以连接定位大于64kBytes 的程序。b. 具有代码域及域切换功能(CodeBanking & Bank Switching)c. 可用于RTX51 操作系统RTX51 是一个实时多任务操作系统,它改变了传统的编程模式,甚至不必用main( )函数,单片机系统软件向RTOS 发展是一种趋势,这种趋势对于186 和38610及68K 系列CPU 更为明显和必须,对8051 因CPU 较为简单,程序结构等都不太复杂,RTX51 作用显得不太突出,其专业版软件PK51 软件包甚至不包括RTX51Full,而只有一个RTX51TINY 版本的RTOS。RTX51 TINY 适用于无外部RAM 的单片机系统,因而可用面很窄,在本文中不作介绍。Bank switching 技术因使用很少也不作介绍。3. DScope51,Tscope51 及Monitor51(1) dScope51dScope51 是一个源级调试器和模拟器,它可以调试由C51 编译器、A51 汇编器、PL/M-51 编译器及ASM-51 汇编器产生的程序。它不需目标板(for windows 也可通过mon51 接目标板),只能进行软件模拟,但其功能强大,可模拟CPU 及其外围器件,如内部串口,外部I/O 及定时器等,能对嵌入式软件功能进行有效测试。
上传时间: 2013-11-01
上传用户:zhouxuepeng1
EDA9060开关量I/O 模块在电气控制柜中的典型应用—— EDA9060结合交流接触器实现远程控制EDA9060开关量I/O模块是山东力创科技自主研发的一款分布式DI/DO工控模块,主要功能特点:◎4路开关量输入,4路继电器输出。继电器两组常开2触点,两组常开常闭3触点。输出触点容量为8A 125VAC(5A 250VAC5A30VDC),由于触点容量较大,可以直接用在很多的常见电气控制电路中。输出有两种方式,一种电平式,一种脉冲式,可以灵活配置。◎标准的RS485接口,方便组网,结合GPRS DTU无线模块可以实现无线远程控制功能。◎灵活的协议,兼容研华协议,支持标准MODBUS RTU协议,方便上位机的系统组建。EDA9060在电气控制柜中有着广泛的应用,通过增加EDA9060远程控制线路,改变了原来必须依靠人工到现场启停电气线路的状况,实现无人值守,节省资源。线路改造主要通过EDA9060的继电器输出控制交流接触器,从而实现远程控制现场用电设备(如常见的工业泵)的启停。同时增加一个转换开关,将手动控制线路和EDA9060远程控制线路隔离开,以保证现场操作优先的要求,同时增强操作的可靠性。下面以交流接触器控制线路在220V电压等级以内的常见控制电路为例,简要说明其控制过程,线路容量大的情况只需要通过增加合适容量的中间继电器,扩大EDA9060的触点容量即可解决,示意图:
上传时间: 2013-11-15
上传用户:robter
本文介绍一种基于AT89C51单片机的超声波测距系统,阐述了超声测距系统的构成、工作原理,给出了硬件电路框图和软件编程的设计方法。该系统具有硬件结构简单、工作可靠、测量误差小等特点。
上传时间: 2013-10-29
上传用户:m62383408
单片机I/O口的使用:对单片机的控制,其实就是对I/O口的控制,无论单片机对外界进行何种控制,亦或接受外部的控制,都是通过I/O口进行的。单片机总共有P0、P1、P2、P3四个8位双向输入输出端口,每个端口都有锁存器、输出驱动器和输入缓冲器。4个I/O端口都能作输入输出口用,其中P0和P2通常用于对外部存储器的访问。§4.1 MCS-51单片机的并行端口结构与操作 51系列单片机有4个I/O端口,每个端口都是8位准双向口,共占32根引脚。每个端口都包括一个锁存器(即专用寄存器P0~P3)、一个输出驱动器和输入缓冲器。通常把4个端口笼统地表示为P0~P3。
标签: 单片机
上传时间: 2013-11-06
上传用户:zhouxuepeng1
基于 I2C 总线的GPIO 扩展器件为主控器提供了额外的I/O 口,本文介绍了扩展器件的应用场合和选型指南,为设计者在设计中提供了参考。
上传时间: 2013-11-11
上传用户:llwap
The CAT9555 is a CMOS device that provides 16-bitparallel input/output port expansion for I²C and SMBuscompatible applications. These I/O expanders providea simple solution in applications where additional I/Osare needed: sensors, power switches, LEDs,pushbuttons, and fans.
上传时间: 2014-01-09
上传用户:1101055045
关键词 I/O 口扩展芯片、I2C、SMBus摘要CAT9554A 是一款将I2C/SMBus 接口扩展成8 位并行输入/输出I/O 口的器件
上传时间: 2013-12-27
上传用户:txfyddz
MCS-51单片机的系统扩展技术:在MCS-51单片机的的内部虽已集成了很多资源,但这类单片机属于一种“通用”的单片机,单片机内部的各种资源都是折衷配置的,如片内程序存储器、数据存储器的容量都不大,并行I/O端口的数量也不很多,此外,在有些应用中,片内定时器、中断、串行口等也显得不足,还有一些功能是基本型MCS-51单片机所没有的,比如A/D转换,D/A转换等等。实际应用中的要求是各种各样的,如果用到了MCS-51单片机内部所没有资源(如A/D,D/A等),或者单片机内部虽有,但却不够使用的资源,就要根据需要,对单片机进行扩展,以增加所需要的功能。MCS-51单片机所可能需要扩展的芯片种类非常多,但这里并不面面俱到,主要是通过对外扩程序存储器、数据存储器、I/O接口、A/D和D/A的介绍,使读者熟悉单片机接口的一般方法。实际上,如果对于这些常规的扩展芯片能够熟练地掌握和应用,并能理解其扩展的原理,拿到任何一块需要扩展的芯片,只要有这块芯片的数据手册或接口时序之类的资料,就能自行设计芯片的接口电路部份。1. MCS-51单片机扩展的原理MCS-51单片机被设计成具有通用计算机那样的外部总线结构,所以用MCS-51单片机进行扩展很方便,下面首先了解片外总线的工作原理。
上传时间: 2014-04-28
上传用户:古谷仁美
数字I/O脚有专用和复用。数字I/O脚的功能通过9个16位控制寄存器来控制。控制寄存器分为两类:(1)I/O复用控制寄存器(MCRX),来选择I/O脚是外设功能还是I/O功能。(2)数据方向控制寄存器(PXDATDIR):控制双向I/O脚的数据和数据方向。注意:数字I/O脚是通过映射在数据空间的控制寄存器来控制的,与器件的I/O空间无任何关系。240X/240XA多达41只数字I/O脚,多数具有复用功能。
标签: 数字
上传时间: 2013-10-31
上传用户:qimingxing130
Keil C51使用详解:8051 系列微处理器基于简化的嵌入式控制系统结构被广泛应用于从军事到自动控制再到PC 机上的键盘上的各种应用系统上仅次于Motorola 68HC11 在 8 位微控制器市场上的销量很多制造商都可提供8051 系列单片机像Intel Philips Siemens 等这些制造商给51 系列单片机加入了大量的性能和外部功能像I2C 总线接口模拟量到数字量的转换看门狗PWM 输出等不少芯片的工作频率达到40M 工作电压下降到1.5V 基于一个内核的这些功能使得8051 单片机很适合作为厂家产品的基本构架它能够运行各种程序而且开发者只需要学习这一个平台8051 系列的基本结构如下1 一个8 位算术逻辑单元2 32 个I/O 口4 组8 位端口可单独寻址3 两个16 位定时计数器4 全双工串行通信5 6 个中断源两个中断优先级6 128 字节内置RAM7 独立的64K 字节可寻址数据和代码区每个8051 处理周期包括12 个振荡周期每12 个振荡周期用来完成一项操作如取指令和计算指令执行时间可把时钟频率除以12 取倒数然后指令执行所须的周期数因此如果你的系统时钟是11.059MHz 除以12 后就得到了每秒执行的指令个数为921583
上传时间: 2014-04-05
上传用户:xaijhqx