新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > SHT15在嵌入式系统中的应用方案

SHT15在嵌入式系统中的应用方案

作者: 时间:2011-03-18 来源:网络 收藏

  该芯片包括1个电容性聚合体湿度敏感元件和1个用能隙材料制成的温度敏感元件。这两个敏感元件分别将湿度和温度转换成电信号,该电信号首先进入微弱信号放大器进行放大,然后进入1个14位的A/D转换器,最后经过二线串行数字接口输出数字信号。在出厂前,都会在恒湿或恒温环境中进行校准,校准系数存储在校准寄存器中,在测量过程中,校准系数会自动校准来自传感器的信号。此外,内部还集成了1个加热元件,加热元件接通后可以将的温度升高5℃左右,同时功耗也会有所增加。此功能主要是为了比较加热前后的温度和湿度值。可以综合验证两个传感器元件的性能。在高湿(>95%RH)环境中,加热传感器可预防传感器结露,同时缩短响应时间,提高精度。加热后SHT15温度升高、相对湿度降低,较加热前,测量值会略有差异。

  2 硬件设计

  微处理器可通过二线串行数字接口与SHT15进行通信,由于其通信协议与通用的I2C总线协议不兼容,所以在设计时直接利用S3C2440A的通用I/O口来模拟通信时序控制SHT15。S3C2440A有130个通用I/O口,共分为9组(GPAGPJ),其中GPG包括16路I/O口。S3C2440A引脚采用289 -FBGA封装,GPG9及GPG10对应引脚功能图如表1所示。

表1 GPG9及GPG10对应引脚功能图

GPG9及GPG10对应引脚功能图

  设计中利用S3C2440A的GPG9模拟时钟信号,GPG10来模拟数据信号(数据线需要外接上拉电阻),硬件连接图如图3所示。

微控制器与SHT15的硬件连接图

图3 微控制器与SHT15的硬件连接图

  3 软件设计

  在程序开始,控制器S3C2440A需要用一组“启动传输”时序,来表示数据传输的初始化。它包括:当SCK时钟高电平时DATA翻转为低电平,紧接着SCK变为低电平的启动,如图4所示,随后是在SCK时钟高电平时DATA翻转为高电平。接着SCK变为低电平,随后又变为高电平,SCK时钟为高电平时,DATA再次翻转为高电平。

启动传输时序

图4 启动传输时序

  控制器发出启动命令后,接着发出一个后续8为命令码。后续命令包含3个地址位(目前只支持000’)和5个命令位。相应代码对应的命令集如表2所示。

表2 SHT15命令集

SHT15命令集

  SHT15接收到上述地址和命令码后,在第8个时钟下降沿,将DATA下拉为低电平作为从机的ACK;在第9个时钟下降沿之后,从机释放DATA(恢复高电平)总线;释放总线后,从机开始测量当前湿度,测量结束后,再次将DATA总线拉为低电平;主机检测到DATA总线被拉低后,得知湿度测量已经结束,给出SCK时钟信号;从机在第8个时钟下降沿,先输出高字节数据;在第9个时钟下降沿,主机将DATA总线拉低作为ACK信号。然后释放总线DATA;在随后8个SCK周期下降沿,从机发出低字节数据;接下来的SCK下降沿,主机再次将DATA总线拉低作为接收数据的ACK信号;最后8个SCK下降沿从机发出CRC校验数据,主机不予应答(NACK)则表示测量结束。

linux操作系统文章专题:linux操作系统详解(linux不再难懂)


评论


相关推荐

技术专区

关闭