《毕设论文--于基单片机的多路数据采集系统设计.doc》由会员分享,可在线阅读,更多相关《毕设论文--于基单片机的多路数据采集系统设计.doc(46页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于单片机的多路数据采集系统设计 摘要:数据采集系统是模拟域与数字域之间必不可少的纽带,它的存在具有着非常重要的作用。本设计采用了单片机AT89C52来实现,硬件部分是以单片机为核心,还包括A/D模数转换模块,显示模块,和串行接口部分。该系统下位机负责数据采集并应答上位机机的命令。4路被测电压通过模数转换器ADC0809进行模数转换,实现对采集到的数据进行模拟量到数字量的转换,并将转换后的数据通过串行口MAX232传输到上位机,由上位机负责数据的接受、处理和显示,并用LED数码显示器来显示所采集的结果。软件部分应用VB编写控制软件,对数据采集系统、模数转换系统、数据显示、数据通信等程序进行了设
2、计。本设计经调试完成了数据采集、模数转换、显示及上位机绘图各项功能。关键词: 数据采集; 89C52单片机; ADC0809; MAX232;The Design Of Multi-channel Data Acquisition System Based On SCMAbstract:Data acquisition systems are analog and digital domains essential link between its presence has a very important role. This design uses a single-chip AT89C5
3、2 to achieve, the hardware part is a microcontroller as the core, but also including A / D conversion module, display module, and serial interface section. The system is responsible for lower machine data acquisition and PC answering machine commands. 4 measured voltage through the ADC ADC0809 analo
4、g to digital conversion, to achieve the collected data to digital analog conversion, the converted data through the serial port MAX232 transmitted to the host computer, the host computer responsible for data receiving, processing and display, and LED digital display to display the collected results.
5、 Part of the application software written in VB control software, data acquisition systems, analog to digital conversion system, data display, data communications and other procedures were designed. After commissioning the design of the data acquisition, analog to digital conversion, display and PC
6、graphics functions.Key words: data acquisition; AT89C52; ADC0809; MAX232;1. 引言1.1 研究背景及其目的意义近年来,数据采集及其应用受到了人们越来越广泛的关注,数据采集系统也有了迅速的发展,它可以广泛的应用于各种领域。数据采集系统起始于20世纪50年代,1956年美国首先研究了用在军事上的测试系统,目标是测试中不依靠相关的测试文件,由非成熟人员进行操作,并且测试任务是由测试设备高速自动控制完成的。由于该种数据采集测试系统具有高速性和一定的灵活性,可以满足众多传统方法不能完成的数据采集和测试任务,因而得到了初步的认可。大
7、概在60年代后期,国内外就有成套的数据采集设备和系统多属于专用的系统。820世纪70年代后期,随着微型机的发展,诞生了采集器、仪表同计算机溶为一体的数据采集系统。由于这种数据采集系统的性能优良,超过了传统的自动检测仪表和专用数据采集系统,因而获得了惊人的发展。从70年代起,数据采集系统发展过程中逐渐分为两类,一类是实验室数据采集系统,一类是工业现场数据采集系统。820世纪80年代随着计算机的普及应用,数据采集系统得到了很大的发展,开始出现了通用的数据采集与自动测试系统。该阶段的数据采集系统主要有两类,一类以仪表仪器和采集器、通用接口总线和计算机组成。这类系统主要应用于实验室,在工业生产现场也有
8、一定的应用。第二类以数据采集卡、标准总线和计算机构成,这一类在工业现场应用较多。20世纪80年代后期,数据采集发生了很大的变化,工业计算机、单片机和大规模集成电路的组合,用软件管理,是系统的成本减低,体积变小,功能成倍增加,数据处理能力大大加强。820世纪90年代至今,在国际上技术先进的国家,数据采集系统已成功的运用到军事、航空电子设备及宇航技术、工业等领域。由于集成电路制造技术的不断提高,出现了高性能、高可靠的单片机数据采集系统(DAS)。数据采集技术已经成为一种专门的技术,在工业领域得到了广泛的应用。该阶段的数据采集系统采用模块式结构,根据不同的应用要求,通过简单的增加和更改模块,并结合系
9、统编程,就可扩展或修改系统,迅速组成一个新的系统。8尽管现在以微机为核心的可编程数据采集与处理采集技术的发展方向得到了迅速的发展,而且组成一个数据采集系统只需要一块数据采集卡,把它插在微机的扩展槽内并辅以应用软件,就能实现数据采集功能,但这并不会对基于单片机为核心的数据采集系统产生影响。相较于数据采集板卡成本和功能的限制,单片机具多功能、高效率、高性能、低电压、低功耗、低价格等优点,而双单片机又具有精度较高、转换速度快、能够对多点同时进行采集,因此能够开发出能满足实际应用要求的、电路结构简单的、可靠性高的数据采集系统。这就使得以单片机为核心的数据采集系统在许多领域得到了广泛的应用。1.2 国内
10、外研究现状数据采集系统是通过采集传感器输出的模拟信号并转换成数字信号,并进行分析、处理、传输、显示、存储和显示。它起始于20世纪中期,在过去的几十年里,随着信息领域各种技术的发展,在数据采集方面的技术也取得了长足的进步,采集数据的信息化是目前社会的发展主流方向。各种领域都用到了数据采集,在石油勘探、科学实验、飞机飞行、地震数据采集领域已经得到应用。我国的数字地震观测系统主要采用TDE-124C型TDE-224C型地震数据采集系统。近年来,又成功研制了动态范围更大、线性度更高、兼容性更强、低功耗可靠性的TDE-324C型地震数据采集系统。该数据采集对拾震计输出的电信号模拟放大后送至A/D数字化,
11、A/D采用同时采样,采样数据经DSP数字滤波处理后,变成数字地震信号。该数据采集系统具备24位A/D转化位数,采样率有50HZ、100HZ、200HZ。8由美国PASCO公司生产的“科学工作室”是将数据采集应用于物理实验的崭新系统,它由3部分组成:(1)传感器:利用先进的传感技术可实时采集技术可实时采集物理实验中各物理量的数据;(2)计算机接口:将来自传感器的数据信号输入计算机,采样速率最高为25万次/S;(3)软件:中文及英文的应用软件。8受需求牵引,新一代机载数据采集系统为满足飞行实验应用也在快速地发展。如爱尔兰ACRA公司2000年研发推出的新一代KAM500机载数据采集系统到了2006
12、年。本系统采用16位(A/D)模拟数字变换,总采样率达500K/S,同步时间为+/-250ns,可以利用方式组成高达1000通道的大容量的分布式采集系统。1.3 该课题研究的主要内容内容数据采集技术是信息科学的重要分支之一, 它研究信息数据的采集、存储、处理以及控制等问题。它是对传感器信号的测量与处理, 以微型计算机等高技术为基础而形成的一门综合应用技术。数据采集也是从一个或多个信号获取对象信息的过程。随着微型计算机技术的飞速发展和普及,数据采集监测已成为日益重要的检测技术,广泛应用于工农业等需要同时监控温度、湿度和压力等场合。数据采集是工业控制等系统中的重要环节,通常采用一些功能相对独立的单
13、片机系统来实现,作为测控系统不可缺少的部分,数据采集的性能特点直接影响到整个系统。尽管现在以微机为核心的可编程数据采集与处理技术作为数据采集技术的发展方向得到了迅速的发展,并且适于通用微机(如IBM PC 系列) 使用的板卡级数据采集产品也已大量出现,组成一个数据采集系统简单到只需要一块数据采集卡,把它插在微机的扩展槽内,并辅以应用软件,就能实现数据采集功能,但这并不会对基于单片机为核心的数据采集系统产生影响,因为单片机功能强大、抗干扰能力强、可靠性高、灵活性好、开发容易等优点,使得基于单片机为核心的数据采集系统在许多领域得到了广泛的应用.传统的基于单片机的数据采集系统由于没有上位机的支持,不
14、管采用什么样的数据存储器,它的存储容量都是有限的,所以不得不对存储的历史数据进行覆盖刷新,这样不利于用户对数据进行整体分析,因而也不能对生产过程的状况进行准确的把握。本系统采用下位机负责模拟数据的采集,从单片机负责采集八路数据,并应答主机发送的命令,上位机即主机是负责处理接受过来的数字量的处理及显示,主机和从机之间用RS-232进行通信。这样用户可以在上位机上编写各种程序对文件中的数据进行有效查询和分析,有利于工业过程的长期正常运行和检查。该系统采用的是AT89S52单片机,此芯片功能比较强大,能够满足设计要求。2. 方案论证及选择2.1 方案一本方案采用AT89C52单片机、ADC0809作
15、为A/D转换器、RS-232C作为串行口、LED数码管作为显示部分以及用按键开关作为通道切换,每只按键接单片机的一条I/O线,通过对线的查询可识别各按键状态。原理图如图2.1所示。图2.1 方案一原理框图2.2 方案二本方案硬件电路采用AT89C51单片机最小系统、ADC0809模数转换电路、HD7279键盘控制与LED显示电路、RS-232C串行通信电路四部分组成。该方案较一来说,键盘控制比方案一更加方便,且实现简单。原理图如图2所示。图2.2 方案二原理框图2.3 方案选择为了节省资源以及考虑到各器件性价比方面,选择方案一作为最终方案。89C51市面上已被许多新型单片机取代,故采用现阶段主
16、流的AT89C52单片机。而ADC0809为逐渐逼近式A/D转换器,它是一种速度快、精度较高、成本较低的直接式转换器,其转换时间在几微秒到几百微秒之间。在显示部分采用动态扫描显示法选择性价比更高的LED数码管。通道选择方面,通过对硬件的优化使得避免使用键盘,而只需两个按键开关去实现通道切换。3. 硬件部分该系统是一个上、下位式多路数据采集系统,下位机用单片机实现,负责数据处理和显示,上位机负责将采集到的数据用坐标的形式动态描绘出结果。上位机和下位机之间用RS-232进行通信。该部分由AT89C52、ADC0809、MAX232、LED数码显示器组成。3.1 单片机3.1.1 单片机的概述单片机
17、是一种集成的电路芯块采用了超大规模技术把具有运算能力(如算术运算、逻辑运算、数据传送、中断处理)的微处理器(CPU),随机存取数据存储器(RAM),只读程序存储器(ROM),输入输出电路(I/O口),可能还包括定时计数器,串行通信口(SCI),显示驱动电路(LCD或LED驱动电路),脉宽调制电路(PWM),模拟多路转换及A/D转换器等电路集成到一块单片机上,构成一个最小然而很完善的计算机系统。这些电路能在软件的控制下准确快速的完成程序设计者事先规定的任务。总的而言单片机的特点可以归纳为以下几个方面:集成度高、存储容量大、外部扩展能力强、控制功能强、低电压、低功耗、性能价格比高、可靠性高这几个方
18、面。9单片机按内部数据通道的宽度,可分为4位、8位、16位及32位单片机。它们被应用在不同领域里,8位单片机由于功能强大,被广泛的应用在工业控制、智能接口、仪表仪器等各个领域。8位单片机在中、小规模应用场合仍占主流地位,代表了单片机的发展方向,在单片机应用领域发挥越来越大的作用。随着移动通讯、网络技术、多媒体技术等高科技产品进入家庭,32位单片机应用得到了长足发展。纵观单片机的发展过程,可以预示单片机的发展趋势:1、 微型单片化2、 低功耗CMOS3、与多品种共存4、可靠性和应用水平越来越高单片机有着微处理器所不具备的功能,它可以独立地完成现代工业控制所要求的智能化控制功能这就是单片机的最大特
19、点。然而单片机又不同于单板机,芯片在没有开发前,它只是具备功能极强的超大规模集成电路,如果赋予它特定的程序,它便是一个最小的、完整的微机控制系统。它与单板机或个人电脑有着本质的区别,单片机属于芯片级应用,需要用户了解单片机芯片的结构和指令系统以及其它集成电路应用技术和系统设计所需要的理论和技术,用这样特定的芯片设计应用程序,从而使芯片具备特定的智能。93.1.2 单片机最小系统AT89C52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在
20、系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使AT89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。9AT89C52具有以下标准功能: 8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89C52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到
21、下一个中断或硬件复位为止。8单片机最小系统如图3.1所示。图3.1 AT89C52最小系统它一共有40个引脚,引脚又分为四类。其中有四个电源引脚,用来接入单片机的工作电源。工作电源又分主电源、备用电源和编程电源。还有两个时钟引脚XTAL1、XTAL2。还有由P0口、P1口、P2口、P3口的所有引脚构成的单片机的输入/输出(IO)引脚。最后一种是控制引脚,控制引脚有四条,部分引脚具有复位功能。综上所述,单片机的引脚特点是:1、 单片机多功能,少引脚,使得引脚复用现象较多。2、 单片机具有四种总线形式:P0和P2组成的16位地址地址总线;P0分时复用为8位数据总线;ALE、PSEN、RST、EA和
22、P3口的INT0、INT1、T0、T1、WR、RD以及P1口的T2、T2EX组成控制总线;而P3口的RXD、TXD组成串行通信总线。89C52单片机的主要功能l 与MCS-51单片机产品兼容l 8K字节在系统可编程Flash存储器l 1000次擦写周期l 全静态操作:0Hz33Hzl 三级加密程序存储器l 32个可编程I/O口线l 三个16位定时器/计数器l 八个中断源l 全双工UART串行通道l 低功耗空闲和掉电模式l 掉电后中断可唤醒l 看门狗定时器l 双数据指针l 掉电标识符3.2 LED数码管显示器简单的讲,LED数码显示器就是由发光二极管组成的,LED数码显示器有两种连接方式:(1)
23、共阴极接法:把发光二极管的阴极连在一起构成公共阴极,使用时公共阴极接地。每个发光二极管的阳极与输入端相连。(2)共阳极接法。把发光二极管的阳极连在一起构成公共阳极,使用时公共阳极接+5V,每个发光二极管的阴极通过电阻与输入端相连。为了显示字符,要为LED显示器提供显示段码(或称字形代码),组成一个“8”字的七段,再加上1个小数点位,共计八段。各段位码位的对应关系如表3.1所示。9表3.1 段位码对应关系段位码D7D6D5D4D3D2D1D0位码段dpgfedcba本设计用四位共阴数码管作为显示部分。3.3 模数转换器ADC0809在我们所测控的信号中军事连续变化的物理量,而要对这些信号进行处理
24、,则需要将其转换为数字量,A/D转换器就是为了将连续变化的模拟量转换成计算机能接受的数字量。按模拟量转换成数字量的原理可以分为3种:双积分式、逐次逼近式及并行式A/D转换器。而该系统选用的是ADC0809,下面就具体的介绍一下ADC0809的工作原理。ADC0809是八通道的八位逐次逼近式A/D转换器。由单一的5V电源供电,片内带有锁存功能的8选1的模拟开关。由C、B、A的编码来决定所选的模拟通道。转换时间为100us。转换误差为1/2LSB。它的引脚的排列及其功能,其引脚图见图3.3。图3.3 ADC0809引脚图IN7IN0 :八个通道的模拟输入量。ADDA、ADDB、ADDC:模拟通道地
25、址线。当CBA=000时,IN0输入,当CBA=111时,IN7输入。ALE:地址锁存信号。START:转换启动信号,高电平有效。D7D0:数据输出线。三态输出,D7是最高位,D0是最低位。OE:输出允许信号,高电平有效。CLK:时钟信号,最高频率为 640KHZ。EOC:转换结束状态信号。上升沿后高电平有效。Vcc:+5V电源。Vref:参考电压。3.4 串口通信RS-232C计算机与计算机或计算机与终端之间的数据传送可以采用串行通讯和并行通讯二种方式。由于串行通讯方式具有使用线路少、成本低,特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用。在串行通讯时,要求通讯双方都采用一个标准
26、接口,使不同的设备可以方便地连接起来进行通讯。 RS-232-C接口(又称 EIA RS-232-C)是目前最常用的一种串行通讯接口。它是在1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标 准。它的全名是“数据终端设备(DTE)和数据通讯设备(DCE)之间 串行二进制数据交换接口技术标准”该标准规定采用一个25个脚的 DB25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信号的电平加以规定。(1)接口的信号内容 实际上RS-232C的25条引线中有许多是很少使用的,在计算机与终端通讯中一般只使用3-9条引线。RS-232C
27、最常用的9条引线的信号内容。见表3.2所示表3.2 RS-232C引脚序号信号名称符号流向功能2发送数据TXDDTE-DCEDTE发送串行数据3接收数据RXDDTEDCEDTE请求DCE将线路切换到发送方式5允许发送CTSDTE-DCEDCE告诉DTE线路已接通可以发送数据6数据设备准备好DSRDTE-DCEDCE准备好7信号地信号公共地8载波检测DCDDTEDCEDTE准备好22振铃指示RIDTE-DCE表示DCE与线路接通,出现振铃(2)接口的电气特性 在RS-232-C中任何一条信号线的电压均为负逻辑关系。即:逻辑“1”,-5 -15V;逻辑“0” +5 +15V 。噪声容量为2V。即要
28、求接收器能识别低至+3V的信号作为逻辑“0”,高于3V的信号作为逻辑“1”。(3)接口的物理结构 RS-232C接口连接器一般使用型号为DB-25的25芯插头座,通常插头在DCE端,插座在DTE端。一些设备与PC机连接的RS-232-C接口,因为不使用对方的传送控制信号,只需三条接口线,即“发送数据”、“接收数据”和“信号地”。所以采用DB-9的9芯插头座,传输线采用屏蔽双绞线。(4)传输电缆长度 由RS-232C标准规定在码元畸变小于4%的情况下,传输电缆长度应为50英尺,其实这个4%的码元畸变是很保守的,在实际应用中,约有99%的用户是按码元畸变10-20%的范围工作的,所以实际使用中最大
29、距离会远超过50英尺。3.5简介MAX232MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的接口电路,使用+5v单电源供电,可以实现TTL电平与RS-232C电平相互转换的IC芯片。MAX内部结构图如图3.4所示图3.4 MAX内部结构图内部结构基本可分三个部分:第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。第二部分是数据转换通道。由7、8、9、10、11、12、13、14脚构成两个数据通道。其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通
30、道。8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。TTL/CMOS数据从T1IN、T2IN输入转换成RS-232数据从T1OUT、T2OUT送到电脑DB9插头;DB9插头的RS-232数据从R1IN、R2IN输入转换成TTL/CMOS数据后从R1OUT、R2OUT输出。第三部分是供电。15脚GND、16脚VCC(+5v)。引脚结构图如图3.5所示:图3.5 MAX内部结构图其中引脚1-6(C1+、V+、C1_、C2+、C2-、V-)用于电源电压转换,只要在外部接入相应电解电容即可;引脚7-10和引脚11-14构成两组TTL信号电平与RS-232C信
31、号电平的转换电路,对应引脚可直接与单片机串行口的TTL电平引脚和PC的RS-232C电平引脚相连。4. 软件部分该设计软件部分分为下位机与上位机两部分。下位机用KeilUvision4编写程序,上位机用Visual Basic6.0编写程序。4.1 下位机软件部分4.1.1 简介KeilUvision4Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(UVISION)将这些组合在一起。Keil有以下几个特点:1、 全功能的源代码编辑器;2、 器件库用来配置开发工具设置;3、 项目管理器用来创建和维护用户的项目;4、 集成的M
32、AKE工具可以汇编、编译和连接用户嵌入式应用;5、 所有开发工具的设置都是对话框形式的;6、 真正的源代码级的对CPU和外围器件的调试器;7、 高级GDI(AGDI)接口用来在目标硬件上进行软件调试以及和Monitor-51进行通信。4.1.2 下位机软件设计根据数据采集系统的指标要求,由于系统需要实时显示任一通道数据采集结果,所以在显示完采集数据信息后,程序将自动跳回A/D采样环节重复执行。下位机程序流程图如图4.1所示。图4.1 下位机程序流程图按照图4.1所示的程序流程图,用C语言编译的程序见附录C。单片机AT89C52控制ADC0809实行数据采集与转换的程序通过Keil4进行程序的编
33、译与修改,程序编译成功后利用STC-ISP软件把程序的.hex文件下载到单片机中AT89C52。AT89C52控制ADC0809实行数据采集与转换的程序编译界面如图4.2所示。图4.2 下位机程序编译界面从图4.2的左下方的英文字母可以看出程序编译成功,并且生成“最终程序.hex”文件。将生成的“最终程序.hex”通过STC-ISP软件下载到AT89C52单片机中。“最终程序.hex”文件下载到AT89C52成功的界面如图4.3所示。图4.3 下载成功界面4.2 上位机软件部分4.2.1 Visual Basic6.0介绍Visual Basic是Microsoft公司开发的Windows应用
34、程序开发工具,Visual“可视化的”,是一种开发图形户界面(GUI)的方法。英文Visual的意思是“视觉的”,“可视的Basic”这个名字可能抽象了点,但实际上它却是最直观的编程方法,之所以叫做“可视”,你只要看到VB的界面就会明白,实际上你无需编程,就可以完成许多步骤。在VB中引入了控件的概念,在Windows中控件的身影无处不在,如按钮、文本框等,VB把这些控件模式化,并且每个控件都有若干属性用来控制控件的外观,工作方法,能够响应用户操作(事件)。这样你就可以象在画板上一样,随意点几下鼠标,一个按钮就完成了,这些在以前的编程语言下是要经过相当复杂的工作的。(1) Visual Basi
35、c的特点: 可视化的程序设计工具可视化是开发Windows环境下图形用户界面(GUI)的方法,获得所见即所得(WYSIWYGWhat You See Is what You Get)的效果。 集成开发环境。程序的编辑、编译、调试和运行都在同一环境下进行,不必进行环境的切换。 面向对象的程序设计方法。VB采用的是面向对象、事件(消息)驱动的编程机制。 结构化的程序设计语言。仅采用顺序、选择和循环三种结构编制程序,开发的程序易于阅读、修改和维护。 支持多种数据库系统的访问。利用ADO(Active Database Object)或数据控件可以访问多种数据库,如Access、Oracle、DBAS
36、E、FoxPro、Excel、Lotus-1-2-3等。 Active技术可以在VB程序中嵌入其他软件开发的程序,这就使VB能开发集声音、图像、动画、字处理、Web等对象于一体的应用程序。 完备的Help联机帮助功能如果在安装VB时安装了MSDN,就可以随时获得联机帮助。 VB6.0支持开发网络环境、分布式环境及Internet环境下的应用程序,它提供DHTML(Dynamic HTML)设计工具,可以设计动态网页。其操作页面如图4.3所示。图4.3 Visual Basic6.0操作界面(2) 主窗口应用程序窗口,由标题栏、菜单栏和工具栏组成VB的三种工作模式(标题栏总显示当前模式)a) 设
37、计模式:创建应用程序的大多数工作都是在设计时完成的。在设计时,可以设计窗体、绘制控件、编写代码并使用“属性”窗口来设置或查看属性设置值。b) 运行模式:代码正在运行的时期,用户可与应用程序交流。可查看代码,但不能改动它。 c) 中断模式:程序在运行的中途被停止执行时。在中断模式下,用户可查看各变量及不是属性的当前值,从而了解程序执行是否正常。还可以修改程序代码,检查、调试、重置、单步执行或继续执行程序。窗体(Form)设计窗口窗体设计窗口是屏幕中央的主窗口,它可以作为自定义窗口用来设计应用程序的界面。用户可以在窗体中添加控件、图形和图片来创建所希望的外观。每个窗口必须有一个的窗体名字,建立窗体
38、时缺省名为Form1,Form2, . . .。设计窗口如图4.4所示。图4.4 设计窗口(3) 代码(code)窗口在设计模式中,通过双击窗体或窗体上任何对象或通过“工程资源管理器”窗口中的“查看代码”按钮来打开代码编辑器窗口。代码编辑器是输入应用程序代码的编辑器。 代码窗口如图4.5所示。图4.5 代码窗口(4) 属性(properties)窗口属性是指对象的特征,如大小、标题或颜色等数据。在Visual Basic6.0设计模式中,属性窗口列出了当前选定窗体或控件的属性的值,用户可以对这些属性值进行设置。属性窗口如图4.6所示。图4.6 属性窗口(5) 工具箱(ToolBox)窗口工具箱
39、提供一组工具,用于设计时在窗体中放置控件生成应用程序的用户接口。系统启动后缺省的General工具箱就会出现在屏幕左边,上面共有21个常用“部件”。工具箱窗口如图4.7所示。图4.7 工具箱窗口4.2.2 上位机软件设计该上位机软件编写主要用到了串口通信和曲线画图。通过对下位机转换好并通过串口传送至上位机的数据信息进行实时绘图。将下位机采集到的数据通过坐标轴动态显示出来。该设计主要用到Msomm控件一个,timer控件两个,textbox控件四个,combo控件一个,picture控件一个,command控件三个。主要实现以下功能:1. 串口采集数据;2. 用曲线动态显示数据;3. 显示时间;
40、4. 鼠标点击读数(确定所点击位置的横纵坐标)。上位机的操作界面如图4.8所示。图4.8 上位机操作界面5. 电路制作与调试5.1 电路制作5.1.1电路仿真电路的仿真主要通过Proteus软件进行硬件电路的初步设计,能够对各器件进行合理布局,以及验证逻辑是否正确。通过仿真可以避免因电路错误而将器件烧毁,并且能够进一步了解软件程序编写是否正确,能否实现功能。仿真步骤如下:(1).安装Proteus仿真软件。(2).按照设计进行布局,画电路图,并连线。本设计先画出单片机,然后将四位数码管与单片机连接,再将ADC0809与单片机端口连接,进而将四个电位器与ADC0809连接,再将MAX232与RS
41、-232C连接好后与单片机的P3.0、P3.1口相连。最后接电源和地线。 (3).认真检查连线是否正确,各端口设置是否与程序中的一致,是否接电源和地。(4).将生成的.HEX文件导入单片机。(5).点击PLAY,观察是否正常显示及显示结果。(6).改变电位器大小及转换通道,再次观察是否正常显示结果。如图5.1为下位机电路仿真图。图5.1 下位机电路仿真软件仿真遇到的第一个问题是点击Proteus中Play后,四位数码管不显示结果,且电源供电正常,电路连接正确。经测单片机I/O输出端口电平后发现,没有生成.HEX文件,即将程序下载到单片机内,经改后,解决了这个问题。软件仿真遇到的第二个问题是点击
42、Proteus中Play后,四位数码管显示结果不是正常值。经检查发现下位机程序显示模块程序中的语句逻辑出现了问题,当给每个数码管均先用语句熄灭后,再逐个点亮后,显示结果变为正常值。软件仿真遇到的第三个问题是拨动开关后,采集信号通道没有发生改变。经检查后,发现开关另一端应接地,而不是高电平。改过之后,能够实现用开关控制通道。5.1.2 硬件电路制作硬件电路制作包括元器件的选择、电路的焊接以及电路之间的连接。在通过Proteus软件仿真通过后,将电路所需的元器件整理、列表、领取、购买。之后开始在焊接板上进行电路焊接。焊好后,用杜邦线按图接到相应管脚。认真检查电路,确认无误后,开始通电。通电后结果显
43、示于数码管上,通过调节电位器阻值改变电压大小,并观察数码管显示结果是否正常。再按下按键开关以改变通道,之后调节该通道电位器继续观察。下位机硬件实物图如图5.2所示。图5.2 下位机硬件实物图硬件调试遇到的第一个问题是当接通电源后,数码管显示结果不稳定,一直闪烁。起初认为是软件延迟时间过高,在改变延迟值后,数码管依旧闪烁。经过查询资料发现是电流不够,进而给单片机P0口再接一上拉排阻,且将电源功率增大。这一问题便得到解决。调试遇到的第二个问题是当按下按键开关后,电路通道没有切换。经检查发现在焊接电路时两个按键开关的一端均接错,没有与单片机的P1.4和P1.5连接。在重新焊接后,功能得到实现。硬件电
44、路调试遇到的第三个问题是在调试过程中,某次通电后,发现数码管显示的数值一直是174,无论按动开关还是改变电位器阻值都无法改变数码管显示值。经检查发现是在之后的焊接中将ADC0809烧坏。之后将整个电路重新焊接,并采用先焊接底座,之后将芯片插到底座上的方法解决掉这一问题。硬件调试遇到的第四个问题是将下位机用串口与上位机连接后,发现下位机采集到的数据信息无法上传到上位机。遇到这个问题首先想到的是串口电路是否工作正常,用其他已完善的程序下载到单片机后,再次与上位机连接并通过串口调试工具检测,发现数据传输正常,结果正确,便确定了是串口程序出了问题。在反复检查下位机程序、查询资料后,重新改写了部分程序。
45、问题便得到了解决。结论本设计介绍的是基于单片机的多路数据采集系统,用于对4路模拟量进行采集,并显示采集到的数值。本系统使用ADC0809对模拟量进行转换,用ATC89C52单片机作为系统核心,控制ADC0809以及将采集到的数据发送至上位机。通过四位共阴数码管显示转换后的数值,将采集过程中模拟量的变化以及通道的切换用上位机动态显示并以坐标的形式绘制出来。虽然本次设计已基本完成设计目标,但是还有不足之处。主要表现在显示时不够稳定,时而就会出现数值跳变,这种情况是由于杜邦线与排针连接时有松动。若采用PCB制板,将复杂的引脚连接通过制板时绘制到电路中,这种情况就会得到解决。对信号的采集形式有些单一,
46、若能将其他3路分别采集温度、湿度、光照强度信号会提高系统的实用性,可以通过传感器等器件来实现对不同信号形式的采集。致谢致谢人:日期:2013年6月4日参考文献1郭天祥.51单片机c程序教程M.哈尔滨:电子工业出版社,2009.2李建忠.单片机原理及应用(第二版)M .西安:西安电子科技大学社,2008.3谭浩强.C语言设计(第三版)M.北京:清华大学出版社.4童诗白,华成英.模拟电子技术基础M.北京:高等教育出版社,20005严洁.单片机原理及其接口技术M.北京:机械工业出版社,2010.6 Michael Halvorson. Visual Basic 2010入门到精通M.张丽蘋,汤涌涛,曹丹阳.北京:清华大学出版社,2011.7叶红海,李丽敏.基于单片机的多路数据采集系统的设计与实现J.佳木斯大学学报,2008,4:1.8王琳,商周,王学伟.数据采集的发展及应用J.电测与仪表,2004,464:1.9刘刚,秦永左,朱杰斌.单片机原理及应用M.北