dht11温湿度传感器51三线制初始化代码
时间: 2024-06-23 19:02:26 浏览: 114
STM32F103单片机+ DHT11数字温湿度传感器实验(寄存器版)DEMO例程源码.zip
5星 · 资源好评率100%
DHT11是一款常用的温湿度传感器,它采用三线接口连接,包括VCC(电源)、DATA(数据)和GND(接地)。使用51单片机控制DHT11,你需要编写一段初始化代码来配置数据引脚并读取传感器的数据。以下是一个简单的初始化示例,假设你使用的是8051或类似的单片机,例如ATmega328P(Arduino Uno):
```c
#include <dht.h> // 假设你有一个名为dht.h的库
#define DHT11_PIN 2 // DATA引脚,对于Arduino Uno,DHT11数据线通常连接到数字引脚2
DHT dht(DHT11_PIN); // 初始化DHT11实例,使用指定的数据引脚
void setup() {
Serial.begin(9600); // 初始化串口通信
if (dht.begin()) { // 初始化传感器
Serial.println("DHT11 Sensor initialized");
} else {
Serial.println("Failed to initialize DHT11");
}
}
void loop() {
float humidity, temperature; // 定义存储湿度和温度的变量
if (dht.read(&humidity, &temperature) == DHT_OK) { // 如果读取成功
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println(" *C");
Serial.print("Humidity: ");
Serial.print(humidity);
Serial.println("%");
delay(1000); // 每秒读取一次
} else {
Serial.println("Failed to read data from DHT11");
delay(5000); // 读取失败后等待一段时间再试
}
}
```
阅读全文