1、摘要随着社会信息科学的发展,控制理论和电子技术也在不断更新,基于微控制器的高度智能化测控技术逐步成为现实。其中以单片机为核心实现数字控制器因其体积小、成本低、功能强、简便易行而得到了广泛的应用。室内湿度测控由于其重要性的日益突出,技术也越来越成熟。本文主要讨论基于AT89S51单片机的以HS1101作为前端湿敏元件的室内湿度检测系统。本系统采用层次化、模块化设计,以HS1101湿敏芯片的传感器作为测量的器件,所得到的数据经过NE555振荡电路处理后,通过ADC0809模数转换器件接入到AT89S51单片机,以单片机为核心对数据进行记录、存储、处理和报警。本文在设计过程中主要做了以下几个方面的工
2、作:一是讨论并选择系统的总体设计方案;二是对传感器、A/D转换器和单片机进行设计和选择;三是对单片机及其跟PC机进行通信的接口进行电路及软件系统的设计。本系统的设计还处于理论阶段,是在论证了各种方案和搜集了各种的资料后提出的一种切实可行的室内湿度监测系统。本系统完全满足一般小实验室的湿度测控系统的要求,实现了对室内湿度状况的全面、实时和长期的监测,也实现了室内湿度检测的自动化智能化。关键词:AT89S51;HS1101;AD转换器;RS-232;传感器目 录第一章前言51.1概述51.2实验室湿度测控的意义51.3实验室湿度测控的现状与发展61.3.1传统的分立式湿度测量61.3.2模拟集成湿
3、度传感器测量61.3.3智能湿度传感器测量61.4本课题的设计方案7第二章湿度测量电路设计82.1传感器的认识82.1.1传感器的静态特性82.1.2传感器的动态特性92.2湿度传感器的选择102.2.1湿度及其表示方法102.2.2湿度传感器HS1101102.3湿度测量电路122.3.1NE555时基电路122.3.2基于555振荡电路的湿度测量电路设计13第三章核心电路的设计143.1ADC0809模数转换器143.1.1ADC0809应用简介143.1.2测湿电路与单片机连接153.1.3湿度误差补偿插值法子程序163.2单片机电路的设计173.2.1MCS-51单片机173.2.2A
4、T89S51单片机173.2.3时钟晶振电路和复位电路183.3总体电路系统193.3.1LED报警设计193.3.2系统总设计203.4电路PCB版图设计22第四章单片机与PC间的串行通讯254.1RS-232-C接口254.2单片机和PC通信连接254.3简单软件设计274.3.1下位机软件设计274.3.2上位机程序设计28第五章结 论29参考文献30致谢31附录32iii- iii -第一章 前言1.1 概述湿度,被定义为表示大气干燥程度的物理量。即在一定的温度下在一定的体积的空气里含有的水汽越少,则空气越干燥;水汽越多,则空气越潮湿。湿度测量技术的发展已有200多年的历史,人们早就发
5、现了人的头发随大气湿度变化而伸长或缩短的现象,因而制成了毛发湿度计。但是人们对于湿度传感器中的湿敏元件的认识,是从1938年美国F.W.Dunnore研制成功浸涂式氯化锂湿敏元件才开始的。无论是在科研、实验生产、粮食储备、军火储备还是植物生长、大学校园里面的实验室元器件的保养,湿度的测量、传输和控制都跟其有着密不分的关系。环境的湿度有人们的视野里出现,并其重要性逐渐提高,使湿度的测控具有与环境温度的测控有着相同的重要意义。为了确保实验生产过程中得到很好的质量保证,为了确保实验室的元器件能够很好延续使用生命周期,湿度测量的提出已经引起了工作者的注意。在现代社会信息科技的不断迅速发展中,计算机技术
6、、网络传输和湿敏元件的高速更新,使得湿度的测量正朝着自动化、网络化发展。在实验室的监控中,湿度测量的出现使得元器件的保养达到更好、使用周期更长、性能保持更好。所以实验室湿度测控有着广阔和应用发展空间。现在技术中,对湿度的测量有方法多种多样,也较为容易实现。但精度和反应度却是各种方法中的瓶颈,本系统的设计就是从精度上和高反应度上进行测控、选器件、系统的设计,尽可能使做出来的系统可以更好更精确更实时地检测到室内湿度的变化,并及时读取数据进行处理,最终显示在个人电脑终端,使得工作者能够在最短的时间内对环境不断发生变化的湿度有着实时的了解,并可以针对不同的状况做出不同的反应。1.2 实验室湿度测控的意
7、义每个实验室都有着自己的微小气候,在其中湿度有着非常重要的影响力。高湿容易使人体散热量增加、容易使人体丧失热蒸发机能,导致热疲劳。实验室湿度高于70%为高气湿,人将感到不适;低于30%为低气湿,人感到口鼻干燥;最舒适的湿度为 40%60%1。在实验室所使用的各种仪器设备中,空气湿度对其影响是非常明显的,无论是使用过程对精度的影响,还是在保养过程中使得容易老化,容易被侵蚀。综上所述,无论是从人体健康的角度还是从元器件使用的角度上看,对实验室的湿度测控的意义都是非常重大的。1.3 实验室湿度测控的现状与发展人们研究湿度测量的历史也算是久远,对在实验室中进行湿度测控也更是随着实验信息技术的发展而不断
8、更新换代。实验室室内湿度测控的发展大致经历了以下三个阶段:传统的分立式湿度测量;模拟集成湿度传感器测量;智能湿度传感器测量2。1.3.1 传统的分立式湿度测量传统的电阻湿度计、半导体湿敏元器件等,都属于分立式湿度测量元件,使用这些元器件来进行测量湿度的,统称为分立式湿度测量。20世纪50年代以来,随着传统的电阻、电容湿度计的出现,湿度测量走向了一个新的台阶。此类测量方法所使用的元件通常不能单独完成测量任务,使用时还需要配上二次仪表,才能完成湿度测量及控制功能。其主要缺点是外围电路比较复杂、测量精度比较低、分辨力不高,还有就是它们的体积比较大、使用起来不够方便。所以,传统的分立式湿度测量方法受到
9、了现在科学技术发展的挑战,已经逐渐被淘汰。到了20世纪90年代,这种室内湿度测控已经很难再找到了。1.3.2 模拟集成湿度传感器测量在20世纪80年代中,采用硅半导体集成工艺的集成湿度传感器问世,它是将湿度传感器集成在一个芯片上、可完成湿度测量及模拟信号输出功能的专用IC,它属于最简单的一种集成湿度传感器。用这种模拟集成湿度传感器来进行实验室室内湿度测控,外围电路是较为简单,所以这种测量方法最为广泛应用。本系统也是基于这样集成IC的传感器HS1101来进行设计的。1.3.3 智能湿度传感器测量智能湿度传感器的未来测量发展的一个重要的方向,也是室内湿度测控的必然发展,更是微电子技术、计算机技术和
10、自动测试技术的结晶。智能湿度测控器也是在智能湿度传感器的基础上发展起来的。智能湿度测控器适配各种微控制器,构成智能化湿敏控制系统;它们还可以脱离微控制器单独工作,自行构成一个温控仪,既可以工作在连续转换模式,亦可选择单次转换模式。进入21世纪的第一个年代,智能湿度测控技术正朝着高精度、多功能、总线标准化、高可靠性及安全性、开发虚拟传感器测量和网络传感器测控、研制单片测量系统等高科技的方向迅速发展。总之,随着计算机技术、应用电子技术、传感器智能化技术、机械电子一体化技术和计算机网络技术研究的发展,室内湿度测控已经成为各个国家在保养电子元器件、实时监测室内湿度等国际市场竞争力的前沿性研究领域。1.
11、4 本课题的设计方案本课题所设计的系统有三个原则:1、操作维护方便,为了利于系统的推广,在设计时应该充分采用操作内置或简化的方法,以尽量减少对操作人员专用知识的要求,也便于进行维修。2、可靠性,本系统所有的环节中,都应该有着可靠性的思想,从选用可靠性高的元器件;供电电源采用抗干扰措施;进行多向滤波等作为出发点。3、性价比,本课题所设计的系统的核心是单片机,它本身有着多个优势,要使得系统能够广泛地应用,在充分考虑可靠性的同时,尽可能降低成本,提高系统的性价比。本文将从以下几个方面展开工作:一是确定测湿电路的设计方案;二是进行单片机核心电路的设计;三是对单片机及通信接口进行简单的概述;四是对所有的
12、工作进行总结。本次课题的设计系统的示意图如图1-1。湿敏元件HS1101振荡电路NE555模数转换ADC0809核心处理器MCU-51个人PC电脑终端图1-1:系统示意图第二章 湿度测量电路设计2.1 传感器的认识传感器是能够感受规定的被测量并按照一定规律转换成可用输出信号的器件或装置。通常由敏感元件和转换元件组成。其中,敏感元件是指传感器中能够直接感受被测量的部分,转换元件指传感器中能将敏感元件输出转换为适于传输和测量的电信号部分。有些国家和有些科学领域,将传感器称为变换器、检测器或探测器等。应该说明,并不是所有的传感器都能明显分清敏感元件与转换元件两个部分,而是二者全为一体。例如半导体气体
13、、湿度传感器等,它们一般都是将感受的被测量直接转换为电信号,没有中间转换环节3。2.1.1 传感器的静态特性所谓传感器的静态特性,是指在稳态信号作用下,传感器输出输入之间的关系特性。衡量传感器静态特性的重要指标有线性度、灵敏度、迟滞和重复性。1. 线性度传感器的线性度用传感器的输出与输入之间的线性程度表示。如果不考虑迟滞和蠕变效应,一般可用下面的多项式表示。(2. 1) 式中:y输出量; x输入物理量; 零位输出; 传感器线性灵敏度; 待定常数。在使用非线性特性的传感器时,如果非线性项的方次不高,在输入量变化范围不大条件下,可以用切线或割线等直线来近似地代表实际曲线的一段。2. 灵敏度灵敏度是
14、指传感器在稳态下输出变化对输入变化的比值,一般用来表示,即(2. 2)式中:输出量的变化; 输入量的变化。对于线性传感器,它的灵敏度就是它的静态特性的斜率。非线性传感器的灵敏度为一变量。一般希望传感器的灵敏度高,在满量程范围内是恒定的,即传感器的输出输入特性为直线。3. 迟滞在相同工作条件下做全量程范围校准时,下行程(输入量由小到大)和反行程(输入量由大到小)所得输出输入特性曲线往往不重合。也就是说,对应同一大小的输入信号,传感器正反行程的输出信号大小不相等,此即迟滞现象。迟滞(或称回程误差)正是用来描述传感器在正反行程期间特性曲线不重合程度的。迟滞的大小常用正反行程最大输出差值对满量程输出的
15、百分比来表示的4。4. 重复性重复性是指在相同工作条件下,输入量按同一方向作全量程多次测试时,所得传感器特性曲线不一致性的程度。多次重复测试的曲线重复性好,误差也小。重复特性的好坏是与许多因素有关的,与产生迟滞现象具有的原因。其它的特性还有分辨力,传感器能检测到的最小输入增量称分辨力,在输入零点附近的分辨力称为阈值;零漂,传感器在零输入状态下,输出值的变化零漂,零漂可用相对误差表示,也可用绝对误差表示。2.1.2 传感器的动态特性传感器动态特性是指输入量随时间动态变化时,其输出与输入的关系。很多传感器要在动态条件下检测,被测量可能以各种形式随时间变化。只要输入量是时间的函数,则其输出量也将是时
16、间的函数,其间的关系要用动态特性来说明。为研究传感器的动态特性,可建立其动态数学模型,用数学中的逻辑推理和运算方法,分拆传感器在动态变化的输入量作用下,输出量如何随时间改变。实际中,输入信号随时间的变化形式多种多样,无法统一研究,所以通常只分析传感器在标准输入信号作用下的输出。研究动态特性可以从时域和频域两个方面采用瞬态响应法和频率响应法来分析。由于输入信号的时候函数形式是多种多样的,在时域内研究传感器的响应特性时,只能研究几种特定的输入时间函数如阶跃函数、脉冲函数和斜坡函数等的响应特性。对于任意输入所引起的响应,可以利用两个函数的卷积关系,即系统的响应等于冲激响应函数同激励的卷积,即(2.
17、3)2.2 湿度传感器的选择2.2.1 湿度及其表示方法在自然界中,凡是有水和生物的地方,在其周围的大气里总是含有或多或少的水汽。大气中含有水汽的多少,表示大气中的干、湿程度,用湿度来表示,也就是说,湿度表示大气干湿程度的物理量。大气湿度有两种表示方法:绝对湿度与相对湿度。绝对湿度绝对湿度表示单位体积空气里所含水汽的质量,其表示为(2. 4)式中: 被测空气的绝对(/,/); 被测空气中水汽的质量(,); V被测空气的体积()。相对湿度:相对湿度是气体的绝对湿度()与同一温度下,水蒸汽已达到饱和的气体的绝对湿度()之比,常用%RH来表示。即(2. 5)式中:待测气体的水汽分压; 同一温度下水蒸
18、汽的饱和水汽压3。2.2.2 湿度传感器HS1101湿度传感器HS1101是基于独特工艺设计的电容元件,这些相对湿度传感器可以大批量生产。可以应用于办公室自动化,车厢内空气质量控制,家电,工业控制系统等。它有以下几个显著的特点:1、 全互换性,在标准环境下不需校正2、 长时间饱和下快速脱湿3、 可以自动化焊接,包括波峰或水浸4、 高可靠性与长时间稳定性5、 专利的固态聚合物结构6、 可用于线性电压或频率输出回路7、 快速反应时间HS1101的简单物照图如图2-15。图2-1:HS1101实物照相对湿度在0%100%RH范围内;电容量由162pF变到200pF,其误差不大于2%RH;响应时间小于
19、5s;温度系统为0.04pF/。可见其精度是较高的。其湿度电容响应曲线如图2-2:20 40 60 80 100 相对湿度% 200 190 180 170 电容F图2-2:HS1101湿度电容响应曲线HS1101的一些常用参数如表2-1:表2-1:HS1101常用参数参数符号参数值单位工作温度Ta-40100储存温度Tstg-40125供电电压Vs10Vac湿度范围RH0100%RH焊接时间=260t10S2.3 湿度测量电路HS1101电容传感器,在电路构成中等效于一个电容器件,其电容量随着所测空气湿度的增大而增大。涉及如何将电容的变化量准确地转变为计算机易于接受的信号时,常用两种方法:一
20、是将HS1101置于运放与阻容组成的桥式振荡电路中,所产生的正弦波电压信号经整流、直流放大、再A/D转换为数字信号;另一种是将HS1101置于555振荡电路中,将电容值的变化转为与之呈反比的电压频率信号,可直接被计算机所采集。2.3.1 NE555时基电路NE555是一个能产生精确定时脉冲的高稳度控制器,其输出驱动电流可达200mA.。在多谐振荡器工作方式时,其输出的脉冲占空比由两个外接电阻和一个外接电容确定;在单稳态工作方式时,其延时时间由一个外接电阻和一个外接电容确定,它可以延时数微秒到数小时。其工作电压范围为:4.5V16V。NE555的框图如图2-3所示5。图2-3:NE555框图2.
21、3.2 基于555振荡电路的湿度测量电路设计图2-4:测湿电路图把HS1101和NE555同时接入电路中的电路设计原理图如图2-4所示。NE555电路功能的简单概括为:当6端和2端同时输入为“1”时,3端输出为“0”;当6端和2端同时输入为“0”时,3端输出为“1”。在此电路中,555定时器正是根据这一功能用作多稳态触发器输出频率信号的。当电源接通时,由于6和2端的输入为“0”,则定时器3脚输出为“1”;又由于C1 两端电压为0,故 通过R2 和R3 对C1充电,当C1 两端电压达到2/3 时,定时电路翻转,输出变为“0”。此时555定时器内部的放电BJT的基极电压为“1”,放电BJT导通,从
22、而使电容C1 通过R3 和内部放电BJT 进行放电,当C1 两端电压降低到/3 时,定时器又翻转,使输出变为“1”,内部放电BJT 截止,VCC 又开始通过R2 和R3 对C1 充电,如此周而复始,形成振荡。其工作循环中的充电时间为=0.7(R2+R3)C1;放电时间为 = 0.7R3*C1; 输出脉冲占空比为q (R2+R3)/(R2+2R3),为了使输出脉冲占空比接近50,R2应远远小于R3。当外界湿度变化时,HS1101 两端电容值发生改变,从而改变定时电路的输出频率。因此只要测出555的输出频率,并根据湿度与输出频率的关系,即可求得环境的湿度6。第三章 核心电路的设计3.1 ADC08
23、09模数转换器在单片机应用中,特别是在实时控制系统中,常常需要把外界连续变化的物理量(如湿度、湿度、压力、流量),变成数字量送入计算机内进行加工处理。反之,也需要将计算机输出的数字量转为连续变化的模拟量,用心控制调节一些执行机构,实现对被控对象的控制。这种由模拟量变为数字量,或由数字量转为模拟量的转换,通常叫做模/数,或数/模转换。用以实现这类转换的器件,叫做模/数(A/D)转换器或数/模(D/A)转换器7。3.1.1 ADC0809应用简介ADC0809具有8路模拟量输入,可在程序控制下对任意通道进行A/D转换,输出8位二进制数字量。其主要性能有:逐次比较型;CMOS工艺制造;单电源供电;无
24、需外部进行零点和满量度调整;可锁存三态输出,输出与TTL兼容;易与各种微控制器接口;具有锁存控制的8路模拟开关;分辨率为8位;功耗为15mW;转换时间()为128;转换精度为8。ADC0809的引脚图如图3-1所示。图3-1:ADC0809引脚图3.1.2 测湿电路与单片机连接NE555的输出端跟ADC0809的IN0通道相接,则ADC0809芯片的地址选通为ADDR0,ADDR1,ADDR2都接地。ADC0809的转换时钟由单片机的ALE提供。ADC0809的典型转换频率为640kHz,ALE信号频率与晶振频率有关,如果晶振频率取12MHz,则ALE的频率为2MHz,所以ADC0809的时钟
25、端CLK与单片机的ALE端相接时,要考虑分频。8051通过地址线P2.0和读写控制线、来控制模拟输入通常地址锁存、启动和输出允许。测湿电路与单片机的连接图如图3-2所示。图3-2:测湿电路与单片机连接图3.1.3 湿度误差补偿插值法子程序从NE555时基电路中输出的是一个模拟信号,ADC0809的作用就是要把这个单片机不能识别的模拟信号转换成一个可以读取的数字信号。这时所用到的计算机思想就是插值法9。即当ADC0809的输入与输出特性为非线性时,可以用一个单调非线性函数来表示。将x的值分成几个小段区间,每个区间的端点都对就一个输出,把这些、编成表格存储起来。实际的测量值一定会落在某个区间内,即
26、。插值法的思想就是用一段简单的曲线近似代替这段区间的实际曲线,然后用近似曲线公式计算出。图3-3是对ADC0809的操作流程图。开始初始化ADC0809(1)发送ADC0809(1)地址启动ADC0809(1)发送读A/D命令读A/D发送ADC0809(2)地址启动ADC0809(2)发送读A/D命令读A/D图3-3:ADC0809操作流程图3.2 单片机电路的设计3.2.1 MCS-51单片机所谓的单片机就是把中央处理器CPU、存储器ROM/RAM、输入输出接口电路以及定时器/计数器等部件制作在一块集成电路芯片中,构成一个完整的微型计算机单片微型计算机。由于单片机把各种功能部件集成在一块芯片
27、上,因此它的结构紧凑、超小型化、可靠性高、价格低廉、易于开发应用。MCS-51单片机包括8031、8051、8751等很多型号,其代表型号为8051。3.2.2 AT89S51单片机本课题所设计的系统的核心采用的是AT89S51单片机,它是一个低功耗、高性能的CMOS8位单片机,片内含有4kBytesISP的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,芯片内集成了通用8位中央处理器和ISP Flash存储单元。它具有以下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个
28、外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内有时钟振荡器。HMOS制造工艺的MCS-51单片机都采用40引脚的双列直插(DIP)方式,CHMOS制造工艺的80C31/80C51除采用DIP封装方式外,还采用PLCC方形的封装方式。图3-4是AT89S51的PDIP封装引脚图10。图3-4:AT89S51的PDIP封装其中,有主电源引脚,外接晶体引脚XTAL1和XTAL2,控制引脚、ALE/、,输入输出接口P0P3。3.2.3 时钟晶振电路和复位电路AT89S51单片机在实际应用中,时钟电路用于产生时
29、钟信号,时钟信号是单片机内部各种各样的微小操作的时间基准,在此基础上,控制器按照指令的功能产生一系列在时间上有一定次序的信号,这些信号用来控制相关的逻辑电路工作,实现指令的功能。复位对单片机来说,是程序还没开始执行,是在做准备工作。本系统在设计上对复位电路设计成上电复位加手动复位。这样使用起来比较方便,就算是在程序“跑飞”时,也可以手动复位,不用再重起单片机电源。其Protel DXP电路图如图3-511。图3-5:AT89S51复位与晶振电路3.3 总体电路系统3.3.1 LED报警设计本设计中,在ST89S51单片机的P1.0口外接一个LED二极管作为对湿度测控的报警输出。当湿敏元件HS1
30、101对室内的湿度检测时,达到某个值,就会在P1.0端口输出高电平,使得LED发亮,以及时通知工作人员进行相关的操作。其电路原理图如图3-6所示。图3-6:系统报警电路3.3.2 系统总设计基于51单片机的HS1101传感器湿度测控系统,主要由几个部分组成:传感器数据采集电路,模数转换电路,LED报警电路,单片机主板电路等。其程序流程图如图3-7所示。开始初始化读湿度湿度转换湿度比较图3-7:系统总流程图从流程图可以知道,本系统在设计过程中包括了几个子程序:读湿度子程序,湿度转换子程序,计算湿度子程序,比较子程序。本系统的部原理图如图4-8所示下面对本次设计的总电路进行说明。首先,AT89S5
31、1单片机具有许多特点,其功能强大、I/O接口多,但其内部的数据暂存存储器的空间其实是比较小的,当用于多位的外围外接芯片时,会出现内部RAM使用不足的状况。所以,在本系统设计中,考虑到目前只是计划应用于较小的机房中,监测点不多,因此本文没有对片内RAM进行扩展或是改换单片机的型号。在实际编程中实现本系统的功能应该没有太大的障碍。AT89S51具有4个I/O接口,它们分别是P0口、P1口、P2口和P3口。本文进行设计时只是用到了其中的部分接口,与本系统的其它部分进行连接,分别实现了不同的功能。例如:P1.0口通过电阻用于LED的外接;P2.0和P0所有接口接ADC0809模数转换器等等。8051的
32、接口通过非门与ADC0809的EOC接口相接,通过两个或非门跟ADC0809的START、ALE和OE相连,这样就可以使得8051可以通过读写控制线来控制输入通道地址的锁存、启动和输出允许。NE555电路中的参数选择为:R11K、R2499K、R3576K、R4909K。其中R1与555的频率输出引脚相连,起输出短路保护作用,防止输出电流过大。R4是用作555定时器内部温度补偿的,其应该具有1%的精度。由于这里采用的是Texas Instruments生产的NE555,所以根据微调R4和R3取值分别为909K和576K。图3-8:系统总原理图3.4 电路PCB版图设计本设计所用到的电路图,是在
33、Protel DXP 2004软件中进行画图的,Protel DXP 2004是目前新一代完整的板级设计工具,它是Altium公司2004年的最新产品。本原理图在Protel中进行编译后,然后确定元件的封装没有问题,再进行网络表的制作。本设计的PCB版图是直接从生成的网络表直接载入的,载入元件封装后,再进行元件的布局。元件的布局一般从以下几个方面考虑:1. 高频元件之间的连线要短,易受干扰的元件不能离得太近。2. 重量太大的元件要有支架固定。3. 易发热元件要远离热敏元件。4. 对于电位器、可调电感线圈、可变电容、微动开关等可调元件的布局要考虑整机的结构要求。5. 预留出电路板的安装孔和支架的
34、安装孔。6. 信号遵循从左边进入、从右边输出,从上边输入、从下边输出。本设计所用的PCB版图如图3-9所示:图3-9:系统PCB版图系统的PCB版图所用的是二层布线,用的是Protel自带的自动布线工具。用Protel软件里面的3D效果图工具可以得到下面的3-10图:图3-10:系统3D效果图本设计的电路中所用到的元件的实物照片如下3-11所示:晶振 集成与非门 ADC0809 NE555 AT89S51 HS1101 图3-11:系统所用元件的实物图第四章 单片机与PC间的串行通讯4.1 RS-232-C接口计算机与计算机之间或计算机与终端之间的数据传送可以采用串行通讯和并行通讯二种方式。其
35、中串行通讯基于它本身的使用线路少、成本低等多个优点而被广泛使用。RS-2323-C接口是目前最为常用的一种串行通讯接口。它是1970年由美国电子工业协会(EIA)联合贝尔系统、调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标准。RS-232接口标准采用25个引脚的连接器其电气特性是:逻辑“1”,-5-15V;逻辑“0”,+5+15V。噪声容限为2V。其物理特性有:传输线采用屏蔽双绞线,传输电缆的长度最大为50英尺。RS-232-C接口也有其不足的地方,主要有:接口的信号电平值较高,易损坏接口电路的芯片;传输速率较低,在异步传输时,波特率为20Kbps;接口的共地传输模式容易产生共模
36、干扰,所以抗噪声干扰性比较弱;传输距离有限等。4.2 单片机和PC通信连接PC机作为上位机,它是对单片机进行各种各样的管理和控制的。本系统在实际设计和编程过程中,对AT89S51和PC机的通信采用了单电源电平转换器ICL232。对于AT89S51的发送和接收,其间的通讯协议如下10:1. 通讯波特率为4800b/s,晶振为12MHz,其中T1为方式2,可以计算得到TH1为F3H和SMOD为1。2. 系统采用串行口方式3,字符格式为1位起始位、8位数据位(低位在前)、1位停止们和TB8=0。3. 发送或接收数据块起始地址存放单元为41H和40H,其中41H为数据块起始地址高字节存放单元,40H为
37、数据块起始地址低字节存放单元;数据块长度存放单元为32H和31H,其中32H为数据块长度高字节存放单元,31H为数据块长度低字节存放单元。4. 8051串行口以中断方式进行发送和接收,发送时先发数据块起始地址低字节和高字节,然后发送数据块长度的低字节和高字节,最后发送数据。数据长度高字节和低字节由主程序在发送前先调入R2和R3中。其发送和接收子程序的流程图如图4-1所示。标记寄存器R2初始化定时器T1为方式2设定T1初值启动T1工作串行口为方式3开中断等待串行口中断标记寄存器R2初始化定时器T1为方式2设定T1初值启动T1工作串行口为方式3,允许接收并开中断等待串行口中断(a)发送子程序流程图
38、 (b)接收子程序流程图 图4-1:RS232发送与接收流程图本系统在Keil uVision2中使用汇编程序来对发送和接收子程序写出简单的程序清单。发送子程序的清单:ORG 1000HMOV R0,#03HORL PCON,#80H ;设定SMOD1MOV TMOD,#20H ;设定T1为方式2MOV TH1,#0F3H ;设定T1值MOV TL1,#0F3HSETB TR1 ;启动T1工作MOV SCON,#0E0H ;串行口方式3,禁止接收MOV IE,#90H ;开串行口中断MOV SBUF,#77 ;数据块始址送发送缓冲器WAIT1: JB ES,WAIT1 ;等待串行口中断RET接
39、收子程序的清单:MOV R0,#03H MOV TMOD,#20H ;设定T1为方式2MOV TH1,#0F3H ;设定T1初值MOV TL1,#0F3H SETB TR1MOV SCON,#0FOH ;启动T1工作MOV IE,#90H ;开串行口中断WAIT2: JB ES,ATIT2 ;等待串行口中断RET4.3 简单软件设计4.3.1 下位机软件设计下位机是直接控制设备获取设备状况的计算机,一般是PLC/单片机之类的。两机如何通讯,一般取决于下位机。TCP/IP一般是支持的。但是下位机一般具有更可靠的独有通讯协议。本系统软件采用汇编语言来实验初始化、数据采集处理、湿度管理和对设备的处理
40、。下位机程序设计通常先进行初始化,如设置中断、定时器、外部可编程器件的初始等,然后循环执行主要功能,并将数据传递给上位机12。上位机上电复位后对数据进行处理并控制LED。为防止程序跑飞,上位机下位机分别设计看门狗电路保证ST89S51正常工作。其软件设计流程图如图4-2所示。开始系统初始化采集湿度数据存储数据正常?启动LED是否向上位机送数据?送上位机YYN图4-2:系统下位机设计流程图4.3.2 上位机程序设计本系统的上位机软件的程序流程图13如图4-3所示。主程序执行全系统的监控和管理;数据收集处理模块,从串行接收获得下位机的状态,整理后进行保存和归档。命令输入模块,从键盘获取命令进行分析
41、、处理;命令分析处理模块,按不同命令要求或修改系统工作模式、调整运行参数或整理数据送串行发送缓冲区,由通信中断服务发送到下位机。系统初始化显示模块数据收集处理模块命令输入模块命令分析处理模块命令处理模块图4-3:上位机流程图第五章 结 论鉴于当前的基于单片机的测控系统中,温度测控有着广泛的应用来成熟的技术,本课题在提出时是基于另一个新颖的角度湿度测控。湿度测控虽然提出较早,但由于其应用的广度和技术的瓶颈,其发展速度有些滞后,除开在温室种植和大型重要仓库中有着重要的地位外,在其它地方往往得不到重视。本文针对平常的实验室的室内湿度的测控作为出发点,将多种信息处理技术和总线通信技术相结合,设计了一套
42、实时的、全面的、可靠的室内湿度测控系统。本设计具有多个特出的方面。1. 在本系统中,采用了模块化、层次化设计。单片机与监控计算机之间采用RS232总线通信标准,用简单、高效的通信电路实现监测数据的读取。2. 能过计算机的实时监测,能够迅速对信息进行采集、报警和处理。并能够存储大量的数据供有关工作人员进行浏览、查询和控制。3. 成功地开发出一套结构简单、性能安全、流程清晰、运用方便、操作简单、效率很高的系统,充分实现了室内湿度测控管理的科学化、系统化和自动化。4. 使用常用的AT89S51单片机作为核心电路,使得系统设计简单,实用性强,可大量开发应用。从最开始的方案分析设计、到后来的系统分析选择
43、,再到最后系统的实现,本人从中学到了不少知识,也积累了很多系统开发的经验。通过对这个系统的开发,使得我自己对电子设计有了一个比较全面的了解,让我真正体会了设计的基本思路和构架。本设计由于时间仓促,准备材料不足的情况下,所设计的系统有着不少不足之处。室内湿度测控是一个复杂而庞大的系统工程,没有一个长期的工作量是很难使得所得到的系统可以达到十分完善。本系统只考虑了湿度的测控,对其它环境的测控如果需要扩展,本文并没有给出作答。还有就是本文在软件设计上有很多欠缺,通信功能只限于连到系统的PC,并没有考虑互联网的通信。本人对该系统的应用前景十分看好,相信未来的对环境的测控中,湿度测控有一个更科学、更智能、更好性能的发展。参考文献1 施昌彦、虞惠霞,实验室质量管理,北京:化学工业出版社,20062 沙占友,智能化集成温度传感器原理与应用,北京:机械工业出版社,20023 刘迎春、叶湘滨,传感器原理设计与应用,长沙:国防科技大学出版社,20044 周旭,现代传感器技术,北京:国防工业出版社,20075 HUMIREL,Relative Humidity Sensor HS1101/HS1101Z。HUMIREL,20026 张萍、黄增双,基于555定时器的数字化测湿方法的研究,自动化技术与应用,26(09):106-107,20067 李林功、吴飞青、王兵、丁晓,