Como ja mostrei no post antigo meu arduino com LCD. no caso passando uma frase simples, agora mostrando as informações do DHT11.
Estou usando a bliblioteca do DHT11 que pode ser baixada aqui.
esquema ligação do LCD + DHT11 no arduino. no meu caso usei a ligação do LCD como nesse post Ver. só a ligação do DHT11 que usei como referência este abaixo
Código fonte:
// include the library code:
#include <LiquidCrystal.h> //Biblioteca do LCD
#include <DHT11.h> // Bilbioteca do DHT11
int pin=A0;
DHT11 dht11(pin);
// initialize the library with the numbers of the interface pins
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
//Desenho icone temperatura.
char tmp[8] = {
0b00100,
0b01010,
0b01010,
0b01110,
0b01110,
0b11111,
0b11111,
0b01110 };
// Desenho icone de Graus .
char cel[8] = {
0b01100,
0b10010,
0b10010,
0b01100,
0b00000,
0b00000,
0b00000,
0b00000 };
//Desenho icone umidade.
char umid[8] = {
0b00100,
0b00100,
0b01110,
0b01110,
0b11111,
0b11101,
0b01110,
0b00000 };
// desenho de uma cruz (opcional);
char cruz[8] = {
0b00000,
0b01100,
0b11110,
0b01100,
0b01100,
0b01100,
0b00000,
0b00000 };
void setup() {
// set up the LCD's number of columns and rows:
lcd.begin(16, 2);
// Print a message to the LCD.
lcd.setCursor(0,0);
lcd.print(" eletrovieira.blogspor.com.br");
lcd.createChar(1,(uint8_t*)tmp); //Cria icone da teperatura
lcd.createChar(2,(uint8_t*)cel); // cria icone do Graus
lcd.createChar(3,(uint8_t*)umid); // cria icone da umidade
lcd.createChar(4,(uint8_t*)cruz); // cria icone da cruz (opcional);
//Apresentação do meu blog (opcional)
for (int positionCounter = 0; positionCounter < 26; positionCounter++) {
// scroll one position left:
lcd.scrollDisplayLeft();
// wait a bit:
delay(250);
};
lcd.clear();
}
void loop() {
int err;
float temp, humi;
if((err=dht11.read(humi, temp))==0) // ler informações do DHT11 e carrega nas variaveis.
{
lcd.setCursor(0,0);
lcd.write(1); //exibeicone temp.
lcd.setCursor(1,0);
lcd.print(temp); //exibe temperatura
lcd.setCursor(3,0);
lcd.print(" ");
lcd.setCursor(3,0);
lcd.write(2); //exibe icone de graus
lcd.setCursor(4,0);
lcd.print("C"); // imprime um "C" depois de graus
lcd.setCursor(6,0);
lcd.print("So Jesus"); //opcional
lcd.setCursor(0,1); //vai para segunda lina do LCD
lcd.write(3); // exibe icone da umidade
lcd.setCursor(1,1);
lcd.print(humi); // exibe a humidade
lcd.setCursor(3,1);
lcd.print(" ");
lcd.setCursor(3,1);
lcd.print("%"); // exibe "%" depois da umidade
lcd.setCursor(7,1);
lcd.print("Salva!"); // opcional
}
else
{
lcd.setCursor(0,0);
lcd.print("Error No :");
lcd.setCursor(10,0);
lcd.print(err);
}
lcd.setCursor(13,1); // opcional cruz piscando no LCD
lcd.write(4); // opcional
delay(450);// opcional
lcd.setCursor(13,1);//opcional
lcd.print(" "); //opcional
delay(DHT11_RETRY_DELAY); //tempo para colher novas informações do DHT11.
}
Nenhum comentário:
Postar um comentário