O ESP32 é um microcontrolador baseado em IoT que pode processar várias instruções como Arduino, mas vem por padrão com Bluetooth e WiFi. O ESP32 é uma placa independente que pode ajudar outro sistema a reduzir sua carga, pois pode atuar como dispositivo mestre ou escravo. Como Arduino, também podemos interface uma tela LCD com ESP32. Vamos discutir como fazer isso em detalhes.
Interface LCD com ESP32 usando Arduino IDE
O I2C LCD pode exibir processos de dados durante a programação em uma tela. Ele fornece uma representação visual dos dados recebidos de sensores, módulos ou microcontroladores. O LCD pode ser integrado sem usar o módulo I2C, mas o benefício do uso do i2C é que ele usa apenas dois fios SDA e SCL Para comunicar dados, resultando em fornecendo vários E/S Free no ESP32 que podem ser usados para integrar outros dispositivos.
Além disso, possui um potenciômetro a bordo que pode controlar o brilho do LCD, apenas ajustando o botão do potenciômetro.
Ligando o LCD para o ESP32 com I2C
Conecte o módulo I2C com o ESP32 usando o pino digital 21 e 22 do PIN do ESP32. Abaixo a imagem dada representa conexões de I2C com o ESP32 e LCD Display. O pino SDA de I2C está conectado com o pino GPIO 21 do ESP32 e o pino SCL da I2C da mesma forma é unido ao pino GPIO 22.
A tabela abaixo representa a conexão do ESP32 com i2c.
I2C LCD | Esp32 |
Gnd | Gnd |
VCC | Vin |
SDA | GPIO 21 |
SCL | GPIO 22 |
Instalando a biblioteca LiquidCrystal_I2C em Arduino IDE
Depois que o circuito é concluído, conecte a placa ESP32 com PC. Agora abra o IDE e vá para Gerente da biblioteca procurar Cristal líquido I2C biblioteca. Instale a biblioteca dada por Frank de Brabander.
Depois de clicar nos arquivos da biblioteca de instalação, começará a baixar, após a instalação bem -sucedida, você receberá uma mensagem instalada da biblioteca na janela de saída.
Obtendo o endereço LCD
Antes de conectarmos qualquer dispositivo I2C com ESP32, é importante observar em qual endereço esse dispositivo específico está conectado. Alguns módulos têm endereços I2C padrão escritos, enquanto alguns deles não têm instruções para verificar os endereços I2C.
Para resolver esse problema, temos um arame Código da biblioteca que verifica todos os dispositivos I2C conectados e em qual endereço eles estão conectados ao ESP32. Isso ajudará a depurar e melhorar o circuito ESP32.
#include /*inclua fio.biblioteca H*/Este código ajudará a encontrar o número de dispositivos I2C e seu endereço no qual eles estão conectados. Este código é comumente referido como código do scanner i2C.
Primeiro, incluímos um "Arame.h " biblioteca. Então, na parte de configuração do código, começamos esta biblioteca. Depois disso, inicializamos a comunicação serial, definindo a taxa de transmissão 9600. Isso ajudará a ver a saída sobre o monitor serial.
Na seção Loop, definimos duas variáveis "errar" e "ADR". Então definimos outra variável "Dispositivos" e defina -o como zero. Depois disso a para O loop é inicializado com valores entre 0 e 127.
Em seguida, inserimos o endereço no fio usando arame.BEGNTRANSMISSÃO (), O scanner I2C procurará o reconhecimento de dispositivos e seu endereço. O valor lido será armazenado na variável "erro". O valor de retorno será igual a 0 se o dispositivo reconhecer o endereço, caso contrário, o valor se tornará 4. Em seguida, usamos uma condição IF que imprimirá o endereço do dispositivo i2C se o valor for <16. Final address of the device is printed in Hexadecimal form.
A saída de dispositivos anexados ao ESP32 sobre os protocolos I2C parecerão como mostrado no diagrama abaixo. Aqui 0x3C é o endereço do i2C LCD enquanto 0x27 é o endereço do OLED tela.
Exibindo texto no LCD
Exibir texto em um LCD usando o ESP32 é muito simples. Tudo o que precisamos é selecionar a linha e a coluna do LCD, onde queremos exibir caracteres. Abaixo está um programa muito simples exibindo “Linuxhint esp32”.
#incluirEnquanto escrevia o código, a primeira coisa que precisamos é chamar a biblioteca de cristal líquido que instalamos.
#incluir
As próximas duas linhas representam as linhas e colunas do LCD, onde precisamos de texto para exibir. Se você estiver usando uma exibição de qualquer outro tamanho, altere a linha e a coluna de acordo.
int lcd_columns = 16;Em seguida, exibiremos o endereço I2C no qual o módulo LCD I2C está conectado. No nosso caso, é 0x27. Se você estiver usando uma versão semelhante do LCD, pode ser o mesmo que o nosso executar o código de verificação de endereço fornecido acima.
LiquidCrystal_i2c lcd (0x27, lcd_columns, lcd_rows);Em seguida, inicializamos a tela e a luz de fundo do LCD usando os seguintes comandos.
LCD.iniciar();Para exibir o comando de cursor LCD de texto, é usado 0 corresponde à primeira coluna e linha.
LCD.setCursor (0, 0);Depois disso, o LCD.A função print () é usada para exibir o texto e depois limpar a tela usando LCD.claro().
LCD.print ("linuxhint esp32");Saída
A saída do código representa caracteres definidos no programa na tela LCD.
Conclusão
Cobrimos todas as etapas para conectar uma tela LCD com ESP32 usando o módulo I2C. Para conectar o LCD, precisamos instalar a biblioteca primeiro usando o gerente da biblioteca. Em seguida, usando o endereço I2C correto, podemos enviar os dados que desejarmos para o LCD.