用Arduino检测环境中的温湿度
使用的温湿度传感器是 SHT1X 温湿度传感器。
其技术规格如下:
全部校准,数字输出;
接口简单(2-wire),响应速度快;
超低功耗,自动休眠;
出色的长期稳定性;
超小体积(表面贴装);
湿度范围 0—100%RH,温度范围-40℃—128.8℃
测湿精度±4.5%RH,测温精度±0.5℃(25℃)
模块尺寸:32X17mm
传感器采用 2-wire 接口,数字输出,所以需要占用两个数字口
举个应用的例子:(例子中占用 Arduino 的数字口 9(接 SHT1x 温湿度传感器的 SCK)和数
字口 10(接 SHT1x 温湿度传感器的 DATA))。
使用的温湿度传感器是 SHT1X 温湿度传感器。
其技术规格如下:
全部校准,数字输出;
接口简单(2-wire),响应速度快;
超低功耗,自动休眠;
出色的长期稳定性;
超小体积(表面贴装);
湿度范围 0—100%RH,温度范围-40℃—128.8℃
测湿精度±4.5%RH,测温精度±0.5℃(25℃)
模块尺寸:32X17mm
传感器采用 2-wire 接口,数字输出,所以需要占用两个数字口
举个应用的例子:(例子中占用 Arduino 的数字口 9(接 SHT1x 温湿度传感器的 SCK)和数
字口 10(接 SHT1x 温湿度传感器的 DATA))。
代码如下:
#include <SHT1x.h> #define dataPin 10 #define clockPin 9 //定义 SHT1x 类的对象 sht1x SHT1x sht1x(dataPin, clockPin); void setup() { Serial.begin(9600); // 波特率 9600 bps } void loop() { float temp_c; //定义温度值变量 float humidity; //定义湿度值变量 // 读取温湿度值 temp_c = sht1x.readTemperatureC(); humidity = sht1x.readHumidity(); //通过串口输出温度值 Serial.print("Temperature: "); Serial.print(temp_c); //通过串口输出湿度值 Serial.print(" Humidity: "); Serial.print(humidity); Serial.println("%"); //2 秒采样一次 delay(2000); } 需要定义一个 SHT1x 的对象 sht1x 。 获取温度值使用函数 sht1x.readTemperatureC() 获取湿度值使用函数 sht1x.readHumidity() 另外还可以直接获取华式温度,使用函数 sht1x.readTemperatureF()