1、说明MCU:零知开源开发板-标准板
模块:DHT11模块
开发工具:零知开源开发工具
DHT11模块是单总线的接口,使用非常简单,供电3.3-5V,可以直接在零知实验室平台上使用。接线如下所示,把模块的OUT脚与零知标准板的A0引脚相连接即可。
2、测试
相应连线接好后,只需打开零知开源开发工具找到相应的代码,上传程序打开调试窗口即可看到调试结果。
调试结果:
从调试窗口得出的数据可以看到温度和湿度都有在变化。
3、核心代码
- // DHT11温湿度传感器demo演示
-
- #include "dht11.h"
-
- //使用DHT11
- DHT sensor;
-
- void setup()
- {
- Serial.begin(9600);
-
- //使用A0引脚连接到DHT11模块的输出脚
- sensor.attach(A0);
-
- delay(1000);
- }
-
- void loop()
- {
- //开始获取温湿度数据
- sensor.update();
-
- switch (sensor.getLastError())
- {
- case DHT_ERROR_OK:
- char msg[128];
- // 格式化输出
- sprintf(msg, "Temperature = %dC, Humidity = %d%%",
- sensor.getTemperatureInt(), sensor.getHumidityInt());
- Serial.println(msg);
- break;
- case DHT_ERROR_START_FAILED_1:
- Serial.println("Error: start failed (stage 1)");
- break;
- case DHT_ERROR_START_FAILED_2:
- Serial.println("Error: start failed (stage 2)");
- break;
- case DHT_ERROR_READ_TIMEOUT:
- Serial.println("Error: read timeout");
- break;
- case DHT_ERROR_CHECKSUM_FAILURE:
- Serial.println("Error: checksum error");
- break;
- }
-
- delay(2000);
- }
复制代码 完整代码可到零知实验室官网免费获取。
|