Arduino - DHT22 - LCD
Vamos aprender a programar o Arduino para ler a temperatura e a umidade do módulo DHT22 e exibi-las em um LCD I2C.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables STEM V3 Starter Kit (Arduino included) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Divulgação: Alguns dos links desta seção são links de afiliado da Amazon. Podemos receber uma comissão pelas compras feitas por meio desses links, sem custo adicional para você. Agradecemos o seu apoio.
Buy Note: Alternatively, you can assemble the LCD I2C display using LCD 1602 Display and PCF8574 I2C Adapter Module.
Sobre o DHT22 e o LCD
Se você ainda não conhece o sensor DHT22 e o LCD (pinagem, como funciona, como programar...), aprenda sobre eles nos seguintes tutoriais:
Diagrama de Ligação

This image is created using Fritzing. Click to enlarge image
Código Arduino - Sensor DHT22 - LCD I2C
/*
* Este código de Arduino foi desenvolvido por pt.newbiely.com
* Este código de Arduino é disponibilizado ao público sem nenhuma restrição.
* Para tutoriais completos e diagramas de ligação, visite:
* https://pt.newbiely.com/tutorials/arduino/arduino-dht22-lcd
*/
#include <DIYables_LCD_I2C.h>
#include <DHT.h>
#define DHT22_PIN 2
DIYables_LCD_I2C lcd(0x27, 16, 2); // I2C address 0x27 (from DIYables LCD), 16 column and 2 rows
DHT dht22(DHT22_PIN, DHT22);
void setup()
{
dht22.begin(); // initialize the sensor
lcd.init(); // initialize the lcd
lcd.backlight(); // open the backlight
}
void loop()
{
delay(2000); // wait a few seconds between measurements
float humi = dht22.readHumidity(); // read humidity
float tempC = dht22.readTemperature(); // read temperature
lcd.clear();
// check if any reads failed
if (isnan(humi) || isnan(tempC)) {
lcd.setCursor(0, 0);
lcd.print("Failed");
} else {
lcd.setCursor(0, 0); // start to print at the first row
lcd.print("Temp: ");
lcd.print(tempC); // print the temperature
lcd.print((char)223); // print ° character
lcd.print("C");
lcd.setCursor(0, 1); // start to print at the second row
lcd.print("Humi: ");
lcd.print(humi); // print the humidity
lcd.print("%");
}
}
※ Nota:
O endereço I2C do LCD pode variar de acordo com o fabricante. No código, usamos 0x27, que é o especificado pelo fabricante DIYables
Passos Rápidos
- Conecte o Arduino ao PC pelo cabo USB
- Abra o Arduino IDE e selecione a placa e a porta corretas
- Vá até o ícone Libraries na barra esquerda do Arduino IDE.
- Pesquise “DHT” e encontre a biblioteca DHT sensor da Adafruit
- Clique no botão Install para instalar a biblioteca.

- Será solicitado que você instale algumas outras dependências da biblioteca
- Clique no botão Install All para instalar todas as dependências da biblioteca.

- Pesquise “DIYables LCD I2C” e encontre a biblioteca DIYables_LCD_I2C da DIYables
- Clique no botão Install para instalar a biblioteca DIYables_LCD_I2C.

- Copie o código acima e abra-o no Arduino IDE
- Clique no botão Upload no Arduino IDE para carregar o código no Arduino
- Deixe o ambiente ao redor do sensor mais quente ou mais frio
- Veja o resultado no LCD
Se o LCD não exibir nada, consulte Solução de Problemas do LCD I2C