- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于SHT11传感器的温湿度测量系统设计
研究了基于SHT11温湿度传感器和单片机技术的智能温湿度测量系统。系统使用SHT11温湿度传感器实时采集温湿度数据;同时采用AT 89s52单片机进行数据的存储和计算等处理;并通过扩展外围电路设计了一个集多种应用功能于一体的温湿度值检测系统。该系统具有测量精度高、可靠性强、体积小、成本低,且使用操作方便等优点。
随着新技术被应用到温湿度测量领域中,高集成度、智能化、高精度、高可靠性的温湿度一体化检测传感器开始得到应用。SHT11作为新一代的高性能智能传感器,具有广泛的应用前景。本设计介绍了SHT11温湿度传感器的工作原理,并论述了如何利用单片机进行温湿度数据处理以及结合外围电路完成温湿度监视和控制功能。
1传感器工作原理
SHT11智能温湿度传感器的结构如图1所示,该传感器由一片检测相对湿度和温度的混合传感器模块及一个经校准的数字输出组成,两线串行接口和内部电压自动调节,使其具有方便、快速的系统集成。
图1 传感器内部结构图
SHT11系列传感器的优点为:无需外部模拟电子电路,可直接被微控制器访问;温度、供电、电容偏差及剩余电流等变化均不影响精度,即使被浸湿也不会失灵或出现误差。同时具有长期稳定性,无需再校准,且反应速度快、能量消耗低,适用于电池供电。
2硬件设计
设计系统框图如图2所示,采用SHT11传感器采集温湿度数据,利用非自锁按钮式开关组成的键盘向控制部分发出人为的控制信号,再使用DS1302时钟芯片产生实时时间数据。而控制部分采用AT89s52单片机进行各类数据接收、处理和输出。输出部分则采用报警发生电路来报警,并通过液晶显示模块对温湿度和时间等结果信息进行显示。
图2 系统框图
2.1传感器硬件接口电路设计
SHT11通过两线串行接口电路与单片机连接,具体电路如图3所示。其中,串行时钟输入线SCK用于单片机控制器与SHT11之间的通信同步。串行数据线DATA用于内部数据的输出与外部数据的输入。DATA在SCK时钟下降沿之后改变状态,并仅在SCK时钟上升沿后有效。因此,单片机可在SCK高电平时读取数据,而当其向SHT11发送数据时,在SCK时钟下降沿后改变状态,同时保证DATA线上的电平状态在SCK高电平段稳定。
图3 SHT11与单片机的连接
设计中在数据线DATA上加入10 kΩ的上拉电阻。此外,在VDD和GND之间跨接一个100 nF的电容用于去耦滤波。
2.2单片机系统外围电路设计
系统采用的AT89s52是一个低功耗,高性能CMOS 8位单片机,片内含8kB的Flash程序存储器,256 Byte的RAM,40个引脚,32个I/O口,3个16位可编程定时/计数器,5个中断源,2个优先级,1个全双工串行通信口,兼容标准MCS-51指令系统及80C51引脚结构。应用中单片机的最小系统通常包含电源开关、复位电路、晶振电路等相关外围电路,设计中单片机系统部分电路如图4所示。
图4 单片机系统电路图
2.3显示电路设计
系统采用带ST7920汉字液晶控制驱动器的OCMJ4×8C液晶显示模块,该液晶提供8位微处理器接口,带有显示RAM及字型产生器,只需一个最小的微处理系统,便可方便地操作模块。该显示模块内置2 MB中文字型ROM(CGROM)总共提供8 192个中文字型(16×16点阵),16 kB半宽字型ROM(HCGROM)总共提供128个符号字型(16×8点阵),并可与文字画面混和显示。
使用单片机的P0口作为并行数据传输接口,在P0口接入8个1 kΩ的电阻用于提高带负载能力,使其可正常驱动单片机,电路如图5所示。
图5 液晶显示接口电路
2.4其他功能电路设计
如图6所示,系统采用非自锁按钮式开关组成的简单键盘,向单片机发出人为的功能选择和设定控制信号,利用带3 V纽扣电池供电的DS1302时钟芯片产生实时时间数据。同时采用三极管放大电路和蜂鸣器组成的简单报警发生电路报警,而报警电路可通过拔出跨接器P_SP来进行隔离。整个系统采用5 V电源直接供电。
图6 键盘、时钟及报警电路设计
3软件设计
编程主要涉及SHT11传感器的温湿度数据测量和采集、时间数据采集、液晶显示界面、键盘扫描设定及温湿度限值数据比较等读写程序与算法程序的编写。
3.1温湿度测量程序设计
SHT11传感器的工作时序如图7所示,传感器工作时首先对数据传输进行初始化来启动SHT11测量时序,即在第一个SCK时钟高电平时,DA TA翻转为低电平,并在第二个SCK时钟高电平时,DATA翻转为高电平。SHT11测量命令包含3个地址位和5个命令位。单片机发布一组8 bit测量命令后,DATA在第8个SCK时钟的下降沿被置为低电平。再发送第9个SCK时钟作为命令确认,DA2TA在其下降沿后,恢复为高电平。同时,单片机可暂时停止发送时钟序列以进入空闲模式,准备读取测量数据。SHT11在转换结束后,将DATA置为低电平,单片机继续发出时钟序列,来读取2个8 bit的测量数据和1个8 bit的CRC奇偶校验。所有数据从MSB开始,右值有效。其中,在每个字节传输结束后,均需要发出一个时钟高电子ACK,并将DATA置为低电平,以确认读取成功。在测量和传输结束后,SHT11自动转入休眠模式。
上一篇:精度0.2%的双相电表解决方案
下一篇:一种立体声信号相位差电平差测试仪的设计方法