零知开源分享 - 温湿度模块DHT11的使用-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 3427|回复: 0

零知开源分享- 温湿度模块DHT11的使用

[复制链接]
发表于 2019-5-13 16:04 | 显示全部楼层 |阅读模式
本帖最后由 零知实验室-roc 于 2019-5-13 16:06 编辑

1、说明MCU:零知开源开发板-标准板


模块:DHT11模块



开发工具:零知开源开发工具


DHT11模块是单总线的接口,使用非常简单,供电3.3-5V,可以直接在零知实验室平台上使用。接线如下所示,把模块的OUT脚与零知标准板的A0引脚相连接即可。


2、测试
相应连线接好后,只需打开零知开源开发工具找到相应的代码,上传程序打开调试窗口即可看到调试结果。




3、核心代码
[mw_shl_code=arduino,true][my_shl_code=cpp,true][my_shl_code=cpp,true]// 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);
}

[/mw_shl_code]
完整工程代码可到零知实验室免费获取。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-12-1 01:41 , Processed in 0.076593 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表