1、摘要随着时代科技的迅猛发展,微电子学和计算机等现代电子技术的成就给传统的电子测量与仪器带来了巨大的冲击和革命性的影响。常规的测试仪器仪表和控制装置被更先进的智能仪器所取代,使得传统的电子测量仪器在远离、功能、精度及自动化水平定方面发生了巨大变化,并相应的出现了各种各样的智能仪器控制系统,使得科学实验和应用工程的自动化程度得以显著提高。 温度测量控制系统在工业、农业及人们的日常生活中扮演着一个越来越重要的角色,它对人们的生活具有很大的影响,所以温度采集控制系统的设计与研究有十分重要的意义。如果用人工进行温湿度测量的话,不仅费时费力,而且效率低,且测试的温度及湿度误差都比较大。因此我们需要一种造价
2、低廉,使用方便且测量准确的温湿度检测系统。 为了准确获取现场的温、湿度值, 提出了基于单片机的温、湿度测试系统的设计。现场的温、湿度采集分别使用温度传感器AD590 和湿度传感器HS1101。从测试现场采集到的温、湿度经A/D 转换送单片机进行处理, 然后通过接口芯片与上位机相连, 进行串行通信, 从而以较低的成本、较高的精度实现了现场温、湿度的测试, 具有一定的实用前景。 关键词:温度传感器;湿度传感器;单片机;温湿度检测目 录第一章 引言51.1 课程设计的目的、意义51.2 课程设计的任务、要求51.3 课程设计的时间安排5第二章 方案的比较和论证72. 1温度传感器的选择72. 2 湿
3、度传感器的选择8第三章 系统总体方案设计93.1 温度传感器简介93.1.1 温度传感器主要特性93.1.2 AD590的工作原理103.2.1 湿度传感器主要特性113.2.2 HS1101工作原理123.3 ADC0809 A/D转换器133.3.1 ADC0809的主要特性133.3.2 ADC0809的内部内部逻辑结构133.3.3 ADC0809的引脚结构143.3.4 ADC0809的工作过程153.4 单片机89C51163.5 MAX232资料简介183.5.1 MAX232主要特性183.5.2 MAX232各引脚介绍18第四章 系统的硬件设计和连接204.1 ADC0809
4、与89C51单片机的接口设计204.2 时钟电路的设计214.3 显示电路的设计224.4 报警电路的设计224.5 PC机与89C51的接口电路设计23第五章 系统软件设计255.1 程序流程图265.1.1 T0中断流程图265.1.2 温湿度主程序流程图275.1.3 报警器流程图285.2 程序清单285.2.1 温度采集初始化程序285.2.2 湿度采集初始化程序285.2.3 显示电路程序295.2.4 A/D转换程序295.2.5 制交流蜂鸣器发声程序305.2.6上位机串口通信部分程序31第六章 总结与展望346.1 总结346.2前景展望34参考文献35附录 系统原理图36第
5、一章 引言1.1 课程设计的目的、意义本课程设计是测控技术与仪器专业教学中的一个重要专业实践环节。为了使学生在以后就业中可能接触到的生产现场、生产过程和测控系统的设计有较为深刻的认识,本次实习重点是要求学生能设计完成一个实际的应用系统。通过设计应用系统,使学生对所学的传感器、微机原理、精密仪器与设备、计算机网络、组态软件、PLC设计等方面的知识有更进一步的深刻的认识和掌握,培养学生综合应用所学专业知识和技能分析解决实际问题的能力,熟悉技术设计工作的一般程序和方法。1.2 课程设计的任务、要求通过设计,要求学生在指导教师的指导下,独立完成所分担的课题设计内容。包括:正确选择方案,正确地进行器件的
6、选择,软硬件设计、模拟调试;可能情况下,根据课题设计需要进行必要的实验、调试;绘制相应的电路图;编制软件程序,实现相应的功能;编写设计说明书;参加答辩。1.3 课程设计的时间安排第一周:1、领取任务书,提交本组的实施方案。要求方案中必须包括:题目、原理图、功能方框图,必要的计算及所需的元器件清单。2、学习PROTEL软件,掌握印刷电路板的设计方法;熟悉MCGS及PLC编程软件,掌握其编程方法;第二周:1、绘出正式的电路原理图及相应的印刷电路图。2、认识、检查、测试元器件,制作传感器。3、编制PLC控制程序及组态监控画面,测试。第三周:1、制作印刷电路板;焊接、调试电路;编制软件程序,实现相应的
7、功能;2、对所设计、制作的装置或系统进行调试给出相应的技术性能指标;对调试中所出现的问题进行记录与总结,记录实验数据。第四周:1、编写课程设计总结报告,报告的内容:(1)课题名称;(2)电路工作原理图,主要参数计算,印刷电路图设计的主要步骤与方法;(3)电路主要元器件的名称、技术参数、测试仪器、测试方法;(4)电路的安装、调试的方法与步骤,故障分析及解决的办法;(5)测试结果讨论与误差分析;最后,还要对本次课程设计进行总结,写出在设计中的收获体会,如创新思想、对电路的改进方案、成功的经验、失败的教训等。 2、答辩 3、交设计总结报告第二章 方案的比较和论证当将单片机用作测控系统时,系统总要有被
8、测信号懂得输入通道,由计算机拾取必要的输入信息。对于测量系统而言,如何准确获得被测信号是其核心任务;而对测控系统来讲,对被控对象状态的测试和对控制条件的监察也是不可缺少的环节。传感器是实现测量与控制的首要环节,是测控系统的关键部件,如果没有传感器对原始被测信号进行准确可靠的捕捉和转换,一切准确的测量和控制都将无法实现。工业生产过程的自动化测量和控制,几乎主要依靠各种传感器来检测和控制生产过程中的各种参量,使设备和系统正常运行在最佳状态,从而保证生产的高效率和高质量。2. 1温度传感器的选择方案一:采用热电阻温度传感器。热电阻是利用导体的电阻随温度变化的特性制成的测温元件。现应用较多的有铂、铜、
9、镍等热电阻。其主要的特点为精度高、测量范围大、便于远距离测量。铂的物理、化学性能极稳定,耐氧化能力强,易提纯,复制性好,工业性好,电阻率较高,因此,铂电阻用于工业检测中高精密测温和温度标准。缺点是价格贵,温度系数小,受到磁场影响大,在还原介质中易被玷污变脆。按IEC标准测温范围-200650,百度电阻比W(100)=1.3850时,R0为100和10,其允许的测量误差A级为(0.15+0.002 |t|),B级为(0.3+0.005 |t|)。铜电阻的温度系数比铂电阻大,价格低,也易于提纯和加工;但其电阻率小,在腐蚀性介质中使用稳定性差。在工业中用于-50180测温。 方案二:采用AD590,
10、它的测温范围在-55+150之间,而且精度高。M档在测温范围内非线形误差为0.3。AD590可以承受44V正向电压和20V反向电压,因而器件反接也不会损坏。使用可靠。它只需直流电源就能工作,而且,无需进行线性校正,所以使用也非常方便,借口也很简单。作为电流输出型传感器的一个特点是,和电压输出型相比,它有很强的抗外界干扰能力。AD590的测量信号可远传百余米。综合比较方案一与方案二,方案二更为适合于本设计系统对于温度传感器的选择。2. 2 湿度传感器的选择测量空气湿度的方式很多,其原理是根据某种物质从其周围的空气吸收水分后引起的物理或化学性质的变化,间接地获得该物质的吸水量及周围空气的湿度。电容
11、式、电阻式和湿涨式湿敏原件分别是根据其高分子材料吸湿后的介电常数、电阻率和体积随之发生变化而进行湿度测量的。方案一:采用HOS-201湿敏传感器。HOS-201湿敏传感器为高湿度开关传感器,它的工作电压为交流1V以下,频率为50HZ1KHZ,测量湿度范围为0100%RH,工作温度范围为050,阻抗在75%RH(25)时为1M。这种传感器原是用于开关的传感器,不能在宽频带范围内检测湿度,因此,主要用于判断规定值以上或以下的湿度电平。然而,这种传感器只限于一定范围内使用时具有良好的线性,可有效地利用其线性特性。方案二:采用HS1100/HS1101湿度传感器。HS1100/HS1101电容传感器,
12、在电路构成中等效于一个电容器件,其电容量随着所测空气湿度的增大而增大。不需校准的完全互换性,高可靠性和长期稳定性,快速响应时间,专利设计的固态聚合物结构,由顶端接触(HS1100)和侧面接触(HS1101)两种封装产品,适用于线性电压输出和频率输出两种电路,适宜于制造流水线上的自动插件和自动装配过程等。相对湿度在1%-100%RH范围内;电容量由16pF变到200pF,其误差不大于2%RH;响应时间小于5S;温度系数为0.04 pF/。可见精度是较高的。综合比较方案一与方案二,方案一虽然满足精度及测量湿度范围的要求,但其只限于一定范围内使用时具有良好的线性,可有效地利用其线性特性。而且还不具备
13、在本设计系统中对温度-3050的要求,因此,我们选择方案二来作为本设计的湿度传感器。第三章 系统总体方案设计本设计是基于单片机对数字信号的高敏感和可控性、温湿度传感器可以产生模拟信号,和A/D模拟数字转换芯片的性能,此设计以89S51基本系统为核心的一套检测系统,其中包括A/D转换、单片机、复位电路、温度检测、湿度检测、键盘及显示、报警电路、系统软件等部分的设计。系统总体方框图如图3.0。HS1100湿度检测报警电路上位机显示LED显示ADC0809A/D转换AD590温度检测 单片机89C51图3.0 系统总体框图本设计由信号采集、信号分析和信号处理三个部分组成的:(1) 信号采集 由AD5
14、90、HS1100及多路开关CD4051组成;(2) 信号分析 由A/D转换器ADC0809、单片机89C51基本系统组成;(3) 信号显示 由串行口LED显示器和报警电路组成。3.1 温度传感器简介集成温度传感器AD590是美国模拟器件公司生产的集成两端感温电流源。AD590是电流型温度传感器,通过对电流的测量可得到所需要的温度值。3.1.1 温度传感器主要特性流过器件的电流(A)等于器件所处环境的热力学温度(开尔文)度数:Ir/T=1,式中,Ir流过器件(AD590)的电流,单位为A;T热力学温度,单位为K;AD590的测温范围为-55+150;AD590的电源电压范围为430V,可以承受
15、44V正向电压和20V反向电压,因而器件即使反接也不会被损坏;输出电阻为710m;精度高,AD590在-55+150范围内,非线性误差仅为0.3。3.1.2 AD590的工作原理AD590温度感测器是一种已经IC化的温度感测器,它会将温度转换为电流。其规格如下:温度每增加1,它会增加1A输出电流。可量测范围-55至150。供应电压范围+4V至30V。AD590的接脚图及零件符号如图3.1所示:图3.1 AD590的接脚图及零件符号AD590的输出电流是以绝对温度零度(-273)为基准,每增加1,它会增加1A输出电流,因此在室温25时,其输出电流Io=(273+25)=298A。Vo的值为Io乘
16、上10K,以室温25而言,输出值为2.98V(10K298A)。量测Vo时,不可分出任何电流,否则量测值会不准。AD590的输出电流I=(273+T)A(T为摄氏温度),因此量测的电压V为(273+T)A 10K=(2.73+T/100)V。为了将电压量测出来又需使输出电流I不分流出来,我们使用电压追随器其输出电压V2等于输入电压V。由于一般电源供应较多零件之后,电源是带噪声的,因此我们使用齐纳二极管作为稳压零件,再利用可变电阻分压,其输出电压V1需调整至2.73V。接下来我们使用差动放大器其输出Vo为(100K/10K)(V2-V1)=T/10,如果现在为摄氏28,输出电压为2.8V,输出电
17、压接A/D转换器,那么A/D转换输出的数字量就和摄氏温度成线形比例关系。AD590温度传感器使用原理如图3.2。图3.2 AD590温度传感器使用原理图3.2 湿度传感器简介测量空气湿度的方式很多,其原理是根据某种物质从其周围的空气吸收水分后引起的物理或化学性质的变化,间接地获得该物质的吸水量及周围空气的湿度。电容式、电阻式和湿涨式湿敏原件分别是根据其高分子材料吸湿后的介电常数、电阻率和体积随之发生变化而进行湿度测量的。下面介绍HS1100(顶端接触)/HS1101(侧面接触)湿度传感器及其应用。3.2.1 湿度传感器主要特性(1)监测速度快;(2)高精度和高可靠性;(3)快速响应时间和长期稳
18、定性;(4)使用方便体积小;(5)适用于线性电压输出和频率输出两种电路;(6)适宜于制造流水线上的自动插件和自动装配过程等。相对湿度在1%100%RH范围内,电容量由16pF变到200pF,其误差不大于2%RH、响应时间小于5S、温度系数为0.04pF/,可见精度是较高的。3.2.2 HS1101工作原理 HS1100/HS1101电容传感器,在电路构成中等效于一个电容器件,其电容量随着所测空气湿度的增大而增大。如何将电容的变化量准确地转变为计算机易于接受的信号,常用方法是将该湿敏电容置于555振荡电路中,将电容值的变化转为与之成反比的电压频率信号,可直接被计算机所采集。HS1100/HS11
19、01湿度传感器在不同的相对湿度中的电容值不同,而容值得改变使输出的频率发出相应的改变,HS1100/HS1101的容值随着相对湿度的增大而增大,因此输出频率随着相对湿度值的变大而变小,即频率降低。表2.1给出了输出频率的典型值。图3.3给出了HS1101典型555应用电路。表3.2.2典型频率值(参考点:25,相对湿度:50%,输出频率:6728KHZ)湿度 %RH频率HZ湿度 %RH频率HZ073516066001072247064682071008063303069769061684068531006033 图3.3 典型555应用电路3.3 ADC0809 A/D转换器ADC0809是采
20、样分辨率为8位的、以逐次逼近原理进行模数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。3.3.1 ADC0809的主要特性1)8路输入通道,8位AD转换器,即分辨率为8位。2)具有转换起停控制端。3)转换时间为100s(时钟为640kHz时),130s(时钟为500kHz时)4)单个5V电源供电5)模拟输入电压范围05V,不需零点和满刻度校准。6)工作温度范围为-4085摄氏度7)低功耗,约15mW。3.3.2 ADC0809的内部内部逻辑结构ADC0809是CMOS单片型逐次逼近式AD转换器,内部结构如图3.4所示,它
21、由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近 图3.4 ADC0809的内部结构图3.3.3 ADC0809的引脚结构ADC0809芯片有28条引脚,采用双列直插式封装,如图3.5所示。下面说明各引脚功能。IN0IN7:8路模拟量输入端。2-12-8:8位数字量输出端。ADDA、ADDB、ADDC:3位地址输入线,用于选通8路模拟输入中的一路ALE:地址锁存允许信号,输入,高电平有效。START: AD转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。 图3.5 ADC0809的外部引脚图EOC:
22、AD转换结束信号,输出,当AD转换结束时,此端输出一个高电平(转换期间一直为低电平)。OE:数据输出允许信号,输入,高电平有效。当AD转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ。REF(+)、REF(-):基准电压。Vcc:电源,单一5V。GND:地。ALE为地址锁存允许输入线,高电平有效。当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道的模拟量进转换器进行转换。A,B和C为地址输入线,用于选通IN0IN7上的一路模拟量输入。通道选择表如下表所示。CBA选择的通道00
23、0IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN73.3.4 ADC0809的工作过程首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动 AD转换,之后EOC输出信号变低,指示转换正在进行。直到AD转换完成,EOC变为高电平,指示AD转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平 时,输出三态门打开,转换结果的数字量输出到数据总线上。转换数据的传送 A/D转换后得到的数据应及时传送给单片机进行处理。数据传送的关键问题是如何确认A/
24、D转换的完成,因为只有确认完成后,才能进行传送。为此可采用下述三种方式。(1)定时传送方式对于一种A/D转换其来说,转换时间作为一项技术指标是已知的和固定的。例如ADC0809转换时间为128s,相当于6MHz的MCS-51单片机共64个机器周期。可据此设计一个延时子程序,A/D转换启动后即调用此子程序,延迟时间一到,转换肯定已经完成了,接着就可进行数据传送。(2)查询方式A/D转换芯片由表明转换完成的状态信号,例如ADC0809的EOC端。因此可以用查询方式,测试EOC的状态,即可却只转换是否完成,并接着进行数据传送。3.4 单片机89C5189C51是一种带4K字节闪烁可编程可擦除只读存储
25、器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压、高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简版本。89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案为了设计此系统,此系统采用了89C51单片机作为控制芯片,它具有以下特性:片内程序存储器含有4KB的
26、Flash存储器,允许在线编程,擦写周期可达1000次;片内数据存储器内含128字节的RAM;I/O口具有32根可编程I/O线;具有两个16位I/O线;中断系统具有6个中断源、5个终端矢量、2个中断优先级的中断结构;串行口是一个全双工的串行通信口;具有两个数据指针DPTR0和DPTR1;低功耗节电模式有节电模式和掉电模式;包含3级程序锁定位;具有片内看门狗定时器;灵活的在线片内编程模式(字节和页编程模式);具有断电标志模式POF。89C51引脚如图3.6。各个引脚的功能说明如下: VCC:供电电压。 GND:接地。图3.6 89S51的引脚图P0口:P0口为一个8位漏级开路双向I/O口,每脚可
27、吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。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口被
28、写1时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址1时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入1后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。RST
29、:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。PSEN:外部程序存储器的选通
30、信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。EA/VPP:当/EA保持低电平时,则在此期间外部程序存储(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3.5 MAX232资料简介 MAX232芯片是美信公司专门为电脑的RS-232标准串口设计的单电源电平转换芯片
31、,使用+5v单电源供电。3.5.1 MAX232主要特性1、符合所有的RS-232C技术标准 2、只需要单一 +5V电源供电 3、片载电荷泵具有升压、电压极性反转能力,能够产生+10V和-10V电压V+、V- 4、功耗低,典型供电电流5mA 5、内部集成2个RS-232C驱动器6、MAX232具有双串口,可以分别接单片机的串行通信口或者实验板的其它串行通信接口3.5.2 MAX232各引脚介绍 引脚介绍: 第一部分是电荷泵电路。由1、2、3、4、5、6脚和4只电容构成。功能是产生+12v和-12v两个电源,提供给RS-232串口电平的需要。 第二部分是数据转换通道。由7、8、9、10、11、1
32、2、13、14脚构成两个数据通道。 其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。 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.7 MAX232的引脚图第四章 系统的硬件设计和连接4.1 ADC0809与89C5
33、1单片机的接口设计ADC0809与89C51连接可采取查询方式,也可采用中断方式。下图为中断方式连接电路图。由于ADC0809片内有三态输出锁存器,因此可以直接与89C51接口。这里将ADC0809作为一个外部扩展并行I/O口,采用线选法寻址。由P2.7和WR联合控制启动转换信号端和ALE端,低三位的地址线加到ADC0809的ADDA、ADDB、和ADDC端,所以选中ADC0809的IN0通道的地址为7FF8H。启动ADC0809的工作过程是:先送通道信号地址到ADDA、ADDB和ADDC;由于ALE信号锁存通道地址后,让START有效;启动A/D转换,执行第一条指令,产生WR信号,使得ALE
34、和START有效;锁存通道号并启动A/D转换。AD转换完毕,EOC端发出一正脉冲,申请中断。再中断服务程序中,“MOVE A ,DPTR”指令产生RD信号,使得OE端有效,打开输出锁存器三态门,8位数据便读入到CPU中。 图4.1 DC0809与89C51单片机的接口电路4.2 时钟电路的设计时钟电路是用来产生8031单片机工作时所必须的时钟信号,8031本身就是一个复杂的同步时序电路,为保证工作方式的实现,8031在唯一的时钟信号的控制下严格的按时序执行指令进行工作 ,时钟的频率影响单片机的速度和稳定性。通常时钟由于两种形式:内部时钟和外部时钟。我们系统采用内部时钟方式来为系统提供时钟信号。
35、8031内部有一个用于构成振荡器的高增益反向放大器,该放大器的输入输出引脚为XTAL1和XTAL2,它们跨接在晶体振荡器和用于微调的电容,便构成了一个自激励振荡器电路中的C1、C2的选择在30PF左右,但电容太小会影响振荡的频率、稳定性和快速性。晶振频率为在1.2MHZ12MHZ之间,频率越高单片机的速度就越快,但对存储器速度要求就高。为了提高稳定性我们采用温度稳定性好的NPO电容,采用的晶振频率为12MHZ。时钟电路原理图如图4.2所示:图4.2 时钟电路原理图4.3 显示电路的设计 LED显示以其使用方便,价格低廉等优点而得到广泛应用。它的显示接口按驱动方式可分为静态显示和动态显示两种。静
36、态显示虽然亮度高,无闪动,但具有功耗大,占IO口多,成本高等缺点。在IO口紧张的情况下大多采用动态显示方式。目前,市场上有许多专用的动态显示接口芯片可供选择。但是,这些芯片价格普遍较高,而不适合在廉价系统中应用。有些专用芯片(如MC14489)采用硬件译码方式,显示的信息量有限,难以满足各种要求,影响了它的应用。在此介绍一种价格低廉,效果良好的LED动态显示电路,通过软件译码,串行显示方式,节省大量IO线,不仅能显示数字,而且可以显示大部分英文字母。图4.3 显示电路原理图4.4 报警电路的设计报警电路在微型计算机控制系统中,为了安全生产,对于一些重要的参数或系统部位,都设有紧急状态报警系统,
37、以便提醒操作人员注意,或采取紧急措施。其方法就是把计算机采集的数据或记过计算机进行数据处理、数字滤波,标度变换之后,与该参数上下限给定值进行比较,如果高于上限值(或低于下限值)则进行报警,否则就作为采样的正常值,进行显示和控制。本设计采用峰鸣音报警电路。峰鸣音报警接口电路的设计只需购买市售的压电式蜂鸣器,然后通过MCS-51的1根口线经驱动器驱动蜂鸣音发声。压电式蜂鸣器约需10mA的驱动电流,可以使用TTL系列集成电路7406或7407低电平驱动,也可以用一个晶体三极管驱动。在图中,P1.3接晶体管基极输入端。当P1.3输出高电平“1”时,晶体管导通,压电蜂鸣器两端获得约+5V电压而鸣叫;当P
38、1.3输出低电平“0”时,三极管截止,蜂鸣器停止发声。图4.4是一个简单的使用三极管驱动的峰鸣音报警电路:图4.4 三极管驱动的峰鸣音报警电路三极管驱动的峰鸣音报警电路本设计是为在温湿度测量中对温湿度的上下限超出时的提示报警,接口位于单片机AT89S51的P3.2口,但温湿度过限时,P2.0口被置0,本系统开始工作。4.5 PC机与89C51的接口电路设计现从MAX232芯片中两路发送接收中接收任一路作为接口。应注意其发送,接收的引脚要对应。如果使得T1in收单片机的发送端TXD,则PC机的RS-232的接收端RXD一定要对应接T1out 引脚。同时,R1out 接单片机的RXD引脚,PC机的
39、RS-232的发送端TXD对应接R1in引脚。其接口电路如下图所示:图4.5 PC机与89C51的接口电路原理图第五章 系统软件设计温度控制主程序的设计应考虑以下问题:(1)温湿度采样,数字滤波;(2)越限报警和处理;(3)温度标度转换;(4)温湿度显示。通常,符合上述功能的温度控制程序由主程序和T0中断服务程序两部分组成。在该软件系统中,定时器T0为工作方式1,定时周期为125ms,8次定时器中断为1S,由于实际环境温度和湿度变化是连续和平缓的,故这里采用分段定值平缓滤波算法处理每次测得的温度和湿度值,有效防止了突发干扰使测得值波动很大,导致反馈系统关启工作,影响系统的稳定,提高了系统的抗干
40、扰性。这里所需要注意的是标度变换,下面简单的介绍一下标度变换:标度变换:目的是要把实际采样的二进制值转换成BCD形式的温度值,然后存放到显示缓冲区34H-3BH。对一般线性仪表来说,标度变换公式为: 式中:A0为一次测量仪表的下限;Am为一次测量仪表的上限;AX为实际测量值;N0为仪表下限所对应的数字量;Nm为仪表上限所对应的数字量;NX为测量所得数字量。5.1 程序流程图5.1.1 T0中断流程图恢复现场是否越限?显示重装时间常数报警程序保护现场设定1s时间计数是否到1s?返回NNYY标度变换温湿度数据采样T0中断清标志设堆栈清显示清暂存T0初始化CPU开中断温湿度采样显示串行口初始化扫描键
41、盘开始5.1.2 温湿度主程序流程图5.1.3 报警器流程图返回报警置位报警标志启动报警报警持续计数器置初值5.2 程序清单5.2.1 温度采集初始化程序程序:ORG 0300H;ADCON:MOV DPTR,#0F0FFH; MOV A,#00H;MOVX DPTR,A; HERE:JNB P2.1RE; MOVX A,DPTR; MOV 20H,A; RET ;5.2.2 湿度采集初始化程序ORG 0301HADCON:MOV DPTR,#0F0FFH; MOV A,#00H;MOVX DPTR,A; HERE:JNB P2.2E; MOVX A,DPTR; MOV 20H,A; RET
42、;5.2.3 显示电路程序程序:ORG 0700H;DIS :MOV R5,#04; MOV R0,#30H; MOV DPTR,#TAB;LOOP:MOV A,R0;MOVC A,A+DPTR;MOV SBUF,A;WAIT:JNB T1,WAIT;CLR T1;INC R0;DJNZ R5,LOOP;RET;TAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH;5.2.4 A/D转换程序程序:MAIN:MOV R0,#0A0H MOV R2,#08H SETB IT1 SETB IT2 MOV DPTR,#7FF8H MOVX DPTR,AHERE:
43、 SJMP HERE 5.2.5 制交流蜂鸣器发声程序程序:main.sm;控制交流蜂鸣器发出固定频率的声音;定义I/OBUZZER BIT P1.2;复位入口ORG 0000HLJMP main;定义中断T0中断入口ORG 000BHLJMP T0INTSVC;函数:T0INSVC()Void T0INTSVC() interrupt1T0INTSVC: CLR TR0 MOV TH0,#0FDHMOV TL0,#0C0HSETB TR0CPL BUZZERRETI;主程序main()main:ANL TOMD,#0F0HORL TOMD,01H MOV TH0,#0FDHMOV TL0,#
44、0C0HSETB ET0SETB EA SETB TR0SJMPS $END5.2.6上位机串口通信部分程序程序:ORG 0000HLJMP STARTORG 0080HSTART: MOV A , # 20H MOV TH1 , # 0E6HMOV TL1 , # 0E6HMOV SCON , # 0E0H CLR EA ; 清中断CLR ESCLR ET1SETB TR1ACALL SUB1; 调接收一组数据子程序AJMP ; 通信结束SUB1 :MOV SCON , # 0E0HSETB SM2LOOP :ACALL RESUB; 调接收子程序接收地址码MOV A , R0CLR CSUBB A , # 0F1H ; 是否为0FHJNZ LOOP ; 否, 重新接收地址MOV R7 , # 0F1H ; 是, 回送地址码ACALL T
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100