多路数据采集系统毕业论文.doc_第1页
多路数据采集系统毕业论文.doc_第2页
多路数据采集系统毕业论文.doc_第3页
多路数据采集系统毕业论文.doc_第4页
多路数据采集系统毕业论文.doc_第5页
已阅读5页,还剩85页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计(论文)题 目 多路数据采集系统 摘要在工业现场中需要对大量诸如温度、压力、湿度等参数进行监控,所以需本文设计一款多路数据采集系统,对各种参数实时进行监测,以满足工业生产需求。本次课题设计了一个以AT89S52单片机为核心的数据采集系统,主要完成对于温度、湿度、气压模拟量、风速开关量、风向开关量、雨量开关量的监测,对于超过监测设定值的参数进行声光报警。硬件部分是以单片机为核心,还包括A/D模数转换模块ADC0809,系统扩展模块8255。监测仪的人机交互通过3X3矩阵小键盘实现,可以实现系统的整机复位和相应的监测量限值设定(上下限)控制,显示部分由LCD构成,完成每个监测值的显示。软件部分采用模块化设计以使程序结构清晰,修改简单,可读性强。整个软件可分为如下的模块,即显示模块、键盘处理模块、数据存储模块、数据采集处理模块和主程序模块等。关键字:数据采集; AT89S52; ADC0809AbstractThere are many parameters such as temperatures, pressure, humidity and so on in the industrial field. It is important to gather and process all kinds of the parameters of the real-time monitoring. It is necessary to develop a multichannel data acquisition system to meet the needs of application in the industrial field. This topic design a AT89S52 SCM as the core of data acquisition system, mainly for temperature analogue, complete the humidity, air pressure is an analog simulation switch quantity, wind direction, wind speed switch quantity, the amount of rainfall switch monitoring, for more than monitoring the parameters of sound and light alarm set value.Hardware is based on single chip microcomputer as the core, including A/D conversion module ADC0809 module, the system expansion module-8255.Monitor the human-computer interaction through the 33 matrix small keyboard realization, can realize the system reset and the corresponding monitoring quantity limits set(upper)control, in part by the LCD display form, complete each monitoring of the values of the display. They software of the modular design to make the program structure is clear, simple modification readable. The software can be divided into the following module of display module, keyboard processing module, the data storage module, data acquisition and processing module and main program module, etc. Key words: data collection; ADC0809; AT89S52 目录第一章 绪论1.1 研究背景及其目的我国目前中小容量机组(200MW及以下)在火电厂中占相当大的比例,这些机组的监控模式为模拟控制系统加以常规仪表为主的数据采集系统。这种监控模式存在着检修维护工作量大、没有可靠的历史记录等缺点。而且常规模拟仪表也进入老化淘汰期,设备可靠性明显降低,某些仪表的备品备件也得不到保障,因此中小型机组监控系统的技术改造工作已势在必行。结合我国国情,借鉴国内类似系统的研制经验,开发出一套经济实用的FDC-型分布式发电厂运行实时数据监测系统,既可用于中小机组技术改造,又可应用于变电站、供电局等电力生产、管理部门。该系统目前已在山东省某150MW火力发电厂投入实际运行。目前我国国产机组热控装置的质量和主辅机的可控性不尽人意,设计、安装、调试、运行水平等都存在一些问题,针对这一现状设计了FDC-型分布式发电厂运行实时数据监测系统。它是只有监视功能而没有控制功能的计算机监视系统,即数据采集系统DAS。 该系统可以采集的发电厂运行数据包括电气参数和非电气参数两类。其中电气参数主要有电流、电压、功率、频率等模拟量,断路器状态、隔离开关位置、继电保护动作信号等开关量以及表示电度的脉冲量等。而非电气参数种类较多,既可以是采集火力发电厂中的各种温度、压力、流量等热工信号,也可有水电厂中的水位、流速、流量等水工信号,还可以采集诸如绝缘介质状态、气象环境等其它信号。 该系统还包括用VC+开发的后台处理软件,主要有数据处理、数据库处理、实时监视、异常处理、统计计算及报表、性能分析及运行指导等功能。由此可见,近年来数据采集及其应用受到了人们越来越广泛的关注,数据采集系统也有了迅速的发展,它可以广泛的应用于各种领域。1.2技术发展历史数据采集系统起始于20世纪50年代,1956年美国首先研究了用在军事上的测试系统,目标是测试中不依靠相关的测试文件,由非成熟人员进行操作,并且测试任务是由测试设备高速自动控制完成的。由于该种数据采集测试系统具有高速性和一定的灵活性,可以满足众多传统方法不能完成的数据采集和测试任务,因而得到了初步的认可。大概在60年代后期,国内外就有成套的数据采集设备和系统多属于专用的系统。20世纪70年代后期,随着微型机的发展,诞生了采集器、仪表同计算机溶为一体的数据采集系统。由于这种数据采集系统的性能优良,超过了传统的自动检测仪表和专用数据采集系统,因而获得了惊人的发展。从70年代起,数据采集系统发展过程中逐渐分为两类,一类是实验室数据采集系统,一类是工业现场数据采集系统。20世纪80年代随着计算机的普及应用,数据采集系统得到了很大的发展,开始出现了通用的数据采集与自动测试系统。该阶段的数据采集系统主要有两类,一类以仪表仪器和采集器、通用接口总线和计算机组成。这类系统主要应用于实验室,在工业生产现场也有一定的应用。第二类以数据采集卡、标准总线和计算机构成,这一类在工业现场应用较多。20世纪80年代后期,数据采集发生了很大的变化,工业计算机、单片机和大规模集成电路的组合,用软件管理,是系统的成本减低,体积变小,功能成倍增加,数据处理能力大大加强。20世纪90年代至今,在国际上技术先进的国家,数据采集系统已成功的运用到军事、航空电子设备及宇航技术、工业等领域。由于集成电路制造技术的不断提高,出现了高性能、高可靠的单片机数据采集系统(DAS)。数据采集技术已经成为一种专门的技术,在工业领域得到了广泛的应用。该阶段的数据采集系统采用模块式结构,根据不同的应用要求,通过简单的增加和更改模块,并结合系统编程,就可扩展或修改系统,迅速组成一个新的系统。尽管现在以微机为核心的可编程数据采集与处理采集技术的发展方向得到了迅速的发展,而且组成一个数据采集系统只需要一块数据采集卡,把它插在微机的扩展槽内并辅以应用软件,就能实现数据采集功能,但这并不会对基于单片机为核心的数据采集系统产生影响。相较于数据采集板卡成本和功能的限制,单片机具多功能、高效率、高性能、低电压、低功耗、低价格等优点,而双单片机又具有精度较高、转换速度快、能够对多点同时进行采集,因此能够开发出能满足实际应用要求的、电路结构简单的、可靠性高的数据采集系统。这就使得以单片机为核心的数据采集系统在许多领域得到了广泛的应用。新的数据采集器将在以下几个方面取得突破:1.最大点数300点以上,采集速度为600点/秒。2.具有万能输入功能,热电偶、热电偶、接点信号、电压、电流等均可任意设定。3.利用对话式窗口操作,具有丰富的显示功能。4.有磁盘等存储媒体存储数据,也可以通过网络接口向网络传输数据。5.有丰富的软件功能,如数字显示、模拟几率、棒图显示、运算、累积流量计算等。6.通道间隔离,抗干扰能力强,能在恶劣的环境下工作。1.3 国内外研究现状数据采集技术是一种流行且实用的电子技术。它广泛应用于信号检测、信号处理、仪器仪表等领域。近年来,随着数字化技术的不断发展,数据采集技术也呈现出速度更快、通道更多、数据量更大的发展趋势。数据采集是为了对温度、压力、流量、速度、位移、光强度、声音等物理量进行在线测量和控制,通过传感器把上述数字量转换成模拟量得电信号(即模拟电信号),然后将模拟电信号经过处理并转换成计算机能识别的数字量,送进计算机处理、存储、传输和显示。数据采集技术在自动测试、自动控制、通信、信号处理等领域得到广泛的应用。例如数据遥测系统、脉冲编码和调制通信、自动测试系统、数据采样控制系统、瞬态数据记录系统、视频信号处理系统等等。国外:由美国PASCO公司生产的“科学工作室”是将数据采集应用于物理实验的崭新系统,它由3部分组成: (1)传感器:利用先进的传感技术可实时采集技术可实时采集物理实验中各物理量的数据; (2)计算机接口:将来自传感器的数据信号输入计算机,采样速率最高为25万次/S; (3)软件:中文及英文的应用软件。受需求牵引,新一代机载数据采集系统为满足飞行实验应用也在快速地发展。如爱尔兰ACRA公司2000年研发推出的新一代KAM500机载数据采集系统到了2006年。本系统采用16位(A/D)模拟数字变换,总采样率达500K/S,同步时间为+/-250ns,可以利用方式组成高达1000通道的大容量的分布式采集系统。国内:由于数据采集技术不断发展,市场上出现了各种新型的数据采集器。例如北京凯文斯系统集成有限责任公司E16系列EPP并口宽动态范围的高精度数据采集器,数据通道可以达到16个(单端),可编程增益为1、2、4、8倍,分辨率为16位,采样最高频率决定于微机的CPU及处理速度,一般为60-80KHz。北京测振仪器厂研制的HZ-9609数据采集器/振动分析仪,它采用中文显示,直观醒目,操作简单方便;采用先进的微电脑技术,工作可靠;采用高性能电池,体积小,重量轻,便于现场使用,采用频谱分析技术和故障诊断的得力助手,是进行数据采集,完成设备状态分析和故障诊断的得力助手;它可以与微机通讯,简历设备状态分析和故障诊断进行更精细的状态分析;采用压电加速度传感器,可测量振动信号的加速度,速度和位移,还可测量电压信号和转速信号,采样频率为1Hz-10KHz。北京众人精密测控技术公司的产品是F-5000系列笔记本专用数据采集控制器,具有程控增益(1,2,4,8),通红道扩展,0.2%的精度等特点,但分辨率不超过12位(市场价格为7000RMB)。总之,经过对国内外现有数据采集产品的性能、价格、功能的了解,总结概况如下:(1)国外的数据器精度高、采样速度快、功能较全、价格昂贵。(2)体积较快,操作复杂,或者需配笔记本电脑。(3)采用LCD显示和键盘输入功能,带打印功能。(4)采样频率和采样精度两者不能很好的统一。(5)前端可编程增益控制范围较小(一般在16倍以下)。(6)国内数据采集器的采样精度较低,一般为0.2%。1.3 主要技术指标本系统所实现的的主要技术指标有以下几点: 1)各参数测量范围 测量温度:-55+150 测量湿度:0100RH 测量气压:20KPa1050KPa 测量雨量:0.1mm 测量风速:060m/s 测量风向:0360 2)各传感器误差范围温度传感器最大允许误差:0.5(25时)湿度传感器最大允许误差:3(1095RH范围)气压传感器最大允许误差:0.1VFss雨量传感器最大允许误差:降水强度在0.4mm/min条件下,0.4mm(10mm);4(10mm)风速传感器最大允许误差:0.3m/s(风速小于10m/s时);3m/s(风速大于10m/s时)风向传感器最大允许误差:3。 3)实时采集周期可在19999分钟内可调,发送周期等于1次/2小时;1.4 该课题研究的主要内容本次设计的数据采集系统是对温度、湿度、气压、雨量、风速风向各数据进行远程监测,对超出警戒线的数据信号进行报警。设计重点在于各传感器的合理搭配与使用,由于各类传感器的输出信号各不相同,所以需要将各类信号进行处理之后,才能通过AD转换器将输出信号传送至单片机。键盘的作用在于上下翻动查看上传数据值,并对各传感器输出范围的警戒值进行预设,而报警器则用来对超出警戒值的信号进行报警。第二章 系统总体结构方案及设计2.1 数据采集系统数据采集器一般包括前向通道(数据采集部分)和后向接口(数据处理传输部分)两部分,前者包括信号的滤波、放大、采样、保持、转换部分,后者包括微机及接口部分。用于非电量测量的数据采集就是将来自各种传感器的大量信号实时准确的测量或汇集起来,送到微处理机进行实时处理,或记录存储起来,以供将来的分析之用。点信号测量中的数据采集信号范围大,这样就对数据采集器提出了如下要求:1.输入信号范围大;2.采集速度快;3.测量精度高;4.扛干扰能力强;5.信号通道一般较多。根据系统对A/D转换通路个数、转换速度的要求以及信号源速率等情况,采集器通道的通道形式有所不同,有单通道和多通道以及低速与高速之分。在科研和生产的过程中,往往需要检测各个生产环节的温度、湿度、流量及压力等物理参数。同时对检测某一点的任意参数能进行随机查寻,将其在某一时间内检测到的数据经过转换提取出来,以列表或曲线的形式显示在界面上,以便进行比较,做出决策,调整控制方案,提高产品合格率,产生良好的经济效益。所以数据采集器就需要多个采集通道。基于单片机的多通道数据采集器基本构成形式如图2.1所示: 传感器传感器传感器传感器多路开关MUX放大器S/HA/DCPU图2-1多通道数据采集器的基本构成完成毕业设计所需要的系统框图如图2.2所示:AT89S52AD转换信号处理信号处理信号处理温度信号湿度信号风向信号风速信号雨量信号气压信号键盘时钟芯片LCD显示打印机报警电路图2-2 系统原理图2.2 方案设计多路数据采集系统可采用以下几种方案:处理器基于单片机的数据采集系统,处理器基于MODBUS-RTU协议的PLC多路数据采集系统。2.2.1 方案一方案一采用单片机作为多路数据采集系统的处理器。该系统利用温度传感器、压力传感器、湿度传感器等实时采集各类数据,经由8为模数转换器ADC,转换成相应的数字量,通过键盘对各类数据设定上限值,当检测有数据超限时开始报警。该系统采用LCD实现实时显示。2.2.2方案二方案二采用MODBUS-RTU协议的可编程控制器PLC作为多路数据采集系统的处理器,其系统框图如下所示:PLC 控制器上 位 机通信协议报警指示触 摸 屏温度传感器变 送 器湿度传感器变 送 器气压传感器电 源变送器 图2-3 以PLC为处理器的系统框图系统根据设备的功能划分为3个层次:数据采集层、PLC控制与显示层、数据传输层。(1) 数据采集层涉及温度传感器、湿度传感器、气压传感器,通过在PLC通信控制设备中嵌入式编程,实现对各传感器的数据采集,传感器等待PLC设备的数据垂询命令并做出响应。(2) PLC控制与显示层涉及PLC控制设备ADAM-5510E/TCP和显示屏,ADAM-5510E/TCP通过ADAM-5510 Series Utility软件平台与工作主机通信,实现嵌入式编程。采用串口1接口与显示屏连接,通过ADAM输入/输出模块和串口2控制各传感器,采用RJ-45网络口与上位机通信并存储数据信息。(3) 数据传输层通过RJ-45接口,采用UDP/IP通信协议,将PLC采集的数据信息实时传输到上位机数据库服务器中。2.3方案论证方案一与方案二都是使用传感器将压力、温度、湿度转换成模拟电信号,将其进行A/D转换、计算,并同时显示在显示屏上;方案一与方案二处理芯片不同:前者为单片机,后者为可编程控制器PLC。当需要发送压力、温度和湿度信息时,单片机将采集数据通过ADC送至上位机,而可编程控制器将数据通过固定的通信协议发送到监控中心。方案一显示使用的是LCD,键盘为33矩阵键盘;方案二人机交互采用的硬件为触摸屏。方案一中单片机集成度高,把中央处理器(CPU)、随机存取存储器(RAM)、只读存储 器(ROM)、输入/输出端口(I/O)等主要计算机功能部件都集成在一块集成电路芯片上,具有性能高、 速度快、体积小、价格低、应用广泛、通用性强等突出优点。通过不同的程序可实现不同的功能,尤其是特殊的独特的一些功能,但其稳定性和抗电磁干扰能力相较于PLC比较弱。方案二中可编程控制器PLC抗干扰能力强,编程方便,可在现场修改程序,且PLC接口容易,编程语言易于为工程技术人员接受。但可编程控制器的价格高昂,在小型设备上应用PLC控制器会由于成本过高,且各种不同生产商的控制器通信协议互不兼容,造成产品推广性差。本次设计考虑到产品的性价比、可实用性和推广性,决定选择方案一。原因有以下三点:1) 单片机比PLC价格低,同样可以实现功能,故其性价比高。2) 单片机的通讯较之PLC方便很多。单片机的通讯方式及协议有很多种,选择范围广,而PLC由于各种生产商的通讯协议互不兼容,给通讯造成了很大的障碍。3) 单片机比PLC更易于推广。第三章 系统的硬件设计3.1单片机单片机是一种集成的电路芯块采用了超大规模技术把具有运算能力(如算术运算、逻辑运算、数据传送、中断处理)的微处理器(CPU),随机存取数据存储器(RAM),只读程序存储器(ROM),输入输出电路(I/O口),可能还包括定时计数器,串行通信口(SCI),显示驱动电路(LCD或LED驱动电路),脉宽调制电路(PWM),模拟多路转换及A/D转换器等电路集成到一块单片机上,构成一个最小然而很完善的计算机系统。这些电路能在软件的控制下准确快速的完成程序设计者事先规定的任务。总的而言单片机的特点可以归纳为以下几个方面:集成度高、存储容量大、外部扩展能力强、控制功能强、低电压、低功耗、性能价格比高、可靠性高这几个方面。单片机按内部数据通道的宽度,可分为4位、8位、16位及32位单片机。它们被应用在不同领域里,8位单片机由于功能强大,被广泛的应用在工业控制、智能接口、仪表仪器等各个领域。8位单片机在中、小规模应用场合仍占主流地位,代表了单片机的发展方向,在单片机应用领域发挥越来越大的作用。随着移动通讯、网络技术、多媒体技术等高科技产品进入家庭,32位单片机应用得到了长足发展。纵观单片机的发展过程,可以预示单片机的发展趋势:1、 微型单片化2、 低功耗CMOS3、与多品种共存4、可靠性和应用水平越来越高单片机有着微处理器所不具备的功能,它可以独立地完成现代工业控制所要求的智能化控制功能这就是单片机的最大特点。然而单片机又不同于单板机,芯片在没有开发前,它只是具备功能极强的超大规模集成电路,如果赋予它特定的程序,它便是一个最小的、完整的微机控制系统。它与单板机或个人电脑有着本质的区别,单片机属于芯片级应用,需要用户了解单片机芯片的结构和指令系统以及其它集成电路应用技术和系统设计所需要的理论和技术,用这样特定的芯片设计应用程序,从而使芯片具备特定的智能。3.1.1AT89S52简介单片机是一种面向大规模的集成电路芯片,是微型计算机中的一个重要的分支。此系统是由CPU、随即存取数据存储器、只读程序存储器、输入输出电路(I/O口),还有可能包括定时/计数器、串行通信口、显示驱动电路(LCD和LED驱动电路)、脉宽调制电路、模拟多路转换器及A/D转换器等电路集成到一个单块芯片上,构成了一个最小但完善的计算机任务。单片机要使用特定的组译和编译软件编译程序,在用keiluvision2把程序下载到单片机内。本设计选用的是AT89C528位单片机是MSC-51系列产品的升级版,是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C52单片机在电子行业中有着广泛的应用。它是由世界著名的半导体公司ATMEL在购买MSC-51设计结构后,利用自身优势技术一一(高密度、非易失性存储技术)闪存生产技术对就技术进行改进和扩展,同时使用新的半导体生产工艺,最终得到成型产品。与此同时,世界上其他的著名公司也通过基本片机。AT89S52片内集成25的51内核,结合公司自身技术进行改进生产,推广一批如51F020等高性能单6字节程序运行空间、8K字节Flash存储空间,支持最大64K外部存储扩展,根据不同的运行速度和功耗的要求,时钟频率可以设置在0-33M之间。片内资源有4组I/O控制端口、3个定时器、8个中断、软件设置低能耗模式、看门狗和断电保护。可以在4V到5.5V宽电压范围内正常工作。不断发展的半导体工艺也让该单片机的功耗不断降低。同时,盖垫片及支持计算机并口下载,简单的数字芯片就可以支撑下载线,仅仅几块钱的价格让该型号单片机畅销10年不衰,其PIDP引脚图如下:图3-1 PDIP封装的AT89S52引脚图1.主要功能特性1)兼容MCS51指令系统 2)8k可反复擦写(大于1000次)Flash ROM; 3)32个双向I/O口; 4)256x8bit内部RAM; 5)3个16位可编程定时/计数器中断; 6)时钟频率0-24MHz; 7)2个串行中断,可编程UART串行通道; 8)2个外部中断源,共8个中断源; 9)2个读写中断口线,3级加密位; 10)低功耗空闲和掉电模式,软件设置睡眠和唤醒功能; 11)有PDIP、PQFP、TQFP及PLCC等几种封装形式,以适应不同产品的需求。 2.引脚功能及管脚电压AT89S52为8 位通用微处理器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52 相同,其主要用于会聚调整时的功能控制。功能包括对会聚主IC 内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。主要管脚有:XTAL1(19 脚)和XTAL2(18 脚)为振荡器输入输出端口,外接12MHz 晶振。RST(9 脚)为复位输入端口,外接电阻电容组成的复位电路。Vcc(40 脚)和Vss(20 脚)为供电端口,分别接+5V电源的正负端。P0P3 为可编程通用I/O 脚,其功能用途由软件定义。 P0口P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。 当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下, P0不具有内部上拉电阻。 在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验 时,需要外部上拉电阻。 P1口P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个 TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 此外,P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2 的触发输入(P1.1/T2EX)。 在flash编程和校验时,P1口接收低8位地址字节。 引脚号第二功能: P1.0 T2(定时器/计数器T2的外部计数输入),时钟输出 P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制) P1.5 MOSI(在系统编程用) P1.6 MISO(在系统编程用) P1.7 SCK(在系统编程用)P2口P2 口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动 4 个 TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX DPTR) 时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用 8位地址(如MOVX RI)访问外部数据存储器时,P2口输出P2锁存器的内容。 在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3口P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p3 输出缓冲器能驱动4 个 TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。 在flash编程和校验时,P3口也接收一些控制信号。 端口引脚 第二功能: P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 INTO(外中断0) P3.3 INT1(外中断1) P3.4 TO(定时/计数器0) P3.5 T1(定时/计数器1) P3.6 WR(外部数据存储器写选通) P3.7 RD(外部数据存储器读选通) 此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。 RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。 ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。 PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。 EA/VPP:外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。 XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2:振荡器反相放大器的输出端。 3.特殊功能寄存器特殊功能寄存器(SFR)的地址空间映象如表3-1所示。并不是所有的地址都被定义了。片上没有定义的地址是不能用的。读这些地址,一般将得到一个随机数据;写入的数据将会无效。表3-1AT89S52特殊寄存器映像及复位值用户不应该给这些未定义的地址写入数据“1”。由于这些寄存器在将来可能被赋予新的功能,复位后,这些位都为“0”。 定时器 2 寄存器:寄存器T2CON 和T2MOD 包含定时器2 的控制位和状态位(如表2和表3所示),寄存器对RCAP2H和RCAP2L是定时器2的捕捉/自动重载寄存器。 中断寄存器:各中断允许位在IE寄存器中,六个中断源的两个优先级也可在IE中设置。 T2CON 地址为0C8H 复位值:0000 0000B位可寻址表3-2 T2CON:定时器/计数器2控制寄存器TF2EXF2RLCLKTCLKEXEN2TR2C/T2CP/RL276543210符号功能TF2定时器2溢出标志位。必须软件清“0”。RCLK=1或TCLK=1时,TF2不用置位。EXF2定时器2 外部标志位。EXEN2=1 时,T2EX 上的负跳变而出现捕捉或重载 时,EXF2 会被硬件置位。定时器2 打开,EXF2=1 时,将引导CPU执行定 时器2 中断程序。EXF2 必须如见清“0”。在向下/向上技术模式(DCEN=1) 下EXF2不能引起中断。RLCLK串行口接收数据时钟标志位。若RCLK=1,串行口将使用定时器2 溢出脉冲 作为串行口工作模式1 和3 的串口接收时钟;RCLK=0,将使用定时器1计数 溢出作为串口接收时钟。TCLK串行口发送数据时钟标志位。若TCLK=1,串行口将使用定时器2 溢出脉冲作 为串行口工作模式1 和3 的串口发送时钟;TCLK=0,将使用定时器1计数溢出 作为串口发送时钟。EXEN2定时器2外部允许标志位。当EXEN2=1时,如果定时器2没有用作串行时钟, T2EX(P1.1)的负跳变将引起定时器2 捕捉和重载。若EXEN2=0,定时器2 将视T2EX端的信号无效TR2开始/停止控制定时器2。TR2=1,定时器2开始工作C/T2定时器 2 定时/计数选择标志位。C/T2 =0,定时; C/T2 =1,外部事件计 数(下降沿触发)CP/RL2捕捉/重载选择标志位。当EXEN2=1时, CP/RL2=1,T2EX出现负脉冲,会引 起捕捉操作;当定时器2溢出或EXEN2=1时T2EX出现负跳变,都会出现自动重载 操作。CP/RL2=0 将引起T2EX 的负脉冲。当RCKL=1或TCKL=1时,此标志位 无效,定时器2溢出时,强制做自动重载操作。双数据指针寄存器:为了更有利于访问内部和外部数据存储器,系统提供了两路16位数据指针寄存器:位于SFR中82H83H的DP0和位于84H85。特殊寄存器AUXR1中DPS=0 选择DP0;DPS=1 选择DP1。用户应该在访问数据指针寄存器前先初始化DPS至合理的值。 AUXR 地址:8EH 复位值:XXX00XX0B不可位寻址表3-3 AUXR:辅助寄存器WDIDLEDISRTODISALE76543210预留扩展用 DISALE ALE使能标志位 DISALE 操作方式 0 ALE 以1/6晶振频率输出信号 1 ALE 只有在执行MOVX 或MOVC指令时激活 DISRTO 复位输出标志位 DISRTO 0 看门狗(WDT)定时结束,Reset 输出高电平 1 Reset 只有输入 WDIDLE 空闲模式下WDT 使能标志位 WDIDLE 0 空闲模式下,WDT继续计数 1 空闲模式下,WDT停止计数 掉电标志位:掉电标志位(POF)位于特殊寄存器PCON的第四位(PCON.4)。上电期间POF置“1”。POF可以软件控制使用与否,但不受复位影响。 AUXR1 地址:A2H 复位值:XXXXXXX0B表3-4 AUXR1:辅助寄存器1DPS76543210预留扩展用 DPS 数据指针选择位 DPS 0 选择DPTR寄存器DP0L和DP0H 1 选择DPTR寄存器DP1L和DP1H4.存储器结构MCS-51器件有单独的程序存储器和数据存储器。外部程序存储器和数据存储器都可以64K寻址。 程序存储器:如果EA引脚接地,程序读取只从外部存储器开始。 对于 89S52,如果EA 接VCC,程序读写先从内部存储器(地址为0000H1FFFH)开始,接着从外部寻址,寻址地址为:2000HFFFFH。 数据存储器:AT89S52 有256 字节片内数据存储器。高128 字节与特殊功能寄存器重叠。也就是说高128字节与特殊功能寄存器有相同的地址,而物理上是分开的。 当一条指令访问高于7FH 的地址时,寻址方式决定CPU 访问高128 字节RAM 还是特殊功能寄存器空间。直接寻址方式访问特殊功能寄存器(SFR)。 例如,下面的直接寻址指令访问0A0H(P2口)存储单元MOV 0A0H , #data使用间接寻址方式访问高128 字节RAM。例如,下面的间接寻址方式中,R0 内容为0A0H,访问的是地址0A0H的寄存器,而不是P2口(它的地址也是0A0H)。 MOV R0 , #data堆栈操作也是间接寻址方式。因此,高128字节数据RAM也可用于堆栈空间。5片上资源看门狗定时器WDT是一种需要软件控制的复位方式。WDT 由13位计数器和特殊功能寄存器中的看门狗定时器复位存储器(WDTRST)构成。WDT 在默认情况下无法工作;为了激活WDT,用户必须往WDTRST 寄存器(地址:0A6H)中依次写入01EH 和0E1H。当WDT激活后,晶振工作,WDT在每个机器周期都会增加。WDT计时周期依赖于外部时钟频率。除了复位(硬件复位或WDT溢出复位),没有办法停止WDT工作。当WDT溢出,它将驱动RSR引脚一个高电平输出。 WDT的使用为了激活WDT,用户必须向WDTRST寄存器(地址为0A6H的SFR)依次写入01EH和0E1H。当WDT激活后,用户必须向WDTRST写入01EH和0E1H喂狗来避免WDT溢出。当计数达到8191(1FFFH)时,13 位计数器将会溢出,这将会复位器件。晶振正常工作、WDT激活后,每一个机器周期WDT 都会增加。为了复位WDT,用户必须向WDTRST 写入01EH 和0E1H(WDTRST 是只读寄存器)。WDT 计数器不能读或写。 当WDT 计数器溢出时,将给RST 引脚产生一个复位脉冲输出,这个复位脉冲持续96个晶振周期(TOSC),其中TOSC=1/FOSC。为了很好地使用WDT,应该在一定时间内周期性写入那部分代码,以避免WDT复位。 掉电和空闲方式下的 WDT在掉电模式下,晶振停止工作,这意味这WDT也停止了工作。在这种方式下,用户不必喂狗。有两种方式可以离开掉电模式:硬件复位或通过一个激活的外部中断。通过硬件复位退出掉电模式后,用户就应该给WDT 喂狗,就如同通常AT89S52 复位一样。 通过中断退出掉电模式的情形有很大的不同。中断应持续拉低很长一段时间,使得晶振稳定。当中断拉高后,执行中断服务程序。为了防止WDT在中断保持低电平的时候复位器件,WDT 直到中断拉低后才开始工作。这就意味着WDT 应该在中断服务程序中复位。 为了确保在离开掉电模式最初的几个状态WDT不被溢出,最好在进入掉电模式前就复位WDT。 在进入待机模式前,特殊寄存器AUXR的WDIDLE位用来决定WDT是否继续计数。 默认状态下,在待机模式下,WDIDLE=0,WDT继续计数。为了防止WDT在待机模式下复位AT89S52,用户应该建立一个定时器,定时离开待机模式,喂狗,再重新进入待机模式。 UART在AT89S52 中,UART 的操作与AT89C51 和AT89C52 一样。为了获得更深入的关于UART 的信息,选择“Products”,然后选择“8051-Architech Flash Microcontroller”,再选择“ProductOverview”即可。 定时器 0 和定时器1在AT89S52 中,定时器0 和定时器1 的操作与AT89C51 和AT89C52 一样。为了获得更深入的关于UART 的信息,选择“Products”,然后选择“8051-Architech Flash Microcontroller”,再选择“ProductOverview”即可。 定时器 2定时器2是一个16位定时/计数器,它既可以做定时器,又可以做事件计数器。其工作方式由特殊寄存器T2CON中的C/T2位选择(如表2所示)。定时器2有三种工作模式: 捕捉方式、自动重载(向下或向上计数)和波特率发生器。如表3 所示,工作模式由T2CON中的相关位选择。定时器2 有2 个8位寄存器:TH2和TL2。在定时工作方式中,每个机器周期,TL2 寄存器都会加1。由于一个机器周期由12 个晶振周期构成,因此,计数频率就是晶振频率的1/12。表3-5 定时器2工作模式RCLK+TCLKCP/RL2TR2MODE00116位自动重载01116位捕捉1x1波特率发生器xx0(不用)捕捉方式在捕捉模式下,通过T2CON中的EXEN2来选择两种方式。 如果EXEN2=0,定时器2时一个16位定时/计数器,溢出时,对T2CON 的TF2标志置位,TF2引起中断。如果EXEN2=1,定时器2做相同的操作。除上述功能外,外部输入T2EX引脚(P1.1)1至0的下跳变也会使得TH2和TL2中的值分别捕捉到RCAP2H和RCAP2L中。除此之外,T2EX 的跳变会引起T2CON 中的EXF2 置位。像TF2 一样,T2EX 也会引起中断。捕捉模式如图5所示。在计数工作方式下,寄存器在相关外部输入角T2 发生1 至0 的下降沿时增加1。在这种方式下,每个机器周期的S5P2期间采样外部输入。一个机器周期采样到高电平,而下一个周期采样到低电平,计数器将加1。在检测到跳变的这个周期的S3P1 期间,新的计数值出现在寄存器中。因为识别10的跳变需要2个机器周期(24个晶振周期),所以,最大的计数频率不高于晶振频率的1/24。为了确保给定的电平在改变前采样到一次,电平应该至少在一个完整的机器周期内保持不变。图3-2 定时器的捕捉模式自动重载当定时器2 工作于16 位自动重载模式,可对其编程实现向上计数或向下计数。这一功能可以通过特殊寄存器T2MOD(见表4)中的DCEN(向下计数允许位)来实现。通过复位,DCEN 被置为0,因此,定时器2 默认为向上计数。DCEN 设置后,定时器2就可以取决于T2EX向上、向下计数。 如图3-2 所示,DCEN=0 时,定时器2 自动计数。通过T2CON 中的EXEN 2 位可以选择两种方式。如果EXEN2=0,定时器2计数,计到0FFFFH后置位TF2溢出标志。计数溢出也使得定时器寄存器重新从RCAP2H 和RCAP2L 中加载16 位值。定时器工作于捕捉模式,RCAP2H和RCAP2L的值可以由软件预设。如果EXEN2=1,计数溢出或在外部T2EX(P1.1)引脚上的1到0的下跳变都会触发16位重载。这个跳变也置位EXF2中断标志位。T2EX 上的一个逻辑0 使得定时器2 向下计数。当TH2 和TL2 分别等于RCAP2H 和RCAP2L中的值的时候,计数器下溢。计数器下溢,置位TF2,并将0FFFFH加载到定时器存储器中。置位DCEN,允许定时器2向上或向下计数。在这种模式下,T2EX引脚控制着计数的方向。T2EX上的一个逻辑1使得定时器2向上计数。定时器计到0FFFFH溢出,并置位TF2。定时器的溢出也使得RCAP2H和RCAP2L中的16位值分别加载到定时器存储器TH2和TL2中。 图3-3 定时器2重载模式(DCEN=0)定时器2上溢或下溢,外部中断标志位EXF2 被锁死。在这种工作模式下,EXF2不能触发中断。 T2MOD 地址:0C9H 复位值:XXXXXX00B 表3-6 T2MOD-定时器2控制寄存器T2OEDCEN76543210符号功能无定义,预留扩展定时器2输出允许位置1位,定时器2可配置成向上/向下计数6.中断源AT89S52 有6个中断源:两个外部中断(INT0 和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论