1、I2C总线数字式温湿度传感器 SHT11及其在单片机系统的应用 摘要: SHT11 是上海公司生产的具有 I2C总线接口的单片全校准数字式相对湿度和温度传感器。该传感器采用独特的CMOSens TM技术,具有数字式输出、免调试、免标定、免外围电路及全互换的特点。文中对传感器的性能特点、接口时序与命令进行了详细的阐述,给出了 SHT11与单片机的接口电路及相应程序。 关键词: 数字式;温湿度传感器; I2C总线;单片机 概述 温湿度的测量在仓储管理、生产制造、气象观测、科学研究以及日常生活中被广泛应用,传统的 模拟式湿度传感器一般都要设计信号调理电路并需要经过复杂的校准和标定过程,因此测量精度难
2、以保证,且在线性度、重复性、互换性、一致性等方面往往不尽人意。是上海公司推出的基于技术的新型温湿度传感器。该传感器将芯片技术与传感器技术结合起来,从而发挥出它们强大的优势互补作用。 性能特点 温湿度传感器的主要特性如下: 将温湿度传感器、信号放大调理、转换、总线接口全部集成于一芯片(技术); 可给出全校准相对湿度及温度值 输出; 带有工业标准的总线数字输出接口; 具有露点值计算输出功能; 具有卓越的长期稳定性; 湿度值输出分辨率为位,温度值输出分辨率为位,并可编程为位和位; 小体积( ),可表面贴装; 具有可靠的数据传输校验功能; 片内装载的校准系数可保证互换性 ; 电源电压范围为 ; 电流消
3、耗 ,测量时为 ,平均为 ,休眠时为 。 温湿度传感器采用 ( )表面贴片封装形式,管脚排列如图所示,其 引脚说明如下: ( ):接地端; ( ):双向串行数据线; ( ):串行时钟输入; ( )电源端:电源端; ():空管脚。 工作原理 的湿度检测运用电容式结构,并采用具有不同保护的 “微型结构 ”检测电极系统与聚合物覆盖层来组成传感器芯片的电容,除保持电容式湿敏器件的原有特性外,还可抵御来自外界的影响。由于它将温度传感器与湿度传感器结合在一起而构成了一个单一的个体,因而测量精度较高且可精确得出露点,同时不会产生由于温度与湿度传感器之间随温度梯度变 化引起的误差。技术不仅将温湿度传感器结合在
4、一起,而且还将信号放大器、模数转换器、校准数据存储器、标准总线等电路全部集成在一个芯片内。传感器的内部结构框图如图所示。 的每一个传感器都是在极为精确的湿度室中校准的。传感器的校准系数预先存在内存中。经校准的相对湿度和温度传感器与一个位的转换器相连,可将转换后的数字温湿度值送给二线总线器件,从而将数字信号转换为符合总线协议的串行数字信号。 由于将传感器与电路部分结合在一起,因此, 该传感器具有比其它类型的湿度传感器优越得多的性能。首先是传感器信号强度的增加增强了传感器的抗干扰性能,保证了传感器的长期稳定性,而转换的同时完成,则降低了传感器对干扰噪声的敏感程度。其次在传感器芯片内装载的校准数据保
5、证了每一只湿度传感器都具有相同的功能,即具有的互换性。最后,传感器可直接通过总线与任何类型的微处理器、微控制器系统连接,从而减少了接口电路的硬件成本,简化了接口方式。 输出特性 ()湿度值输出 可通过总线直接输出数字量湿度值,其相对湿度数字输出特性曲 线如图所示。由图可看出,的输出特性呈一定的非线性,为了补偿湿度传感器的非线性,可按如下公式修正湿度值: 式中,为传感器相对湿度测量值,系数取值如下: 位:, 位:, ()温度值输出 由于温度传感器的线性非常好,故可用下列公式将温度数字输出转换成实际温度值: 当电源电压为 ,且温度传感器的分辨率为位时, ,当温度传感器的分辨率为位时, 。 ()露点
6、计算 空气的露点值可根据相对湿度和温度值来得出,具体的计算公式如下: ()() () () 命令与接口时序 传感器共有条用户命令,具体命令格式见表所列。下面介绍一下具体的命令顺序及命令时序。 测量温度 00011 温度测量 测量湿度 00101 湿度测量 读寄存器状态 00111 “读 ”状态寄存器 写寄存器状态 00110 “写 ”状态寄存器 软启动 11110 重启芯片,清除状态记录器的错误记录 11毫秒后进入下一个命令 ()传输开始 初始化传输时,应首先发出 “传输开始 ”命令,该命令可在为高时使由高电平变为低电平,并在下一个为高时将升高。 接下来的命令顺序包含三个地址位(目前只支持 “
7、 ”)和个命令位,当脚的位处于低电位时,表示正确收到 命令。 ()连接复位顺序 如果与传感器的通讯中断,下列信号顺序会使串口复位:即当线处于高电平时,触发 次以上(含次),此后应接着发一个 “传输开始 ”命令。 表 2 SHT11 状态寄存器类型及说明 位 类型 说 明 缺 省 7 保留 0 6 读 工检限(低电压检查) X 5 保留 0 4 保留 0 3 只用于试验,不可以使用 0 2 读 /写 加热 0 关 1 读 /写 不从 OTP 重下载 0 重下载 0 读 /写 1=8位相对湿度, 12 位温度分辨率。 0=12位 相对湿度, 14 位湿度分辨率 0 12位相对湿度, 14位湿度 (
8、)温湿度测量时序 当发出了温(湿)度测量命令后,控制器就要等到测量完成。使用位的分辨率测量分别需要大约的时间。为表明测量完成,会使数据线为低,此时控制器必须重新启动,然后传送两字节的测量数据与字节校验和。控制器必须通过使为低来确认每一个字节,所有的量均从右算,列于第一位。通讯在确认数据位后停止。如果没有用校验和 ,则控制器就会在测量数据后保持为高来停止通讯,在测量和通讯完成后会自动返回睡眠模式。需要注意的是:为使的温升低于 此时的工作频率不能大于标定值的(如:位精确度时,每秒最多进行次测量)。测量温度和湿度命令所对应的时序如图所示。 寄存器配置 传感器中的一些高级功能是通过状态寄存器来实现的,
9、寄存器各位的类型及说明见表所列。下面对寄存器相关位的功能说明: ()加热 使芯片中的加热开关接通后,传感器温度大约增加 ,从而使功耗增加至 。加热用途如下: 通过对启动加热器前后的温、湿度进行比较,可以正确地区别传感器的功能; 在相对湿度较高的环境下,传感器可通过加热来避免冷凝。 ()低电压检测 工作时可以自行检测电压是否低于,准确度为 。 ()下载校准系数 为了节省能量并提高速度,在每次测量前都要重新下载校准系数,从而使每一次测量节省的时间。 ()测量分辨率设定 将测量分辨率从位(温度)和位(湿度)分别减到位和位可应用于高速或低功耗场合。 应用说明 运行条 件 测量量程以外的温度会使湿度信号
10、暂时地偏移。然后传感器会慢慢返回到校准条件。若将芯片在湿度小于环境下加热小时到 ,芯片就会迅速恢复高相对湿度、高温度环境的影响,但是,延长强度条件会加速芯片的老化。 安装注意事项 由于大气的相对湿度与温度的关系比较密切,因此,测量大气温度时的要点是将传感器与大气保持同一温度,如果传感器线路板上有发热元件,应与热源保持良好的通风,为减少和之间的热传导,应使铜导线最细并在其中加上窄缝,同时应避免使传感器在强光或下曝晒。 传 感器在布线时,和信号平行且相互接近,或信号线长于时,均会产生干扰信息,此时应在两组信号之间放置或。 具体应用 图是单片机与的接口电路。由于不具备总线接口,故使用单片机通用口线来虚拟总线,并利用来虚拟数据线,利用口线来虚拟时钟线,并在端接入一只 的上拉电阻,同时,在及端接入一只 的去耦电容。下面给出与上述硬件电路配套的应用程序。 _ 测量温度命令 _ 测量湿度命令 读温湿度数据 ( - , - _ , )