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
单片机C51编程规范 本标准规定了程序设计人员进行程序设计时必须遵循的规范。本规范主要针对C51编程语言和keil编译器而言,包括排版、注释、命名、变量使用、代码可测性、程序效率、质量保证等内容。
上传时间: 2014-12-28
上传用户:DE2542
水位监测报警系统(电子设计竞赛题目):本系统以数字电路与模拟电路结合组成,通过主控电路把模拟信号转化为数字信号,然后把数字信号传输给各个部分分别处理后进行显示与警报。该系统设计新颖、简易,灵敏度高,工作稳定,能够自动检测与显示当前水位、高低水位报警等功能。 关键字:水位报警系统 数字模拟电路 编码译码驱动本系统是以双向模拟开关CD4066芯片为主导,辅以编码驱动、译码驱动等等一系列COMS芯片组成主控电路。在这里我们选用的编码驱动跟译码驱动分别是74LS147和4511BD,门电路芯片有非门74LS04,与非门4011。 该电路具有兼顾多种功能的特点,其能给出高低水位声光提示、能显示当前水位的高度等。并且该电路工作稳定性强,效率高,具有可动性,在现实生活中也能够得到灵活运用,例如在水库,家庭水塔等方面都可以应用。在设计本电路过程中,我们主要往生活实用的方向来设计,该电路结构简易,避免引入多种集成复杂电路模块,使人一看就不会觉得复杂难懂而感到头痛。
上传时间: 2013-11-23
上传用户:15071087253
多功能高集成外围器件6. 1 多功能高集成外围器件82371PCI的英文名称:Peripheral Component Interconnect (外围部件互联PCI总线);82371是PCI总线组件。ISA是:Industry Standard Architecture(工业标准体系结构)IDE是 (Integrated Device Electronics)集成电路设备简称PIIX4PIIX4器件(芯片)的特点1、是一种支持Pentium和PentiumII微处理器的部件。2、82371对ISA桥来说,是一种多功能PCI总线。3、对可移动性和桌面深绿色环境均提供支持。4、电源管理逻辑。5、被集成化的IDE控制器。6、增强了性能的DMA控制器。(7)基于两个82C59的中断控制器。(8)基于82C54芯片的定时器。(9)USB(Universal Serial Bus)通用串行总线。(10)SMBus系统管理总线。(11)实时时钟(12)顺应Microsoft Win95所需的功能其芯片的逻辑框图如图6-1所示。 PIIX4芯片逻辑框图6.1.1 概述PIIX4芯片是一个多功能的PCI器件,图6-2 是82371在系统中扮演的角色。(续上图)1. PCI与EIO之间的桥(PIIX4芯片)桥是不对程的,是各类不同标准总线与PCI总线连接,82371AB桥也可理解为一种总线转换译码器和控制器,桥内包含复杂的协议总线信号和缓冲器。(1).在PCI系统内,当PIIX4操作时,它总是作为系统内各种模块的主控设备,如USB和DMA控制器、IDE总线和分布式DMA的主控设备等,而且总是以ISA主控设备的名义出现。(2). 在向ISA总线或IDE总线进行传送操作的传送周期期间作为从属设备使用,并对内部寄存器译码。PIIX4芯片(桥)的配置(1).可以把PIIX4芯片配置成整个ISA总线,或ISA总线的子集,也可扩展成EIO总线。在使用EIO总线时,可以把未使用的信号配置成通用的输入和输出。(2).PIIX4可直接驱动5个ISA插槽;(3).能提供字节-交换逻辑、I/O的恢复支持、等待状态的生成以及SYSCLK的生成。(4).提供X-BUS键盘控制器芯片、BIOS芯片、实时时钟芯片、二级微程序器等的选择。2. IDE接口(总线主控设备的权利和同步DMA方式)IDE接口为4个IDE的设备提供支持,比如IDE接口的硬盘和CD-ROM等。注意:目前硬盘接口有5类:IDE、SCSI、Fibre Channel、IEEE1394和USB等。IDE口几乎在PC机最多,因为便宜。SCSI多用于服务器和集群机。IDE的PIO IDE速率:14MB/s;而总线主控设备IDE的速率:33MB/s在PIIX4芯片的IDE系统内,配有两个各次独立的IDE信号通道。3. 具有兼容性的模块—DMA、定时器/计数器、中断控制器等(1)在PIIX4内的两各82C37 DMA控制器经逻辑的组合,产生7个独立的可编程通道。通道[0:3]是通过与8个二进位的硬件连线实现的。通过以字节为单位的计数进行传送。而通道[5:7]是通过16个二进位的连线实现的,以字为单位的计数进行传送。(2)DMA控制器还能通过PCI总线,处理旧的DMA的两个不同的方法提供支持。(3)计数/定时器模块在功能上与82C54等价。(4)中断控制器与ISA兼容,其功能是两个82C59的功能之和。
上传时间: 2013-11-19
上传用户:3到15
摘要:设计并实现了一个USB/EPP 转接系统,给出其硬件设计方案并讨论了相关技术细节, 使其实现USB 接口到EPP接口的相互数据转发。使仅具有EPP 接口的传统仪器设备借助于USB/EPP 转接系统拥有USB 总线所提供的即插即用和设备插架特性, 方便其通过USB 接口灵活接入同时拥有多个外设的计算机主机系统。关键词:USB;EPP;转接系统中图分类号:TP368.3 文献标识码:A文章编号:1008- 0570(2005)11- 2- 0166- 03 在传统的I/O 模式中,计算机外设通常映射为CPU 中固定I/O 地址,要求由主机分配一个指定的IRQ 中断请求。由于PC 机的端口和中断资源有限,因而使外设的可扩展性受到局限;同时,随着电脑应用的拓展,PC 机的外设接口越来越多,外设对系统资源的独占性也容易导致系统资源冲突。由于各种外部设备不断增加,容易导致各种I/O 冲突。由Intel、Compaq、Microsoft、IBM等厂商所提出的USB 总线标准,基于即插即用和设备插架技术,设备接入时不影响应用程序的运行,具有良好的可扩充性和扩展的方便性。目前USB 协议已经发展到了最新的2.0 版本,可支持峰值传输速率为480Mbps 的高速外设,可提供4~8 个USB 2.0 接口,同时通过USB 集线器(HUB)的扩展还可以支持多达127 个外设同时连接,基本上解决了各种外设同时存在同时使用的所有问题。基于USB 接口的上述优点,目前的计算机,特别是笔记本计算机基本上都只配备USB 接口,而取消了传统的串口和并口,这对那些以前购置的需要与计算机进行通信而只有串口或并口的各种仪器的继续使用造成了极大的障碍。 针对传统的数字化仪器与计算机通信中存在的接口不足的问题,本文设计了一个USB/EPP 转接系统,使其能够从计算机的USB 接口接收数据,经过格式转换,从USB/EPP 转接系统的并行接口EPP 发送给传统的仪器设备;同时也能够从USB/EPP 转接系统的并行接口EPP 接收数据,将其转化为USB 帧格式,并发送到计算机的USB 接口。从而使仅具有EPP 接口的传统仪器设备借助于USB/EPP 转接系统,可以继续正常使用。2 USB 总线2.1 USB 系统描述及总线协议USB 是一种电缆总线,支持在主机和各种即插即用外设之间进行数据传输。由主机预定的标准协议使各种设备分享USB 带宽,当其它设备和主机在运行时,总线允许添加、设置、使用以及拆除外设,这为多个仪器设备共享同一个主计算机提供了可能。USB 协议采用了管道模型的软硬件协议,摒弃了一般外设协议的端口映射方式,从而有效地避免了计算机应用系统I/O 端口地址冲突。根据功能划分,一个USB 系统由三个部分组成:即USB 互连、USB 主机和USB 设备。图1 给出了USB系统的通用拓扑结构。
上传时间: 2013-10-09
上传用户:半熟1994
针对传统的Max-Log-Map译码算法时效性差、存储空间开销大的特点,本文对传统的Max-Log-Map译码算法进行了改进。改进的算法对前、后向度量使用了蝶形结构图,便于DSP实现;将原始帧均分为多个子块,设计子块间的并行运算以减小系统延迟;子块内采取进一步地优化措施,以减小数据存储量并提高译码速率。在DSP C6416平台上的仿真结果表明了算法的可实现性与可靠性。
标签: Max-Log-Map DSP 译码算法
上传时间: 2013-11-08
上传用户:a296386173
介绍了包装机的工作原理及以DSP为处理器的自动包装机控制系统,采用统一建模语言UML建立系统用例图,并根据对用例图的分析建立系统状态模型。通过编程测试,验证了本系统不仅满足了用户需求而且具有较高的可靠性和可维护性。
上传时间: 2013-11-04
上传用户:wmwai1314
Xilinx 高性能 CPLD、FPGA 和配置 PROM 系列具备在系统可编程性、可靠的引脚锁定以及JTAG 边界扫描测试功能。此强大的功能组合允许设计人员在进行重大更改时,仍能保留原始的器件引脚,从而避免重组 PC 板。通过利用嵌入式控制器从板载 RAM 或 EPROM 对这些CPLD 和 FPGA 编程,设计人员可轻松升级、修改和测试设计,即使在现场也是如此。
上传时间: 2014-08-10
上传用户:sc965382896
在卫星的地面测试中,地面模拟系统发送遥控遥测信号并接收卫星的返回信号,将其下变频到中频进行解调,从而获取卫星工作状态和运行环境,模拟其在轨运行工作情况。针对目前采用有源相控阵天线技术的卫星地面测试,本文设计实现了一种DBF体制的地面模拟系统接收机,该接收机采用超外差式二次变频设计,具有高增益、低噪声系数、低群时延波动、良好的通道间幅相一致性和稳定性,同时集成度高,体积小,可制造性强,能够充分的满足采用有源相控阵技术的卫星地面测试要求。
上传时间: 2013-11-11
上传用户:我累个乖乖
基于三星公司的ARM11芯片S3c6410和可剪裁可移植的Linux操作系统,搭配51单片机构建嵌入式Web服务器,实现对电网的监控。该系统可实现多路电网欠压、过压状态的判定,并实时地采集环境画面和温度,采用TCP/IP通信协议连接到远程计算机上,实现了在远程计算机利用Web页面的方式动态显示电网状态、温度和环境画面等信息的功能。
上传时间: 2014-12-29
上传用户:Altman