基于单片机的多功能数据采集系统的设计说明.doc
《基于单片机的多功能数据采集系统的设计说明.doc》由会员分享,可在线阅读,更多相关《基于单片机的多功能数据采集系统的设计说明.doc(35页珍藏版)》请在课桌文档上搜索。
1、1 引言数据采集,是利用一种装置,从系统外部采集数据并输入到系统部的一个接口。被采集数据是已被转换为电讯号的各种物理量,如温度、水位、风速、压力等。采集一般是采样方式,即隔一定时间称采样周期对同一点数据重复采集。采集的数据大多是瞬时值,也可是某段时间的一个特征值。准确的数据量测是数据采集的基础。数据量测方法有接触式和非接触式,检测元件多种多样。不论哪种方法和元件,均以不影响被测对象状态和测量环境为前提,以保证数据的正确性。在互联网行业快速发展的今天,数据采集已经被广泛应用于互联网及分布式领域,数据采集领域已经发生了重要的变化。国外各种数据采集器先后问世,将数据采集带入了一个全新的时代。 数据采
2、集系统根据不同的应用需求有不同的定义,这就使得多功能数据采集系统的发展显得尤为重要。多功能数据采集系统的任务就是根据不同的需要对信号进行采集,如实现采集初始时刻的任意性,采集频率的多样性。然后转换成单片机能够识别的数字信号,送入单片机进行相应的计算和处理,得出所需数据,并将其进行显示或加以通信,以便实现对某些量的实时控制和处理。在生产生活的各个方面,数据采集系统几乎无处不在,凡是有自动监控系统的地方都有数据采集系统的出现,随着工业生产生活的需要,对数据采集系统的要求也越来越高,尤其是根据不同的需要实现以不同的方式采集数据。因此,对本课题的研究有及其广阔发展前景和巨大的经济价值。2 多功能数据采
3、集系统总述2.1 系统简介数据采集系统起始于20世纪50年代,由于数据采集系统具有高速性和一定的灵活性,可以满足众多传统方法不能完成的数据采集和通信任务,因而得到初步的认可。由于集成电路制造技术的不断提高,数据采集技术已经在军事、航空电子设备及宇航技术、工业等领域被广泛应用。本系统主要包括数据采集模块、数据存储模块、CPU模块、人机交互模块、通信模块。系统电路原理图见附录A,PCB图见附录B。其中数据采集模块采用8255A芯片扩口接AD1380转换器主要实现对不同形式信号的实时采集;CPU模块负责对采集到的信号进行分析、变换等操作;人机交互模块是实现采集频率控制及显示数据等功能。针对目前数据采
4、集系统在工业控制中的实际使用情况,本系统相比一些其它的数据采集系统,在满足基本要求的同时,成本更低、操作也简单。本系统解决的一个关键问题是,在数据采集的过程中,保证了通过实现从任意时刻开始采集数据和以不同的频率采集数据来满足不同的工作需要。2.2 系统总体框图本设计拟采用单片机作为程序的主控芯片,利用A/D转换技术,实现数据的实时转换,利用键盘控制采样频率的改变,通过外加存储器扩展存储空间,通过显示器显示数据并进行通信。系统总体框图如图所示:通信模块数据采集模块数据存储模块CPU模 块人机交互模块图2.1 系统总体框图3 CPU模块3.1 89C51单片机的基本组成本设计采用89C51作为系统
5、的主控芯片,芯片结构框图如下: 外部时钟源 外部事件计数2x16位定时器/计数器数据存储器256B RAM/SFR RAM/SFRRAM/SFR程序存储器4KB ROM振荡器和时序OSC89C51 CPU64KB总线扩展控制器可编程I/O口可编程全双工串行口 中断图3.1 89C51单片机结构框图89C51单片机包含:1一个8位的80C51微处理器2片256字节数据存储器RAM/SFR,用以存放可以读写的数据,如运算的中间结果,最终结果以及欲显示的数据等3片4KB程序存储器FLASH ROM,用以存放程序、一些原始数据和表格44个8位并行I/O端口P0-P3,每个端口既可用作输入也可用作输出5
6、两个16位的定时器/计数器,每个定时器/计数器都可设置成计数方式,用以对外部事件进行计数,也可以设置成定时方式6具有5个中断源、两个中断优先级和中断控制系统7一个全双工UART通用异步接收发送器的串行I/O口,用于实现单片机之间或单片机与PC机之间的串行通信8片振荡器和时钟产生电路,但石英晶体和微调电容需要外接,最高允许振荡频率为24MHz989C51单片机与8051相比,具有节电工作方式,即休闲方式及掉电方式13.2 管脚及说明图3.2 89C51单片机引脚图VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时
7、,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:P1口是一个部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写1时,其管脚被部上拉电阻拉高,且作为输入。并因此
8、作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址1时,它利用部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3口:P3口管脚是8个带部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入1后,它们被部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流ILL这是由于上拉的缘故。 P3口也可作为AT89C51的一些特殊功能口,如下表所示:表3.1
9、P3口特殊功能P3.0RXD串行输入口P3.1TXD串行输出口P3.2/INT0外部中断0P3.3/INT1外部中断1P3.4T0记时器0外部输入P3.5T1记时器1外部输入P3.6/WR外部数据存储器写选通P3.7/RD外部数据存储器读选通P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出
10、的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 /EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器0000H-FFFFH,不管是否有部程序存储器。注意加密方式1时,/EA将部锁定为RESET;当/EA端
11、保持高电平时,此间部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源VPP。 XTAL1:反向振荡放大器的输入及部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出1,2。3.3 主要特性.与MCS-51 兼容 .4K字节可编程闪烁存储器,寿命:1000写/擦循环,数据保留时间:10年 .全静态工作:0Hz-24MHz .三级程序存储器锁定 .128*8位部RAM .32可编程I/O线 .两个16位定时器/计数器 .5个中断源 .可编程串行通道 .低功耗的闲置和掉电模式 .片振荡器和时钟电路1,34 人机交互模块4.1 键盘4.1.1 键盘简介1.键盘输入的特点键盘:一组按
12、键开关的集合。2.按键的确认检测行线电平,便可确认按键按下与否。高电平:断开;低电平:闭合。3.如何消除按键的抖动常用软件来消除按键抖动。基本思想:检测到有键按下,键对应的行线为低,软件延时10ms后,行线如仍为低,则确认该行有键按下。 当键松开时,行线变高,软件延时10ms后,行线仍为高,说明按键已松开。采取以上措施,躲开了两个抖动期的影响。4.1.2 键盘接口的工作原理本设计采用行列式键盘接口,矩阵式键盘用于按键数目较多的场合,由行线和列线组成,按键位于行、列的交叉点上。如图所示:图4.1 矩阵式键盘结构按键数目较多的场合,行列式键盘与独立式键盘相比,要节省很多的I/O口线。1行列式键盘工
13、作原理如果没有键按下,该行线为高电平,当有键按下时,行线电平有列线的电平来决定。由于行、列线为多键共用,各按键彼此将相互发生影响,必须将行、列线信号配合起来并作适当的处理,才能确定闭合键的位置。2按键的识别方法a.扫描法图4-1b中3号键被按下为例,来说明此键时如何被识别出来的。识别键盘有无键被按下的方法,分两步进行:第1步:识别键盘有无键按下;第2步:如有键被按下,识别出具体的按键。把所有列线置0,检查各行线电平是否有变化,如有变化,说明有键按下,如无变化,则无键按下。上述方法称为扫描法,即先把某一列置低电平,其余各列为高电平,检查各行线电平的变化,如果某行线电平为低,可确定此行列交叉点处的
14、按键被按下。b.线反转法 只需两步便能获得此按键所在的行列值。第1步:列线输出为全低电平,则行线中电平由高变低的所在行为按键所在行。第2步:行线输出为全低电平,则列线中电平由高变低所在列为按键所在列。结合上述两步,可确定按键所在行和列。3键盘的编码根据实际需要灵活编码4,5。4.2 LED数码显示4.2.17段LED数码管简介7段LED数码管,是在一定形状的绝缘材料上,利用单只LED组合排列成8字型的数码管,分别引出它们的电极,点亮相应的点划来显示出0-f的数字。LED数码管根据LED的接法不同分为共阴和共阳两类,了解LED的这些特性,对编程是很重要的,因为不同类型的数码管,除了它们的硬件电路
15、有差异外,编程方法也是不同的。下图是共阴和共阳极数码管的部电路,它们的发光原理是一样的,只是它们的电源极性不同而已。将多只LED的阴极连在一起即为共阴式,而将多只LED的阳极连在一起即为共阳式。以共阴式为例,如把阴极接地,在相应段的阳极接上正电源,该段即会发光。当然,LED的电流通常较小,一般均需在回路中接上限流电阻。假如我们将b和c段接上正电源,其它端接地或悬空,那么b和c段发光,此时,数码管显示将显示数字1。而将a、b、d、e和g段都接上正电源,其它引脚悬空,此时数码管将显示2。其它字符的显示原理类同6。图4.2 数码管共阴极、共阳极接法两种接法显示译码如下表:表4.1 数码显示译码表显示
16、字符共阴极段码共阳极段码显示字符共阴极段码共阳极段码03FHC0H87FH80H106HF9H96FH90H25BHA4HA77H88H34FHB0Hb7CH83H466H99Hc39HC6H56DH92Hd5EHA1H67DH82HE79H86H707HF8HF71H8EH4.2.2LED显示器工作原理N个LED显示块有N位位选线和8N根段码线。 段码线控制显示的字型,位选线控制该显示位的亮或暗。静态显示和动态显示两种显示方式。1.静态显示方式各位的公共端连接在一起接地或+5V。 每位的段码线分别与一个8位的锁存器输出相连。显示字符一确定,相应锁存器的段码输出将维持不变,直到送入另一个段码为
17、止。显示的亮度高。下图: 4位静态LED显示器电路。该电路各位可独立显示。图4.3 4位静态LED显示器电路2.动态显示方式 所有位的段码线相应段并在一起,由一个8位I/O口控制,形成段码线的多路复用,各位的公共端分别由相应的I/O线控制,形成各位的分时选通。下图:4位8段LED动态显示电路。其中段码线占用一个8位I/O口,而位选线占用一个4位I/O口7。图4.4 4位动态LED显示电路本设计中采用动态显示模式。4.3 人机接口模块电路 本设计中由于采用89c51单片机,I/O口不够用,所以扩展了一片8255A,来连接键盘和显示器。编程时,先片选到本片8255A,设置其以方式0工作,A、B输出
18、,C输入,数码显示为共阴极接法,PA口接数码管的段选线,共阴极公共端由PB0、PB1分别控制。键盘的行线接PB口的高四位,列线接PC口低四位,接口电路如下:图4.5 键盘显示器接口电路5 数据采集模块5.1 数据采集主要芯片A/D转换器本系统采用AD1380作为数据采集模块的主要芯片。AD1380是一种完整的低功耗16位逐次逼近型A/D转换器,为美国模拟器件公司Analog Devices产品。该产品采用表面镀铜技32脚双列直插式标准瓷封装,将D/A转换电路,参考电压,时钟脉冲,比较器,逐次逼近寄存器及采样/保持放大器集成在一个芯片上,可并行或串行输出,所有数字输入和输出与TTL或5V CMO
19、S兼容,转换时间最大为14uS,非线性误差小于0.003%FSR,电源供给为15V和5V。由于AD1380的数据输出不是三态控制输出,因此在硬件接口设计时必须外界数据缓冲寄存器8,9。一、AD1380的引脚功能和应用特性AD1380的主要特性总结如下:分辨率:16位二进制转换时间:14uS非线性度:。无误码:AD1380JD为13位0+70; AD1380KD为14位0+70。最大功耗:900mW输出形式:16位负逻辑并行或串行输出单极性输入时数据输出是互补二进制码,双极性输入时数据输出是互补偏移二进制码模拟输入电压:-2.5V+2.5V,-5V+5V,-10V+10V,0V+5V,0V+10
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 多功能 数据 采集 系统 设计 说明
链接地址:https://www.desk33.com/p-16023.html