ESP8266 - LCD
Este tutorial ensina você a usar o display LCD com o ESP8266 e como programar o ESP8266 para exibir texto e caracteres especiais no LCD.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Nota de compra: A maioria dos displays LCD I2C no mercado é de 5V. Eles podem funcionar com esta placa, mas não é seguro e pode danificar a placa. Recomendamos fortemente usar o display LCD I2C de 3.3V recomendado acima.
Sobre o LCD I2C 16x2
O LCD I2C é uma alternativa melhor ao LCD padrão. Com apenas 4 pinos, fica fácil conectá-lo ao ESP8266. Um potenciômetro embutido facilita o ajuste do contraste do LCD.
Pinagem do LCD I2C
O LCD I2C usa uma interface I2C para se conectar ao ESP8266. Ele possui 4 pinos:
- Pino GND: Deve ser conectado ao GND (0V).
- Pino VCC: É a alimentação do LCD e deve ser conectado ao VCC (5V).
- Pino SDA: É o sinal de dados I2C.
- Pino SCL: É o sinal de clock I2C.

Coordenadas do LCD
O LCD I2C 16x2 possui um total de 16 colunas e 2 linhas. As colunas e linhas são numeradas a partir de 0.

Diagrama de Ligação

This image is created using Fritzing. Click to enlarge image
Para mais informações, veja Pinagem do ESP8266 e como alimentar o ESP8266 e outros componentes.
| LCD I2C | ESP8266 |
|---|---|
| Vin | Vin |
| GND | GND |
| SDA | D2 (GPIO4) |
| SCL | D1 (GPIO5) |
Como Programar o LCD I2C
A biblioteca DIYables_LCD_I2C precisa ser incluída para usar o LCD.
- Configure o LCD:
O LCD precisa ser configurado antes de poder ser usado.
- Escreva no LCD:
Escrever no LCD fica simples graças à biblioteca DIYables_LCD_I2C.
- Declare um objeto da classe DIYables_LCD_I2C, especificando o endereço I2C, o número de colunas e o número de linhas.
- Inicie o LCD.
- Posicione o cursor no local desejado (column_index, row_index)
- Exiba uma mensagem na tela do LCD.
Explore as possibilidades do que pode ser feito com o LCD na seção "Faça Mais com o LCD".
※ Nota:
O endereço do LCD pode variar dependendo do fabricante. Em nosso código, usamos 0x27, que é especificado pelo fabricante DIYables.
Código ESP8266
Passos Rápidos
Para começar com o ESP8266 na Arduino IDE, siga estes passos:
- Confira o tutorial como configurar o ambiente para ESP8266 na Arduino IDE se esta for sua primeira vez usando o ESP8266.
- Conecte os componentes como mostrado no diagrama.
- Conecte a placa ESP8266 ao seu computador usando um cabo USB.
- Abra a Arduino IDE no seu computador.
- Escolha a placa ESP8266 correta, como (por exemplo, NodeMCU 1.0 (ESP-12E Module)), e a respectiva porta COM.
- Clique no ícone Libraries na barra lateral esquerda da Arduino IDE.
- Pesquise por "DIYables LCD I2C" e localize a biblioteca DIYables_LCD_I2C criada pela DIYables.
- Em seguida, clique no botão Install para adicionar a biblioteca.

- Copie o código e abra-o na Arduino IDE.
- Clique no botão Upload na Arduino IDE para compilar e fazer upload do código para o ESP8266.
- Confira o resultado no LCD.

- Of images
- Experimente mudar as palavras e a posição das imagens.
Vídeo
Faça Mais com o LCD
Caractere Personalizado
lcd.print() só permite caracteres ASCII. Para mostrar um caractere especial ou símbolo (por exemplo, coração, angry bird), use o gerador de caracteres.
Um LCD 16x2 tem capacidade para mostrar 32 caracteres. Cada caractere é formado por 40 pixels, com 8 linhas e 5 colunas.
O gerador de caracteres produz um caractere de 40 pixels. Para usá-lo, basta seguir estes passos:
O resultado exibido na tela do LCD é: . O resultado mostrado no LCD é:

Vários caracteres personalizados
Podemos criar no máximo 8 caracteres personalizados, numerados de 0 a 7. O exemplo a seguir cria e mostra três deles.
O resultado exibido no LCD é: . O resultado mostrado no LCD é:

Resumo: como usar caracteres personalizados no LCD
- Utilize o gerador de caracteres para gerar o código binário do seu caractere personalizado.
- Copie o código binário gerado no passo anterior e declare-o.
- Defina um caractere de sua própria criação na rotina setup() e atribua a ele um valor numérico entre 0 e 7.
- Exiba o caractere personalizado no LCD a qualquer momento, seja na função setup() ou na loop().
Outras funções
- Imprimir "Hello World"
Insira as seguintes funções na função loop() em sequência:
- Limpar a tela do LCD
- Aguardar 5000 milissegundos
- Imprimir "Hello World"
- Posicionar o cursor no canto superior esquerdo do LCD.
- Posicionar o cursor em uma coluna e linha específicas.
- Mostrar o cursor na tela do LCD.
- Tornar o cursor do LCD invisível.
- Fazer o cursor do LCD piscar.
- Desativar o piscar do cursor do LCD.
- Além disso, você pode encontrar informações em Referência da Biblioteca LiquidCrystal
Desafie-se
Utilize o LCD para realizar um dos seguintes projetos:
- Transmitir texto do PC (pelo Serial Monitor) e mostrá-lo no LCD. Dica: Veja Como enviar dados do PC para o Aduino
- Demonstrar a tecla pressionada do teclado no LCD. Dica: Veja ESP8266 - Teclado
Solução de Problemas do LCD I2C
- Ajuste o contraste do LCD girando o potenciômetro localizado na parte de trás do LCD.
- Dependendo do fabricante, o endereço I2C do LCD pode variar. Geralmente, o endereço I2C padrão do LCD é 0x27 ou 0x3F. Tente esses valores um de cada vez. Se não funcionar, execute o código abaixo para descobrir o endereço I2C.
A saída exibida no Serial Monitor é: . O efeito que pode ser visto no Serial Monitor é: . O que aparece no Serial Monitor é: