温湿度控制器(上下限继电器)设计报告
温湿度检测仪的设计报告

报告成绩电子电路综合实验设计报告设计题目:温湿度检测仪的设计学生姓名:学号:专业年级:指导教师:起止日期:2016年5月—2016年6月电气与信息工程学院2016年6月19日目录1 目的与意义---------------------------------------------------------------------------------------------- 12 设计要求------------------------------------------------------------------------------------------------- 13 方案设计------------------------------------------------------------------------------------------------- 13.1 方案一-------------------------------------------------------------------------------------------- 13.2 方案二------------------------------------------------------------------------------------------ 24 系统硬件设计------------------------------------------------------------------------------------------- 24.1 STC89C52主控电路--------------------------------------------------------------------------- 34.2 DTH11温湿度检测电路 ---------------------------------------------------------------------- 44.3 LCD1602液晶屏显示电路 ------------------------------------------------------------------- 55 系统软件设计------------------------------------------------------------------------------------------- 65.1 主程序程序流程图 ---------------------------------------------------------------------------- 65.2 温湿度检测程序 ------------------------------------------------------------------------------- 25.3 LCD1206显示程序 ---------------------------------------------------------------------------- 96 系统测试结果与分析-------------------------------------------------------------------------------- 116.1系统测试结果 -------------------------------------------------------------------------------- 116.2 系统结果分析 -------------------------------------------------------------------------------- 117 总结 ----------------------------------------------------------------------------------------------------- 11参考文献 -------------------------------------------------------------------------------------------------- 11附录 -------------------------------------------------------------------------------------------------------- 12附录A 系统实物图 ----------------------------------------------------------------------------- 12附录B 系统主程序 ------------------------------------------------------------------------------ 121 目的与意义温湿检测在仓库管理、生产制造、气象观测、科学研究、国防军事以及日常生活中有广泛的应用,传统的模拟式温湿度传感器一般都要设计信号调理电路并需要经过复杂的校准和标定过程,因此测量精度难以保证,且在线性度、重复度、互换性、一致性等方面往往不尽人意。
温湿度监控系统设计报告书

温湿度监控系统设计报告书一、引言温湿度监控系统是一种用于实时监测和记录环境温度和湿度的设备。
它可以广泛应用于各种领域,例如医疗、制药、食品储存等。
本报告旨在详细介绍温湿度监控系统的设计过程和技术实现。
二、系统概述1. 项目背景温湿度是影响许多生产和存储过程的重要因素。
为了确保产品质量和食品安全,温湿度监控系统应用广泛。
本项目旨在设计一个高效可靠的温湿度监控系统,用于监控和记录环境中的温湿度值。
2. 设计目标本系统的设计目标包括:- 实时监测和记录环境温度和湿度;- 提供报警功能,一旦温湿度超出设定范围,能够及时通知相关人员;- 支持远程访问和控制,方便用户随时了解监控数据;- 具备数据分析和报表生成功能,提供决策支持。
三、系统设计1. 硬件设计在本系统中,将使用以下硬件设备:- 温湿度传感器:用于测量环境温度和湿度,采集数据并通过数据线传输给中央处理器;- 中央处理器:用于接收温湿度传感器发送的数据,进行数据处理和存储,并负责控制其他硬件设备;- 报警器:当温湿度超出设定范围时,通过声音或光线等方式向用户发出警报;- 通信模块:用于与远程服务器进行数据传输和远程访问。
2. 软件设计- 数据采集与处理:设计一个数据采集程序,在中央处理器上运行,负责接收温湿度传感器发送的数据,并进行处理和存储;- 报警系统:开发一个报警系统,当温湿度超出设定范围时,通过触发警报器进行警示;- 远程访问控制:实现一个远程访问控制系统,允许用户通过互联网随时访问和控制温湿度监控系统;- 数据分析和报表生成:设计一个数据分析程序,对温湿度数据进行统计和分析,并生成相应的报表。
四、系统实现1. 硬件组装和连接将温湿度传感器、中央处理器、报警器和通信模块按照设计要求进行组装和连接。
确保各个硬件设备可以正常工作并相互协调。
2. 软件开发和测试根据设计要求,进行软件的开发和测试。
包括数据采集与处理、报警系统、远程访问控制和数据分析报表生成等功能的实现。
温湿度控制器实训报告

一、实训背景随着现代工业、农业、科研等领域对环境控制要求的不断提高,温湿度控制器作为维持特定环境条件的核心设备,其性能和稳定性显得尤为重要。
本次实训旨在通过实际操作和理论学习,深入了解温湿度控制器的工作原理、结构组成以及应用方法,提高学生对温湿度控制系统的理解与应用能力。
二、实训目的1. 掌握温湿度控制器的基本原理和结构组成。
2. 熟悉温湿度传感器的类型和特点。
3. 学会温湿度控制器的安装、调试和维护。
4. 提高学生对实际工程问题的分析和解决能力。
三、实训内容1. 温湿度控制器工作原理温湿度控制器通过温湿度传感器实时监测环境中的温度和湿度,根据预设的参数对加热器、加湿器、通风机等执行元件进行控制,以达到维持环境稳定的目的。
2. 温湿度传感器实训中使用的温湿度传感器主要有以下几种:- DHT11传感器:数字输出,具有高精度、抗干扰能力强等特点。
- SHT75传感器:模拟输出,具有高精度、稳定性好等特点。
3. 温湿度控制器结构组成温湿度控制器主要由以下部分组成:- 传感器:用于检测环境中的温度和湿度。
- 微控制器:用于处理传感器数据,并根据预设参数控制执行元件。
- 执行元件:包括加热器、加湿器、通风机等,用于调节环境温度和湿度。
- 显示模块:用于显示当前温度和湿度。
- 按键模块:用于设置温度和湿度参数。
4. 温湿度控制器安装与调试- 安装:根据实际需求选择合适的安装位置,确保传感器能够准确反映环境温度和湿度。
- 调试:连接传感器、微控制器和执行元件,设置温度和湿度参数,进行试运行,观察控制器是否能够正常工作。
5. 温湿度控制器维护- 定期检查:检查传感器、微控制器、执行元件等部件是否正常工作。
- 清洁保养:定期清洁传感器、执行元件等部件,防止灰尘、杂物影响控制器性能。
- 更换部件:当传感器、执行元件等部件损坏时,及时更换。
四、实训过程1. 理论学习:通过查阅资料、阅读教材,了解温湿度控制器的工作原理、结构组成、安装调试和维护方法。
温控继电器实验报告

温控继电器实验报告1. 实验目的本实验旨在通过使用温控继电器,了解温度传感器和继电器的原理,并掌握温控继电器的使用方法。
2. 实验原理温控继电器是一种能够根据温度变化自动开关电路的设备。
它由温度传感器和继电器两部分组成。
2.1 温度传感器温度传感器是用来感知环境温度的装置,常见的温度传感器有热敏电阻、热电偶和半导体温度传感器等。
2.2 继电器继电器是一种电磁式开关,当通过控制信号(电流或电压)使其电磁线圈激磁时,可以控制大电流或高压的电路开关。
3. 实验器材实验中我们使用以下器材:- 温控继电器模块- 温度传感器- 电烙铁- 连接线- 电源4. 实验步骤4.1 连接电路首先,将温控继电器和温度传感器通过连接线连接起来。
温度传感器的输入端连接到温控继电器的输入端,输出端连接到温控继电器的输出端。
4.2 设置温度阈值根据实验需求,使用螺丝刀旋转温控继电器上的旋钮,调节温度阈值。
当温度超过设定的阈值时,温控继电器将触发继电器动作。
4.3 连接电源将电源的正负极正确地接入温控继电器模块,确保电路接线正确。
4.4 测试将温度传感器放置在需要监测温度的位置,接通电源开关。
当温度超过设定的阈值时,温控继电器将触发继电器动作,电路将断开或闭合。
5. 实验结果根据实验设置的温度阈值,成功触发了继电器的动作。
在温度超过设定的阈值时,电路断开或闭合,实现了自动开关电路的功能。
6. 实验分析本实验通过温控继电器模块,成功实现了根据温度变化自动开关电路的功能。
温度传感器可以感知环境温度,并通过与温控继电器的连接将温度信号传递给继电器,从而实现对电路的控制。
温控继电器在实际应用中具有广泛的用途,例如用于恒温设备、空调控制、温度报警等。
通过合理设置温度阈值,可以根据实际需要实现对环境温度的自动控制。
7. 实验总结通过本次实验,我们深入了解了温控继电器的原理和使用方法。
温控继电器可实现对温度变化的自动感知和控制,具有重要的应用价值。
继电器控制实验报告

继电器控制实验报告摘要:继电器作为一种常见的电气元件,在电路中广泛应用。
本实验旨在探究继电器的工作原理及其在控制电路中的应用。
通过搭建简单的继电器控制电路,我们研究了继电器在不同输入情况下的切换特性,并分析了其对电路稳定性的影响。
实验结果表明,继电器能够有效地将小功率信号转换为大功率信号,并且具有良好的传输特性,适用于各种自动控制系统中。
1. 引言继电器是一种电器开关装置,通过控制一个电磁线圈的电流,来控制另一个或多个电路的开闭。
它由电磁机构和电动触点组成,常用于自动控制系统、电力系统及仪表仪器等领域。
本实验旨在深入理解继电器的工作原理,并通过实验验证其在电路中的应用。
2. 实验原理2.1 继电器的工作原理继电器的工作原理基于电磁感应现象。
当继电器的电磁线圈中通有电流时,电流产生的磁场将使继电器的铁芯发生磁化,引起磁铁的吸引力,进而使触点发生作动。
利用这种原理,继电器可以将小电流信号转换为大电流信号,并且能够起到隔离、保护和自动控制的作用。
2.2 继电器的构造和型号继电器通常由铁芯、线圈、触点和外壳等部件组成。
根据其用途和工作特性的不同,继电器可以分为吸引式继电器、保持式继电器、交流继电器和直流继电器等多种型号。
其中,吸引式继电器是应用最广泛的一种类型,具有结构简单、使用方便等特点。
3. 实验过程3.1 实验材料- 继电器- 直流电源- 开关- 电阻- 连接线3.2 实验步骤1. 将继电器连接至直流电源,其中电源的正极连接于继电器的一个接线端,而电源的负极则接至继电器线圈的另一个接线端。
2. 连接开关电路。
将一个端子连接至继电器线圈的接线端,另一个端子通过电阻连接至电源的负极。
3. 打开电源,观察继电器的运行情况。
通过动作按钮控制开关,看到继电器的触点是否能够切换。
4. 使用示波器测量继电器在不同输入情况下的切换时间和稳定性。
记录相关数据,并进行分析。
4. 实验结果和分析在实验中,我们发现继电器在受到输入电流时能够正常运行,且触点切换时间短暂且稳定。
温湿度测量仪课程设计报告1

课程设计报告题目:简易温湿度测量仪目录一、设计目的 (2)二、设计器材清单 (2)三、任务要求 (2)1.基本要求 (2)2.发挥部分 (2)四、方案论证 (2)1.采集传感器数据方案 (2)2.键盘扫描方案 (2)3.设置上下限方案 (2)4.显示方案 (2)5.语言选择方案 (3)五、电路与程序设计 (3)1.温湿度采集电路的设计 (3)2.报警电路的设计 (4)3.液晶显示设置 (4)六、测试方案与测试结果 (4)1.测试方案与测试条件 (4)1)硬件测试方案 (4)2)软件测试方案 (5)3)综合测试方案 (5)2.测试结果及其完整性 (5)3测试结果分析 (5)1)硬件结果 (6)2)软件结果 (6)七、实现的功能 (6)八、心得体会 (6)九、参考文献 (6)附录:源程序代码 (7)设计原理图 (18)一:设计目的1、提高对单片机的工作原理的认识。
熟悉相关控制程序。
2、了解传感器的工作原理,学习相关电路知识。
3、通过综合设计,进一步提高动手能力。
二:设计器材AT89C51单片机学习板一个,USB线一根,DHT11传感器一个,蜂鸣器一个,LCD1602液晶显示屏一块,PNP三极管一个,5.1千欧和4.7千欧电阻各一个,插针和杜邦线若干。
三:任务要求利用51学习板和DHT11设计并制作数字式温湿度测量仪。
1. 基本要求1)测量空气温湿度2)通过数码管显示温度和湿度,显示位数精确到个位,要求观察时无闪烁;3)设置温度和湿度的上下限,通过蜂鸣器报警;4)将温度和湿度单位显示在数据后面,温度C、湿度%RH;2. 发挥部分1)温度和湿度报警以不同的声音,并闪烁显示告警项。
2)使用按键来设置上下限,并显示。
3)实现摄氏度与华氏度的转换。
4)采用液晶1602或者12864来显示温湿度情况。
5)其它(如进一步扩展量程和提高精度(显示小数),自动量程转换等)。
四:方案论证采集传感器数据方案通过DHT11直接采集数据,然后进行数据处理。
继电器控制的实验报告

继电器控制的实验报告
《继电器控制的实验报告》
继电器是一种常用的电气控制器件,它可以通过控制小电流来开关大电流,被
广泛应用于各种电气控制系统中。
为了更好地了解继电器的工作原理和控制方法,我们进行了一系列的实验。
实验一:继电器的基本原理
在这个实验中,我们首先学习了继电器的基本原理。
我们使用了一个简单的继
电器电路,通过接通和断开控制电路来观察继电器的工作状态。
通过这个实验,我们深入了解了继电器是如何通过控制小电流来实现开关大电流的功能。
实验二:继电器的控制方法
在第二个实验中,我们学习了继电器的控制方法。
我们使用了不同的电路布置
和控制信号,来观察继电器的响应和工作状态。
通过这个实验,我们掌握了不
同控制方法对继电器的影响,为以后的实际应用提供了重要的参考。
实验三:继电器在电气控制系统中的应用
最后,我们进行了一次继电器在电气控制系统中的应用实验。
我们设计了一个
简单的电气控制系统,并使用继电器来实现对电路的开关控制。
通过这个实验,我们深入了解了继电器在实际应用中的重要性和作用,为今后的工程实践提供
了宝贵的经验。
通过以上一系列的实验,我们对继电器的工作原理、控制方法和实际应用有了
更深入的了解。
这些实验不仅加深了我们对继电器的理论知识,也为我们今后
在电气控制领域的工作提供了重要的实践经验。
继电器作为一种重要的电气控
制器件,将继续在各种电气控制系统中发挥重要作用。
温湿度控制器测试报告

江苏翔盟温湿度控制柜,接线完毕后,通电调试。
调试结果;
1 温度传感器反馈温度范围从空气温度(25摄氏度左右)到用热风枪吹热风温度(50~60摄氏度),满足工作需求。
2 湿度传感器反馈湿度下限到30%左右,不能反馈更低的空气湿度信号,不能满足工作反馈15%的湿度甚至更低的湿度。
在烘干房内测试,测试结果相同,湿度反馈不能满足工作。
从仓库再领了三个温湿度控制器,测试结果基本相同。
湿度反馈均不满足设备正常工况。
从包装和外观观察,包装盒上没品牌,没联系方式,说明书过于简单且印刷模糊,三无产品,建议更换。
2015.4.28。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
温湿度控制器设计报告本设计研究单片机数字温湿度控制器,通过全数字型温湿度传感器测量宽范围的温湿度数据,用来满足恒温湿车间控制、大棚温湿度控制等工农业生产领域需要,要求温湿度测量响应时间快、长期稳定性好,抗干扰能力强,具有较高的应用价值。
一、性能特点●配用全数字型温湿度传感器DHT11,温度测量范围0℃--100℃,湿度测量范围0%RH—90%RH,可以满足一般需要。
若要求更宽测量范围,只需更换温湿度传感器型号,硬件电路及软件程序全兼容。
●温湿度测量响应时间快、长期稳定性好。
●采用先进的专用微处理器芯片STC89C52,可靠性高,抗干扰能力强。
●配用EEPROM芯片A T24C04,使存储的温度上下限和湿度上下限可以掉电永久保存。
●可以通过四个按键方便地实现温湿度上下限的调整。
●当温度或湿度超限后,报警信号点亮相应报警灯。
●配用三极管和继电器,可以通过驱动继电器打开或切断风机、加热器等外部设备。
二、功能说明1、实时测量当前温度值和湿度值,在液晶屏动态显示。
2、可以显示当前允许温度范围,在液晶屏显示,如“20-45”表示允许温度范围为20摄氏度至45摄氏度。
3、可以显示当前允许湿度范围,在液晶屏显示,如“15-60”表示允许湿度范围为15%至60%。
4、当温度低于温度下限时,低温报警灯亮,控制继电器动作。
5、当温度高于温度上限时,高温报警灯亮,控制继电器动作。
6、当湿度低于湿度下限时,低湿报警灯亮,控制继电器动作。
7、当湿度高于湿度上限时,高湿报警灯亮,控制继电器动作。
8、可以通过键盘调整温度上下限和湿度上下限,具体方法是连续按设置键直至温度下限、温度上限、湿度下限、湿度上限相应的位置闪烁,再通过Up键和Down键调整数值,调整完毕继续按设置键进入正常状态。
9、可以保存设置参数至EEPROM中,具体方法是按保存键,此时当前设置参数存盘,重新上电显示新的设置值。
如果不按保存键,所调整的设置参数只在此次运行有效,关电后恢复原先设定值。
三、硬件设计1、设计框图本研究设计的温湿度控制器框图如图1所示。
图1 温湿度控制器方框图图中STC89C52单片机每2秒钟从DHT11温湿度传感器中读入温度和湿度,在液晶屏上即时显示。
液晶屏上同时可以显示温湿度上下限值,该上下限设置值保存外外部EEPROM存储器中,掉电不失,并且可以通过四只按键上调或下调。
当温度或湿度值超过上下限值时,报警信号点亮相应报警灯。
同时该报警信号通过三极管驱动继电器,以控制外部风机或加热器。
2、温湿度传感器器及检测电路图2 DHT11温湿度传感器外型及管脚DHT11温湿度传感器外型及管脚如图2所示。
其中电源引脚的供电电压为3.5--5.5V。
传感器上电后,要等待 1s 以越过不稳定状态在此期间不要发送任何指令。
电源引脚(VDD,GND)之间可增加一个100nF 的电容,用以去耦滤波。
DHT11典型应用电路如图3所示,其连接电路简单,只需要占用控制器一个I/O 口即可完成上下位的连接。
建议连接线长度短于20米时用5K上拉电阻,大于20米时根据实际情况使用合适的上拉电阻,图3 DHT11典型应用电路DHT11数字湿温度传感器采用单总线数据格式,即单个数据引脚端口完成输入输出双向传输。
其数据包由5Byte(40Bit)组成。
一次完整的数据传输为40bit,高位先出。
数据格式如表一:表1 DHT11数据格式3、单片机电路(1) STC89C52 单片机特点●增强型 8051 CPU,1T,单时钟/机器周期,指令代码完全兼容传统8051;●工作电压: 5.5V - 3.5V(5V单片机);●工作频率范围:0~40MHz,相当于普通8051的 0~80MHz;●用户应用程序空间 4K//8K/16k/32K/64K字节;●片上集成1280字节 RAM;●通用I/O口(32/36个),复位后为准双向口/弱上拉(普通8051传统I/O口);●ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器/仿真器。
●每个I/O口驱动能力均可达到20mA,但整个芯片最大不要超过120mA;●可通过串口(P3.0/P3.1)直接下载用户程序,数秒即可完成一片;●有EEPROM功能;●看门狗;●内部集成MAX810专用复位电路(外部晶体12M以下时,复位脚可直接1K电阻到地);●时钟源:外部高精度晶体/时钟,内部R/C振荡器;●用户在下载用户程序时,可选择是使用内部R/C 振荡器还是外部晶体/时钟;●常温下内部R/C 振荡器频率为:5.0V 单片机为: 11MHz ~ 17MHz;●共4个16位定时器,两个与传统8051兼容的定时器/计数器,16位定时器T0和T1,没有定时器2,但有独立波特率发生器做串行通讯的波特率发生器,再加上2路PCA模块可再实现2个16位定时器;●外部中断I/O口4路,传统的下降沿中断或低电平触发中断,并新增支持上升沿中断的PCA模块,Power Down模式可由外部中断唤醒;●通用全双工异步串行口(UART) ;●工作温度范围:-40 ~ +85℃(工业级) / 0 ~ 75℃(商业级) ;封装:PDIP-40, PLCC-44。
(2) STC89C52 单片机管脚及封装STC89C52 单片机有多种封装形式,本设计中选用40DIP封装,其管脚定义如图4所示。
其最小应用系统如图5所示。
图4 STC89C52 管脚图图5 单片机最小系统(4) 单片机电路由STC89C52组成的温湿度控制器单片机系统原理图如图6所示。
图中DATA引脚为温湿度传感器单总线引脚,单片机通过该引脚和传感器通信,读取温湿度数据。
K1、K2、K3、K4为四只调节按键,分别为设置键、上调键、下调键和保存键,用以调整温湿度上下限值并保存数据。
L2、L3、L4、L5为四只报警灯,其中L2为低温报警,L3为高温报警,L4为低湿报警,L5为高湿报警。
图6 单片机系统原理图4、显示电路显示部分采用SMC 1602液晶屏进行数据显示,其主要技术参数为:表2 液晶屏技术指标接口信号说明如表3所示。
表3 液晶屏接口信号说明与单片机接口电路如图7所示。
图7 LCD与单片机接口电路5、温湿度上限存储温湿度阈值存储在EEPROM芯片AT24C04中,并可以通过K1—K4按键调节并保存,其中K1、K2、K3、K4分别为设置键、上调键、下调键和保存键。
AT24C04是IIC芯片,其电路如图8所示。
图8 EEPROM存储电路6、继电器驱动电路当温湿度数据超过正常范围时,单片机发出继电器动作信号。
该低电平信号通过三极管方法,驱动继电器线圈得电,继电器结点动作。
该结点可以控制空调、加热器、抽风机等电器,以控制温湿度范围。
具体电路如图9所示。
图9 继电器电路四、Portel电路图设计Protel是目前国内最流行的通用EDA软件,它是将电路原理图设计、PCB板图设计、电路仿真和PLD设计等多个实用工具软件组合后构成的EDA工作平台,是第一个将EDA软件设计成基于Windows的普及型产品。
它集成了软件界面、仿真功能和PLD设计和信号完整性分析,在此基础上Protel 99SE又增加了一些新的功能,用户使用更加方便灵活。
Protel的功能十分强大,在电子电路设计领域占有极其重要的地位。
它以其强大功能和实用性,逐渐获得广大硬件设计人员的青睐,是目前众多EDA设计软件中用户最多的产品之一。
Protel软件组成Protel软件主要由电路原理图设计模块、印制电路板设计模块(PCB设计模块)、电路信号仿真模块和PLD逻辑器件设计模块等组成,各模块具有强大的功能,可以很好的实现电路设计与分析。
(1) 原理图设计模块(Schematic模块)电路原理图是表示电气产品或电路工作原理的重要技术文件,电路原理图主要由代表各种电子器件的图形符号、线路和结点组成。
图4.1所示为一张电路原理图。
该原理图是由Schematic模块设计完成的。
Schematic 模块具有如下功能:丰富而灵活的编辑功能、在线库编辑及完善的库管理功能、强大的设计自动化功能、支持层次化设计功能等。
(2) 印制电路板设计模块(PCB设计模块)印制电路板(PCB)制板图是由电路原理图到制作电路板的桥梁。
设计了电路原理图后,需要根据原理图生设计成印制电路板的制板图,然后在根据制板图制作具体的电路板。
印制电路板设计模块具有如下主要功能和特点:可完成复杂印制电路板(PCB)的设计;方便而又灵活的编辑功能;强大的设计自动化功能;在线式库编辑及完善的库管理;完备的输出系统等。
(3) 电路信号仿真模块电路信号仿真模块是一个功能强大的数字/模拟混合信号电路仿真器,能提供连续的模拟信号和离散的数字信号仿真。
它运行在Protel的EDA/Client集成环境下,与Protel Advanced Schematic原理图输入程序协同工作,作为Advanced Schematic的扩展,为用户提供了一个完整的从设计到验证仿真设计环境。
在Protel中进行仿真,只需从仿真用元器件库中放置所需的元器件,连接好原理图,加上激励源,然后单击防真按钮即可自动开始。
五、软件编程1、软件流程图本设计软件主程序流程图如图13所示。
图13 主程序流程图2、主程序下面介绍main.c主程序编写,其他程序略。
(1) 头文件和一些宏定义#include <reg52.h>#include "1602.h"#include "dht.h"#include "2402.h"(2) 管脚定义//定义三个LED灯sbit L2=P1^3;sbit L3=P1^4;sbit L4=P1^5;sbit L5=P1^6;sbit Key_SET = P3^2; //设置键sbit Key_UP= P3^3; //加键sbit Key_DOWN = P3^4; //减键sbit Key_SA VE = P3^5; //保存键sbit Relay = P2^0;(3) 常量、变量定义//定义标识volatile bit FlagStartRH = 0; //开始温湿度转换标志volatile bit FlagKeyPress = 0; //有键按下//定义温湿度传感器用外部变量extern U8 U8FLAG,k;extern U8 U8count,U8temp;extern U8 U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata;extern U8 U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_temp;extern U8 U8comdata;extern U8 count, count_r;U16 temp;S16 temperature, humidity;S16 idata TH, TL, HH, HL; //温度上限和湿度上限char * pSave;U8 keyvalue, keySET, keySA VE, keyUP, keyDOWN;//定义变量U16 RHCounter;U8 FlagSet,hide;(4) 各子程序//数据初始化void Data_Init(){RHCounter = 0;L2 = 1;L3 = 1;L4 = 1;TH = 40;TL = 20;HH = 85;HL = 20;keyvalue = 0;keySET = 1;keySA VE = 1;keyUP = 1;keyDOWN = 1;FlagSet = 0;hide = 0;}//定时器0初始化void Timer0_Init(){ET0 = 1; //允许定时器0中断TMOD = 1; //定时器工作方式选择TL0 = 0x06;TH0 = 0xf8; //定时器赋予初值TR0 = 1; //启动定时器}//定时器0中断void Timer0_ISR (void) interrupt 1 using 0{TL0 = 0x06;TH0 = 0xf8; //定时器赋予初值RHCounter ++;//设闪烁标志if (RHCounter>400) hide = 0;else hide = 1;//每2秒钟启动一次温湿度转换if (RHCounter >= 800){FlagStartRH = 1;RHCounter = 0;}}//存入设定值、void Save_Setting(){pSave = (char *)&TL; //地址低位对应低8位,高位对应高8位wrteeprom(0, *pSave); //存温度上限值TH低8位DELAY(500);pSave ++;wrteeprom(1, *pSave); //存温度上限值TH高8位DELAY(500);pSave = (char *)&TH;wrteeprom(2, *pSave); //存温度下限值TL低8位DELAY(500);pSave ++;wrteeprom(3, *pSave); //存温度下限值TL高8位DELAY(500);pSave = (char *)&HL; //地址低位对应低8位,高位对应高8位wrteeprom(4, *pSave); //存湿度上限值HH低8位DELAY(500);pSave ++;wrteeprom(5, *pSave); //存湿度上限值HH高8位DELAY(500);pSave = (char *)&HH;wrteeprom(6, *pSave); //存湿度下限值HL低8位DELAY(500);pSave ++;wrteeprom(7, *pSave); //存湿度下限值HL高8位DELAY(500);}//载入设定值、void Load_Setting(){pSave = (char *)&TL;*pSave++ = rdeeprom(0);*pSave = rdeeprom(1);pSave = (char *)&TH;*pSave++ = rdeeprom(2);*pSave = rdeeprom(3);pSave = (char *)&HL;*pSave++ = rdeeprom(4);*pSave = rdeeprom(5);pSave = (char *)&HH;*pSave++ = rdeeprom(6);*pSave = rdeeprom(7);if ((TL>99)||(TL<0)) TL = 20;if ((TH>99)||(TH<0)) TH = 40;if ((HL>99)||(HL<0)) HH = 20;if ((HH>99)||(HH<0)) HH = 85;}void KeyProcess(uint num){//键盘设置功能:通过设置键和加、减键修改当前设置,只有按下保存键才存盘,否则掉电不保存。