dht没有命名类型错误

时间:2014-08-13 08:12:09

标签: arduino-uno dht

当我编译此代码时,我收到了错误" dht没有命名类型"

 #include <DHT.h>

 #include <DHT22.h>


  dht DHT;


  #define DHT22_PIN 5

 void setup()
{
    Serial.begin(9600);
    Serial.println("DHT TEST PROGRAM ");
    Serial.print("LIBRARY VERSION: ");
    Serial.println(DHT_LIB_VERSION);
    Serial.println();
    Serial.println("Type,\tstatus,\tHumidity (%),\tTemperature (C)");
}

 void loop()
{
     // READ DATA
     Serial.print("DHT22, \t");
     int chk = DHT.read22(DHT22_PIN);
     switch (chk)
    {
         case DHTLIB_OK:
             Serial.print("OK,\t");
              break;
        case DHTLIB_ERROR_CHECKSUM:
              Serial.print("Checksum error,\t");
              break;
        case DHTLIB_ERROR_TIMEOUT:
              Serial.print("Time out error,\t");
              break;
         default:
             Serial.print("Unknown error,\t");
            break;
      }
       // DISPLAY DATA
         Serial.print(DHT.humidity, 1);
        Serial.print(",\t");
         Serial.println(DHT.temperature, 1);
       delay(1000);

      }

我正在使用dht22温度和湿度传感器,我的库位于正确的文件夹中。

任何人都可以帮我删除这类错误.. ??

提前感谢。

2 个答案:

答案 0 :(得分:2)

我刚刚在过去的几个小时内处理过同样的问题,最终弄明白问题是什么。我正在从网页上复制并粘贴库文件,然后尝试从草图中保存它们,所以每次我保存我的&#34; .h&#34;和&#34; .cpp&#34;文件,我实际上将它们保存为&#34; .h.ino&#34;和&#34; .cpp.ino&#34;文件,在编译期间当然不会被识别。我通过将库代码复制到文本文档中来纠正这个问题,然后&#34;另存为...&#34;并将文件类型更改为&#34;所有文件&#34;他们保存为正确的文件类型。将这两个文件粘贴到Arduino Library文件中的命名文件夹中,你应该好好去。这花了我很长时间才弄明白;我有点惭愧。

希望这不是太晚了,这对某人有所帮助!一切顺利

答案 1 :(得分:1)

以下是我在设置部分之前使用的内容。:

#include <DHT.h>

#define DHTPIN 2

#define DHTTYPE DHT11

DHT dht(DHTPIN,DHTTYPE);

int chk;

float temp;

float hum;