Olá pessoal do LDG!

Estou com uma dificuldade para utilizar este dispositivo:

1- Já montei o circuito;

2- Copiei em um arquivo word o dht.ccp e em um outro arquivo word o dht.h também;

3- Nomeei uma pasta como DHT e enviei os arquivos word para lá;

4- Coloquei a pasta em Library na IDE do arduino;

5- Coloquei o código:

#include <dht.h>

dht DHT;


#define DHT22_PIN 5

void setup()
{
Serial.begin(115200);
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);

}

No entanto, a biblioteca não está sendo reconhecida, e no trecho

#include <dht.h>

dht DHT;

dht não ficou laranjado e continua na cor preta.

Tente ir no menu scetch na opção importar bibliotecas e quando clico em DHT no código aparece apenas mais um espaço.

E como já era de se esperar, quando faço o upload dá erro:

RHT_oficial:2: error: 'dht' does not name a type
RHT_oficial.cpp: In function 'void setup()':
RHT_oficial:12: error: 'DHT_LIB_VERSION' was not declared in this scope
RHT_oficial.cpp: In function 'void loop()':
RHT_oficial:21: error: 'DHT' was not declared in this scope
RHT_oficial:24: error: 'DHTLIB_OK' was not declared in this scope
RHT_oficial:27: error: 'DHTLIB_ERROR_CHECKSUM' was not declared in this scope
RHT_oficial:30: error: 'DHTLIB_ERROR_TIMEOUT' was not declared in this scope

Será que preciso baixar mais algum complemento? será que existe um formato específico para salvar a dht.ccp e a dht.h?

Desde já agradeço a ajuda!

Exibições: 1733

Responder esta

Respostas a este tópico

Ao invés desse rolo todo com Word (não entendi o motivo) e tal, tenta baixar as bibliotecas direto:

http://playground.arduino.cc/Main/DHTLib

Não esquece do #define pra escolher o modelo do sensor.

Esquece o Word para editar ou escrever arquivos fonte. Ele é um editor de texto com formatação. Você pode usar o notepad que vem com o Windows, no entanto eu recomendo que você instale o Notepad++ que já é próprio para editar esses arquivos.

Conseguiu alguma resposta?

Estou como mesmo problema aqui. Já baixei as bibliotecas direto e nada.

Baixei as bibliotecas do site que o Jonatas Freitas recomendou e executei o seguinte código: 

 

#include "DHT.h"

#define DHTPIN 2    

#define DHTTYPE DHT22  

DHT dht(DHTPIN, DHTTYPE);

void setup() {

  Serial.begin(115200);

  Serial.println("\n\tcoloca algum título na hora da execução");

  Serial.println("\tTEMPERATURA \t\tUMIDADE RELATIVA");

  dht.begin();

}

void loop() {

    float t = dht.readTemperature();

    float u = dht.readHumidity(); 

 // verifica se algo deu errado no retorno. se vier algo que não seja número, algo deu errado!

   if (isnan(t) || isnan(u)) {

    Serial.println("Failed to read from DHT");

  }

    else {

    Serial.print("\t");

    Serial.print(t);

    Serial.print(" *C\t\t");

    Serial.print(u);

    Serial.println(" %");

    delay (3000);

  }

}

Lembrando que o sensor deve estar na porta digital 2... e o interval de coleta foram de 3 em 3 segundos... se quiser variar é só alterar o delay

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço