SHT30是盛世瑞出品的低端低价温湿度传感器,利用I2C进行数据传输,具有两个可选地址,宽电源电压从2.4V到5.5V。
SHT30芯片有八个引脚:
Pin | Name | Comments |
1 | SDA | 数据引脚,输入/输出 |
2 | ADDR | 地址引脚,输入 |
3 | ALENT | 报警引脚,输出;不使用时悬空 |
4 | SCL | 时钟引脚,输入/输出 |
5 | VDD | 电源引脚,输入 |
6 | nRESET | 复位引脚,低电平有效,输入 |
7 | R | 无用引脚,接地 |
8 | VSS | 接地引脚 |
重复性影响SHT30的测量时间,因此就是影响传感器的能量消耗。
通过改变选择ADDR引脚的电压,实现传感器的地址改变。默认地址是ADDR连接VSS时( 0X44),可以修改成0X45。(关于引脚,详情请看数据手册)。
SHT30有两中工作模式
1.单次数据采集模式
通过不同命令,在重复性(高,中,低)和时钟延伸(禁止,使能)方面不同,每个数据包含一个16位温度和一个16位湿度值(按此顺序)组成。
传输如下所示(具体传输过程以数据手册为准):
(1)STM32发出START,并发出I2C的地址(7位)+读(1)/写(0)标志位,然后等待SHT30的ACK
(2)发出命令高8位数据,等待SHT30的ACK
(3)发出命令低8位数据,等待SHT30的ACK
(4)STM32发送STOP停止通信。
(5)STM32发出START,并发出I2C的地址(7位)+读(1)/写(0)标志位,然后等待SHT30的