《大棚温湿度自动控制新版专业系统设计毕业设计方案.doc》由会员分享,可在线阅读,更多相关《大棚温湿度自动控制新版专业系统设计毕业设计方案.doc(72页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、大棚温湿度自动控制系统设计摘 要:本设计是基于STC89C52RC单片机的大棚温湿度自动控制系统,采用SHT10作为温湿度传感器,LCD1602液晶屏进行显示。SHT10使用类似于I2C总线的时序与单片机进行通信,由于它高度集成,已经涉及A/D转换电路,因此使用以便,并且精确、耐用。LCD1602可以分两行显示数据,第一行显示温度,第二行显示湿度。这个控制系统可以测量温室大棚中的温度和湿度,将其显示在液晶屏LCD1602上,同步将其与设定值进行对比,如果超过上下限,将进行报警并启动温湿度调节设备。此外,还可以通过独立式键盘对设定的温湿度进行修改。通过设计系统原理图、用Proteus软件进行仿真
2、,证明了该系统的可行性。核心词:STC89C52RC,SHT10,I2C总线,独立式键盘,温湿度自动控制Abstract: This design is an automatic temperature and humidity controller for greenhouses, with the STC89C52RC MCU being its main controller. It uses the SHT10 as the temperature and humidity sensor, and the LCD1602 to display the messages. The SHT
3、10 uses a timing sequence much like the I2C to communicate with the micro-controller. Because its a highly integrated chip, it already includes an analog to digital converter. Therefore, its quite convenient to use, and also accurate and durable. The LCD1602 can display two lines of messages, with t
4、he first line for temperature and the second line for humidity. The design can measure the temperature and humidity in a greenhouse, and then display it on a LCD1602. Meanwhile, it compares the data with the set limit. If the limit is exceeded, then the system will send out a warning using a buzzer
5、and activate the temperature and humidity controlling equipment. Besides, the set limit can be modified with the independent keyboard. Through schematic design and Proteus simulation, the feasibility of this design has been proved.Keywords: STC89C52RC, SHT10, I2C bus, independent keyboard, temperatu
6、re and humidity control目 录1 前言12 总体方案设计32.1 温湿度控制系统的设计指标规定32.2 系统设计的原则32.2.1 可靠性32.2.2 性价比32.3 方案比较42.3.1 方案一42.3.2 方案二42.4 方案论证52.5 方案选择53 单元模块设计63.1 各单元模块功能简介及电路设计63.1.1 单片机最小系统63.1.2 液晶显示模块83.1.3 温湿度传感器模块83.1.4 报警电路的设计93.1.5 输出电路设计103.1.6 电源的设计123.1.7 按键电路设计133.1.8 串口通信电路143.2 元件清单153.3 核心器件的简介17
7、3.3.1 STC89C52RC173.3.2 SHT10温湿度传感器194 系统软件设计224.1 软件设计的总体构造224.2 重要模块的设计流程框图244.2.1 主程序流程图244.2.2 SHT10子程序流程图254.2.3 LCD1602子程序流程图274.2.4 输出控制子程序流程图284.2.5 键盘扫描子程序流程图294.3 软件设计所用工具314.3.1 Keil uVision4314.3.2 Proteus315 系统调试325.1 用Proteus搭建仿真总图325.2 用Keil对程序进行调试、编译336 结论366.1 系统的功能366.2 系统的指标参数366.
8、3 系统功能分析367 总结与体会388 道谢399 参照文献40附录1 系统的电路原理图41附录2 系统仿真总图42附录3 系统实物照片43附录4 系统源程序44附录5 英文参照资料461 中文翻译462 英文原文491 前言温室大棚作为一种高效的农业生产方式,与老式农业生产方式相比具有很大的长处。温室农业生产可以获得高产和优质的蔬菜、花卉、瓜果,不仅可变化这些产品按自然季节供应的模式,延长其供应期,并且可在不同地方进行种植,达到所谓“地不分东西南北,食不分春夏秋冬”。温室农业可以变化老式农业劳动力冬闲夏忙的安排,以小面积获得高产,减轻大面积的土地压力。温室农业采用适时适量供水的优化用水同步
9、配以微灌和高湿环境,可达到农业用水高效高产,按产品的数量平均计算,节省水分量是很大的。这种设施系统可以从简易到全自动控制,合适多种状况下的选择,特别是对于日光温室、塑料大棚,相对投资较少。若能减少成本、采用经久耐用的低成本采光材料,发展前景将更为广阔,虽然在某些偏远地区的农村、场合,也可以修建单个的温室和塑料大棚,进行环境控制下的蔬菜和瓜果的生产,变化这些地区的生活条件。要想实现温室大棚高效增产的作用,对温湿度的精确控制是极其重要的。温室内空气湿度的日变化受天气、加温及通风换气量的影响,阴天或灌水后室内空气湿度几乎都在90以上。晴天在傍晚关窗至次日上午开窗前温室维持在高湿度。室内湿气遇冷后凝结
10、成水滴附着在薄膜或玻璃的内表面上,待到加温或日出后,室内温度上升,湿度逐渐下降,附着在屋顶上的水滴随之消失。温湿度的较大变化对农作物的生长十分不利,研究成果表白,由于植物体内水分局限性导致气孔关闭,一方面阻碍了CO2的互换,而使饱和作用明显下降,特别是在缺水状况加剧时,给细胞原生质的生化作用带来影响,光合伙用明显下降。而温度在夜间下降过低也会影响光合伙用的效率。因此,非常有必要使用一套温湿度控制系统,以维持温室大棚内的温度、湿度在一种合适的范畴,实现大棚内农作物的水分、养分的有效供应,提高光合伙用的效率,从而达到增产目的。老式的温湿度控制是在温室大棚内部悬挂温、湿度计,通过读取温、湿度值进而理
11、解实际的温度和湿度,然后根据现检测的温湿度与额定值进行比较,看温湿度与否超过限定值,然后进行相应的通风或者相应的洒水。这些操作都是人工的,耗费了大量的人力以及物力。目前,随着国家经济的迅速发展,农业产业规模的进一步提高,大棚中哺育出的农产品品种数量的逐渐增多,对于数量较多而又大型的大棚,老式的温湿度控制措施就浮现了局限性。这规定我们提高温湿度检测与控制技术,来满足对温室大棚建设的需要。在本设计中,采用单片机来控制温湿度,不仅具有便宜、配备简朴和灵活的优势,并且可以大大提高所测温湿度的技术指标,从而可以提高产品的数量和质量。单片机由于它具有功能强、高可靠性、体积小、造价便宜和开发周期短这些优势,
12、广泛用于自动化测量和控制现场设备,特别是在平常生活中发挥的日益重要的作用。这次选用STC89C52RC作为主控制器,可以从按键电路输入设定的温湿度,通过温湿度传感器SHT10对温度、湿度信号进行采集,然后通过I2C总线与单片机通信,并将温湿度显示在液晶屏LCD1602上,单片机把它们与设定的值进行对比后决定与否报警,并启动空调设备对温湿度进行调节。 2 总体方案设计2.1 温湿度控制系统的设计指标规定本文要设计的大棚温湿度自动控制系统,要可以及时、精确地对温室大棚内的温度、湿度进行采集,将其显示在LCD1602液晶显示屏上,然后与设定的上下限值进行比较,如果超过限制则启动温度、湿度控制设备,并
13、通过蜂鸣器报警,直到温湿度回到规定的范畴。此外,还要可以通过按键修改设定的上下限。为了可以满足农业生产的需要,本次设计要达到一下指标:(1)工作环境:温室大棚;(2)温度测量误差:1;(3)测温范畴:0+55;(4)湿度测量误差:5%RH;(5)测湿范畴:0100%RH;(6)通过键盘电路修改上下限:有;(6)温湿度报警:有;2.2 系统设计的原则2.2.1 可靠性可靠性是在设计过程中应当优先考虑的一种因素,一种控制系统必须要能稳定、可靠地工作,才干投入到生产实践中去。如果系统的可靠性不能达标,那么系统浮现故障的也许就会增大,导致很大的损失。这种损失不仅涉及经济上和信誉上的损失,并且也许会对人
14、身安全产生威胁。要提高控制系统的可靠性,那么就要注意如下几种方面:选用的元器件要有很高的可靠性;由于供电电源很容易产生干扰,因此应当对其采用抗干扰措施;对输入输出通道也同样,要采用抗干扰措施;在对电路板的设计时,要合理的布线和接地;软硬件都要进行滤波;系统要有自己诊断功能等。2.2.2 性价比性价比也是一种系统设计中所要考虑的重要因素。性价比高的产品更容易被消费者接受,但是设计过程中不能盲目地追求性价比,它应当建立在对产品性能规定的基本上,一方面要满足性能规定,然后再设法减少产品成本。2.3 方案比较2.3.1 方案一采用PLC作为主控制器。使用PLC的最大长处在于PLC使用梯形图进行编程,编
15、程语言形象直观,难度较低,因此开发周期短,便于扩展。并且PLC抗干扰能力强,工作稳定可靠,这一点已被长期的工业控制实践所证明。继电器键盘输入加热器制冷器加湿器除湿器液晶显示 蜂鸣器报警温湿度传感器 PLC温室大棚 图2.1 用PLC作为主控制器的控制系统2.3.2 方案二使用单片机进行控制。采用STC89C52RC单片机作为主控制器,可以用C语言进行编程,由于它支持ISP在线编程,因此可以通过RS232串口将程序烧录到单片机中,很以便。温湿度传感器SHT10通过I2C总线与单片机连接。温湿度传感器 单片机加热器制冷器加湿器除湿器键盘输入 蜂鸣器报警继电器液晶显示温室大棚图2.2 用单片机作为主
16、控制器的控制系统2.4 方案论证从功能上看,两种控制器都能满足规定。PLC在工业控制领域用得比较多,编程简朴,并且抗干扰能力强。但是本系统是用于温室大棚,并没有其她大型工业设备的干扰。单片机用C语言编程,相对PLC的梯形图要复杂得多,但是编程更为灵活,可以实现复杂的功能。从价格方面上看,单片机就比PLC具有很大的优势。一种单片机只要几块钱,而一种很一般的PLC一般也要几百上千元。此外,中国是农业大国,随着温室大棚越来越普及,农村对温湿度控制系统的需求也会越来越旺盛,因此虽然用单片机开发的周期较长,但是一旦完毕开发,后期生产环节的边际成本很小;而基于PLC的控制系统受制于PLC的高昂价格,价格难
17、以减少。2.5 方案选择PLC和单片机都能作为主控制器进行设计,但是在价格方面单片机具有巨大优势。综上所述,本次设计采用单片机作为主控制器。 3 单元模块设计3.1 各单元模块功能简介及电路设计3.1.1 单片机最小系统 图3.1 单片机最小系统单片机最小系统涉及单片机、电源电路、时钟电路和复位电路。时钟电路用于产生单片机工作时候所必须的时钟信号,单片机在时钟信号的节拍下逐条地执行指令。单片机有两种时钟信号产生方式,一种是内部时钟方式,另一种是外部时钟方式。外部时钟方式是把已有的时钟信号从XTAL1或XTAL2送入单片,一般用于有多种单片机的状况,因此本设计中时钟电路采用内部时钟方式,选用12
18、M的晶振和两个30pF的电容与片内的高增益反相放大器构成一种自激振荡器。电源电路背面的模块中会单独提到,用5V的直流电源。下面着重论述一下复位电路。图3.2 上电+手动复位电路单片机的复位重要有上电复位和手动复位,之因此要进行复位,目的就是为了让单片机进入初始状态,例如让PC指向0000H,这样单片机才干从头运营程序。因此上电的时候就要让单片机复位一次;在运营过程中,如果程序出错,也需要进行手动复位。 本设计中的复位电路就是上电+手动复位电路,复位时要让STC89C52RC的RST引脚得到2个机器周期以上的高电平。先说说上电复位的工作原理,当单片机上电时,电源+5V的Vcc通过10K的电阻对1
19、0uF的电容进行充电。刚上电时,有较大的电流从Vcc经电容、电阻流向GND,由于电容两端的电压不可突变,因此仍然为0V,于是电阻的两端分得5V的电压,即RST引脚此时的电势为5V。随着充电的继续进行,电流会逐渐减小,电阻两端的电压UR=IR也逐渐减小,即RST引脚的电势逐渐减小。过了一定期间,RST引脚两端的电压下降到不再是高电平,只要这个充电的时间不小于单片机两个机器周期,就能使单片机复位。程序运营过程中如果跑飞了、程序运营出错或操作错误使系统处在死锁状态时,就需要用到手动复位。手动复位就是在上电复位电路的电容两边并联一种微动开关,需要手动复位时将其按下,使之接通,RST获得高电平,并且人按
20、动按钮的时间肯定是超过两个机器周期的,于是单片机复位。3.1.2 液晶显示模块测量到的温湿度值将显示到液晶屏LCD1602上,它可以显示2行,每行16个字符。LCD1602共有三个存储器,它们是CGROM、CGRAM和DDRAM。CGROM用来保存LCD1602内部固化的某些字符的字模,例如英文的26个字母的大小写;CGRAM用来保存顾客自己取的字模,例如,如果要显示中文,就必须自己去中文字模,在这里我们都用英语字母,故不用CGRAM;DDRAM用来存储要显示的字符的字模,它和屏幕上的位置是相应的,第一行为00H到0FH,第二行为40H到4FH。在这里需要注意的是,在向LCD1602写入显示数
21、据存储器地址时,根据控制指令的格式,最高位D7为1,因此写入的数据为,第一行80H到8FH,第二行C0H到CFH。它与单片机的接口电路如下图所示: 图3.3 LCD1602与单片机的接口电路 3.1.3 温湿度传感器模块温湿度传感器选用瑞士Sensirion公司生产的SHT10。SHT1X系列共有三个型号:SHT10、SHT11、SHT15,她们都是SMD贴片封装的,她们依次性能越来越好,其中SHT10属于经济型的温湿度传感器。三者的温湿度性能如下图所示。图3.4 SHT1X系列各型号传感器的湿度、温度最大误差从曲线中可以看出,无论是湿度还是温度,SHT10的误差都是最大的,SHT15误差最小
22、,但是它们的价格也相差很大,SHT10多为二三十元一种,而SHT15价格上百。因此,从满足大棚温湿度监测的规定来看,SHT10已经足够,故选用SHT10。SHT10与单片机的接口电路如下所示:图3.5 SHT10与单片机的接口电路SHT10采用类似于I2C的两线制串行总线,一根是时钟线,一根是数据线。数据线要通过一种上拉电阻接到VCC,目的是避免信号冲突,使单片机的引脚只提供低电平,要得到高电平则使该引脚悬空,由上拉电阻提供高电平。3.1.4 报警电路的设计当大棚内的温湿度超过上下限时,除了需要启动温湿度调节器之外,还需要进行报警,这里用到的是蜂鸣器。蜂鸣器为一种采用一体化构造的电子器件, 采
23、用了直流电压来供电,广泛的应用到了计算机、报警器、复印机、电子玩具、电话机、汽车电子设备、定期器等电子产品之中用作发声器。蜂鸣器分为有源蜂鸣器和无源蜂鸣器。有源蜂鸣器由于内部集成了振荡源,因此使用直流电压就可以驱动它鸣叫;无源蜂鸣器内部没有振荡源,因此一般使用2K5K方波来驱动。本设计中使用的是有源蜂鸣器,在它两端加载5V的直流电压就可以使之鸣叫。报警电路设计如下图: 图3.6 报警电路图蜂鸣器工作电流一般为10mA,而单片机的I/O口只能承受几毫安的电流,因此需要加三极管进行驱动。如上图所示,单片机的I/O口中的P1.6接PNP型三极管的基极,当P1.6为低电平时,三极管导通,5V的电压加载
24、到蜂鸣器两端,于是蜂鸣器鸣叫;当P1.6高电平时,三极管截至,蜂鸣器不鸣叫。3.1.5 输出电路设计当温湿度超过限定值后,单片机将输出控制信号,启动加热、制冷、加湿、除湿设备。弱电控制强电,一方面要用到继电器来控制这些大功率的设备,并且为了进一步加强弱电和强电的电气隔离,减少强电设备对单片机控制系统的干扰,需要在前一级加光耦进行隔离。光耦的驱动能力有限,一般电流只能达到30mA左右,局限性以驱动继电器,因此再加一种三极管放大电流。原理如图3.7所示:图3.7 控制电路输出电路有四组,每一组由一种光耦、一种三极管、一种继电器构成。这四组输出电路分别控制加湿、除湿、加热、制冷的设备。光耦选用TLP
25、521-4,它是Toshiba公司生产的四路光耦,由单片机直接驱动。51单片机P0口所能承受的灌电流最大,可以达到26mA。输出系统中的继电器最多同步有两个工作,控制温度的一种,控制湿度的一种。如果设立光耦的发光二极管的电流为10mA,那么两个发光二极管同步导通时单片机的灌电流为20mA,不不小于26mA,符合规定。因此把P0口的引脚接到光耦TLP521-4输入测的发光二极管阴极。继电器选用5V的,驱动继电器需要大概100mA的电流,也就是说驱动继电器的三极管的集电极电流为Ic=100mA。三极管选用直流放大系数为100的9013,根据Ic=Ib,可计算得三极管基极电流Ib=1mA,而Vbe=
26、0.7V,又由于光耦中的光电三极管的集电极、发射极饱和压降Vces=0.3V,因此基极的限流电阻上的压降为(5-Vces-Vbe)=4V,4V/0.001A=4K,由于没有标称值为4K的电阻,因此选择4.7K的。还应当注意到的一点是,光耦有一种参数叫电流传播比(CTR),CTR=Io/IF,及输出端电流的最大值比上输入端的电流,体现了光耦输出电流的能力。如果输入端的电流为20mA,电流传播比为50%的话,那么输入端电流Io最大只能为10mA。在这里,TLP521-4的电流传播比为50%,输出端我们刚刚算出的电流Io=Ib=1mA,因此输入端电流IF最小为2mA,由于电流很小时光耦处在死区,因此
27、要选大点,这里选择IF=10mA。于是,光耦输入端阳极上的限流电阻为R=(5V-0.7V)/0.01A=430,这里选择标称值为470的电阻。此外,这里用的继电器是一般的电磁继电器。通过对电磁继电器和固态继电器进行比较,虽然固态继电器具有无触电、动作速度快、使用寿命长等特点,但是本设计中的继电器只在温湿度超过限定值时才动作,动作频率低,并且固态继电器的价格比电磁继电器高得多,因此综合考虑选择电磁继电器SRD一05VDC一SL-C。3.1.6 电源的设计图3.8 电源电路电源电路是整个系统中非常重要的一部分,本设计中重要用到直流5V电源。要得到5V的直流电源,要通过降压、整流、滤波、稳压四个环节
28、。由于最后的稳压环节,LM7805要得到5V的直流输出,输入与输出要有一定的压差,根据LM7805的数据手册,需要有10V的输入,因此在降压环节把220V的电压降为10V。然后用桥式整流电路把交流电整流为直流电,此时的直流电只是方向不变,但仍按正弦方式变化,是脉动的直流电。因此需要滤波电路将纹波滤掉。C8和C2都用来滤波,但是作用是不同样的。C8是大电容,用电解电容,它的作用是低频滤波,通过充电放电,从而削峰填谷,使电压的脉动成分减少,电压基本保持稳定。而C2是小电容,因此对于高频信号容抗很小,相称于短路,从而滤掉高频信号。需要注意的是,470uF的大电容可以滤低频,为什么不能滤高频,还要单独
29、加一种0.33uF的小电容来滤高频?从理论上来说大电容应当高频、低频都可以,但是由于制造工艺的因素,电解电容的容值做得很大时,它就不再是一种单纯的电容了,它等效于一种电容串联一种电感。在频率较低时,电感L=jwl较小,可以忽视不计,但是当频率很高时,感抗就很大,相称于断路,因此此时这个470uF的大电容不能滤掉高频信号,必须单独加一种小电容。小电容容值小,因此就不存在感抗的问题。滤波完后来,电压的脉动成分已经下降了诸多,但是仍有起伏,因此最后还需加上一种三端集成稳压器,这里选用LM7805,它能将电压稳定在5V。并联在LM7805两端的二极管起保护作用,避免在短路等状况下LM7805输出端的电
30、压比输入端高,从而烧坏LM7805。三端集成稳压器背面又接了一大一小两个电容,再次进行滤波,使电压更稳定。3.1.7 按键电路设计 图3.9 按键电路图键盘分为编码式和非编码式键盘。其中,非编码式键盘又涉及矩阵式键盘和独立式键盘。矩阵式键盘较为复杂,一般用于按键数目较多,而单片机可用的I/O口又比较有限时。本控制系统中只需要用到5个按键,数目较少,并且可用的I/O口充足,故采用独立式键盘,一种按键相应一种单片机的I/O口管脚。本设计中总共用到5个按键式开关,她们用来变化设定的温湿度上下限数值。从S0到S4,分别控制进入温度上下限设立、进入湿度上下限设立、数值加、数值减、确认并退出。本设计中的键
31、盘是低电平有效。未按键时,上拉电阻保证了单片机的I/O口是拟定的高电平;当某个键按下时,I/O口变为低电平。3.1.8 串口通信电路串口通信可分为同步通信和异步通信,在单片机的应用系统中,重要是采用异步串行通信。在设计通信接口时,应当采用原则接口,这样才可以以便而又精确的把单片机和外设有机的连接起来,从而能形成一种测控系统,目前异步串口通信原则有RS一232、RS一422、RS一485原则。其中,RS一232是PC机与通信工业中使用最早的一种串行接口原则。在短距离、较低波特率串行通信中得到了广泛应用。要让单片机和PC机通过串口进行通信,需要进行电平转换,由于尽管单片机有串行通信的功能,但单片机
32、提供的TTL电平和RS232的电平不同样。TTL电平中,电压不不小于0.8V为低电平,高于2.4V为高电平;而RS232电平是负逻辑电平,电压在-3V-15V时为高电平,电压在3V15V时为低电平,因此要通过MAX232这种电平转换芯片进行转换。MAX232是MAXIM公司专为RS-232原则串口设计的单电源电平转换芯片,使用+5V电源供电。合用于终端设备和数据通信设备间的接口,对于双向通信,只需要使用串行输入RXD(引脚2),串行输出TXD(引脚3)和地线GND(引脚5)。其电路连接如图3.10所示;图3.10 串口通信电路MAX232芯片内部有一种电源电压变换器,可以把输入的+5V电压变换
33、为RS232输出电平所需的+10V 电压,采用此芯片接口的串行通信系统值需要接+5V电压即可。MAX232芯片中有两组电平转换的引脚,我们这里只需使用其中一组。打头的字母“T”表达TTL电平,“R”表达RS232电平。R1IN和R2IN表达输入RS232电平,因此与电脑的串口相连;T1IN和T2IN表达输入TTL电平,因此与单片机相连。因此,引脚T1IN、T2IN、R1OUT、R2OUT为接TTLCMOS电平的引脚,引脚T1OUT、T2OUT、R1IN、R2IN为接RS232电平的引脚。MAX232芯片专门为电脑的RS-232原则串口设计的接口电路,使用+5v单电源供电。MAX232就是用来进
34、行电平转换的,该器件涉及2驱动器、2接受器和一种电压发生器电路提供EIA/TIA-232-E电平。可以分别接单片机的串行通信口。MAX232是一种双组驱动器/接受器,片内具有一种电容性电压发生器以便在单5V电源供电时提供EIA/TIA-232-E电平。 3.2 元件清单本次设计需要用到的元器件如下表所示:表3.1 所需元件列表元件型号个数单片机STC89C52RC1显示屏LCD16021温湿度传感器SHT101芯片底座DIP401光耦TLP521-41排针10针10杜邦线20二极管1N40074三极管90121三极管90134电阻10K2电阻4.7K9电阻1K1电阻4704电位器15K1瓷片电
35、容1uF5瓷片电容0.1uF1点解电容10uF1瓷片电容30pF2电平转换芯片MAX2321串口母头DB91电平转换芯片MAX2321USB母座1晶振12MHz1自锁开关6*6*51按键开关6*6*56蜂鸣器1继电器SRD一05VDC一SL-C43.3 核心器件的简介3.3.1 STC89C52RCSTC89C52RC单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单片机,指令代码完全兼容老式8051单片机12时钟/机器周期和6时钟/机器周期可以任意选择。 STC89C52RC的重要性能参数(1)增强型8051单片机,6时钟/机器周期和12时钟/机器周期可以任意选择,指令代码与老式805
36、1单片机是兼容的。(2)通用I/O口(32个):P1/P2/P3是准双向口/弱上拉,P0口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为I/O口用时,需加上拉电阻。 (3)ISP(在线编程)/IAP(在应用可编程):可通过串口下载程序,不需要使用专门的下载器,非常以便快捷。(4)内含8KB的程序存储器,1000次写擦写周期;(5)内含512字节的RAM;(6)32个可编程I/O口线;(7)3个16位定期器/计数器,即定期器 T0、T1、T2(8)6个中断源、5个中断矢量、2级优先权的中断构造;(9)具有一种全双工UART串行通道;(10)掉电模式和低功耗空闲; STC89C52RC重要
37、引脚功能STC89C52RC的管脚排列如图2一2所示:图3.11 STC89C52RC引脚图P0口(P0.0P0.7):P0端口(P0.0P0.7,3932 引脚):P0口是一种漏极开路的8位双向I/O 口。作为输出端口,每个引脚能驱动8个TTL负载,对端口P0写入每个引脚能驱动写入“1”时,可以作为高阻抗输入。在访问外部程序和数据存储器时 在访问外部程序和数据存储器时,P0口也可以提供低8位地址和8位数据的复用总线位数据的复用总线。在进行程序校验的时候,输出指令字节;而在Flash ROM 编程时,接受指令字节。P1口(P1.0P1.7): P1端口(P1.0P1.7,18 引脚):P1口是
38、一种8位双向I/O口,内部已经自带有一种几十K的上拉电阻。对端口写入“1”时,该引脚被悬空,由内部的上拉电阻把引脚拉到高电平,这时候可以作为输入口使用,此时,由于内部自带上拉电阻,因此被外部器件拉低电压的引脚会输出一种电流。P1的输出缓冲器可驱动4个TTL逻辑门。P2 口(P2.0P2.7):P2和P1同样,是一种8 位双向I/O口,内部自带上拉电阻。端口进行写“1”时,该管脚被悬空,由内部自带的上拉电阻将电平拉到高电平。当它被当作输入口使用时,由于内部自带上拉电阻,该引脚在被外部元器件拉低电平的时侯会有电流输出。在对程序存储器(ROM)或16位的外部数据存储器进行读写时,P2口会送出一种高8
39、位地址数据。在进行访问8 位地址的外部数据存储器的时侯,P口线上的内容(也即特殊功能寄存器(SFR)区中P2寄存器内容),在整个访问期间不变化。它的输出缓冲级可以驱动4个TTL逻辑门P3口(P3.0P3.7):P3口,和P1、P2同样,是一种8 位双向I/0 口,内部自带弱上拉。对P3口进行写入“l”时,被内部的上拉电阻拉高且可以作为一种输入端口。作输入端口时,被外部元器件拉低电平的P3口将通过上拉电阻提供电流。P3口除了作为一种一般的I/0口线外,它的第二功能有更重要的用途。P3口输出缓冲级可用来驱动4个TTL逻辑门。RST:复位输入端。在震荡期稳定有效运营状况下,RST端维持两个机器周期的
40、高电平,便可复位器件。PSEN:外部程序存储器的选通信号。低电平有效,在片外程序存储器取指期间,当PSEN有效时,程序存储器的内容将会被送至P0口,在访问外部RAM时,PSEN无效。EAVPP:当EA保持低电平时,则在此期间外部存储器(0000HFFFH),不管与否有内部程序存储器。VCC:电源电压。XTALI:单芯片系统时钟的反向放大器输入端。使用外部振荡器时,连接外部石英晶体和微调电容。XTAL2:系统时钟的反向放大器输出端。当使用片内振荡器时,外部接石英晶体和微调电容。3.3.2 SHT10温湿度传感器SHT10是瑞士Sensirion公司推出的超小型、自校型、高精度、多功能式的智能传感
41、器,采用SMD贴片封装。SHT10温湿度传感器品质卓越,具有很明显的长处,如抗干扰能力强、反映快等。传感器在一块微型电路板上集成了信号解决电路和传感元件,由于自带ADC,因此输出数字信号。传感器采用瑞士Sensirion公司持有专利的CMOSens 技术,因此有极高的稳定性、精确性、靠性性。SHT10涉及一种电容性聚合体湿敏器件、一种基于能隙材料的温度测量元件。SHT10可以用来测量相对湿度、温度和露点等参数。此类智能传感器广泛用于工农业生产、环境监测、通风及空调设备等领域。SHT10的重要性能参数如下:(1)采用两线制数字接口,类似于I2C总线的时序;(2) 测量温湿度的范畴广。湿度测量范畴
42、为0100%RH,温度测量范畴为-40123.8;(3) 测量精度较高,温度的测量误差为0.5,湿度的测量误差为4.5%RH; (4) 湿度值辨别率为14位,温度值输出辨别率为12位,并可以变成12位和8位;(5)将温湿度传感器、信号放大器、A/D转换、IC总线接口所有集成于一种芯片;(6)小体积,可表面贴装;(7)具有可靠的CRC数据传播校验功能;(8)片内装载的校准系数可保证100%互换性;(9)电流消耗低,测量时550A,平均28A,休眠时3A;(10)可给出全校准相对湿度计温度值输出;(11)具有漏点值计算输出功能;电源引脚(VDD),SHT10的供电电压为2.45.5V,这里选择5V
43、;在电源引脚(VDD,GND)之间须加一种100nF的电容,用于去耦滤波。(串行输入(SCK),用于微解决器与SHT10之间的同步通信;串行数据(DATA),用于三态门的数据读取,DATA在SCK时钟下降沿后会发生状态变化,并且在SCK时钟为上升沿时有效。也就是微控制器可在SCK为高电平段去读取有效的数据。在微控制器向SHT10进行数据传送的过程中,必须要保证数据线在时钟线为高电平段时稳定。为了避免发生信号冲突,微控制器仅仅把数据线拉低,在需输出高电平时,微控制器会将引脚置成高阻态,由外部上拉电阻把信号拉为高电平,这里选择10K。SHT10在使用时,在数据线上用一组“启动传播”的时序来表达初始
44、化数据传播。涉及:当SCK时钟为高电平的时侯,DATA翻转至低电平,紧接着SCK变成低电平,随后在SCK时钟为高电平的时侯DATA翻转为高电平。后续的命令涉及3个地址(目前支持“000”)和5个命令位,具体命令集见表4。SHT10会用下述来方式表达已经对的接受到了指令:在第8个SCK的时钟下降沿后,将DATA下拉至低电平(ACK位);在第9个SCK的时钟下降沿后,释放DATA(恢复为高电平)。表3-2 SHT10的命令集命令代码预留0000x温度测量00011湿度测量00101读状态寄存器00111写状态寄存器00110预留0101x1110x软复位,复位接口、清空状态寄存器为默认值,下一种命
45、令前等待至少11ms11110根据上表的命令集,SHT10测量时,发布测量命令(00000101表达的是相对湿度RH,00000011 表达的是温度T)后,控制器等待测量停止后。此过程大概需要11、55、210ms,分别会相应8、12、14位的测量。确切时间与内部的晶振速度有关,最多会有15%的变化。SHT10通过下拉DATA变为低电平,表达测量已结束。控制器在触发SCK时钟前,必须要等待“数据备妥”的信号。接着会传播2个字节的测量数据以及1个字节的CRC奇偶校验。uC需要用下拉DATA为低电平,来确认每个字节。所有数据会从MSB开始,右值有效(例如:对于12位数据,从第5个SCK时钟起算作M
46、SB;而对于8位数据,首字节则无意义)。 4 系统软件设计系统的工作流程是,操作人员在计算机上输入需要设定的温湿度限定值,当设定的温湿度值与检测温湿度值不同步,单片机控制系统则会采用相应的调节动作。此程序流程涉及五个部分,第一部分是主程序,其描述总体构造;第二部分是SHT10温度采集程序,其功能是通过SHT10传感器采集温湿度值,并进行修正;第三部分是LCD1602显示子程序,对LCD1602进行初始化,将温湿度进行显示;第四部分是输出控制子程序,对设定值和实际值进行判断以决定与否进行温湿度的调节;第五部分是按键输入电路,用来修改温湿度上下限值。4.1 软件设计的总体构造本次设计的大棚温湿度自动控制系统由一种主程序调用多种子程序,它们涉及SHT10温湿度采集子程序、LCD1602液晶显示子程序、输出控制子程序、键盘扫描子程序,如下图所示:主程序SHT10温湿度采集子程序LCD1602液晶屏显示子程序输出控制子程序键盘扫描子程序 图4.1 程序总体构造