Índice:

Display LCD I2C DIY com entradas: 6 etapas
Display LCD I2C DIY com entradas: 6 etapas

Vídeo: Display LCD I2C DIY com entradas: 6 etapas

Vídeo: Display LCD I2C DIY com entradas: 6 etapas
Vídeo: LCD Program lcd.cursor () - LCD Data Entry #6 - #short 2024, Novembro
Anonim
Tela LCD I2C DIY com entradas
Tela LCD I2C DIY com entradas

O LCD paralelo típico usado com um Arduino (16x2 ou 20x4) tem 16 pinos. Apenas 6 pinos de E / S são necessários no Arduino, mas e se você pudesse reduzir para dois pinos de E / S e ainda tivesse esses pinos disponíveis para outros dispositivos?

A interface I2C está nos pinos A4 e A5 do Arduino UNO. Eles são endereçáveis e, portanto, compartilháveis com outros dispositivos I2C que possuem endereços diferentes. Agora, você pode comprar LCDs I2C e até mesmo encontrar LCDs I2C com endereços diferentes, mas eles são tipicamente LCDs de duas linhas e os endereços são fixos. Vou mostrar como construir sua própria interface I2C, selecionar um dos 8 endereços e até mesmo ser capaz de adicionar até 8 entradas ou saídas, usando um chip expansor de 16 portas MCP23017. Este é o mesmo chip que a Adafruit usa no seu I2C LCD Keypad Shield e usa sua biblioteca para falar com ele. Você pode até ter até 16 monitores LCD ou até 128 pinos de E / S digitais e suas combinações

MCP23017

LCD 20x4 ou LCD 16x2

Etapa 1: Fiação do LCD

Fiação de LCD
Fiação de LCD

As conexões entre o LCD paralelo tipo Hitachi (2 ou 4 linhas) e o MCP23017 são mostradas na foto.

SDA (pino 13 no MCP23017) se conecta ao Arduino A4 e SCL (pino 12) se conecta ao Arduino A5. Alguns sugerem resistores pull up de 4,7k (pino 13 a + 5v e pino 12 a + 5v), mas este projeto funciona bem sem eles.

Observe o resistor de 220 Ohm na conexão k (cátodo, gnd) do LCD. Isso é um dever!

Sem ele, você pode explodir o pino da luz de fundo MCP23107. Existem 3 pinos que você pode usar para a luz de fundo. O pino 1 é chamado de AZUL na Biblioteca e no esboço, o pino 28 é chamado de VERDE e o pino 27 é chamado de VERMELHO. Se você tiver um LCD monocromático, poderá usar qualquer um dos três pinos e usar a chamada de cor correspondente. Se você tiver uma luz de fundo RGB, poderá obter muitas combinações de cores. Confira em

Os pinos 15, 16 e 17 no MCP23017 determinam o endereço I2C. Temos todos os 3 aterrados, pois este é o endereço padrão que a biblioteca Adafruit usa. Para adicionar vários monitores, ou escolher outro endereço, a biblioteca terá que ser modificada, então iremos com o padrão por enquanto.

Adafruit_MCP23017.h contém a seguinte linha:

#define MCP23017_ADDRESS 0x20

Pino 17 = A2, Pino 16 = A1 e Pino 15 = A0

0 = terra, 1 = + 5v

O formato do endereço é 0100A2A1A0, portanto, como aterramos todas as 3 linhas, estamos usando o binário 0100000 ou 20 em hexadecimal (0x20). 0100111 seria 27 em hexadecimal (0x27).

Etapa 2: Conectando os botões de entrada

Conectando os botões de entrada
Conectando os botões de entrada

Estamos incluindo 5 botões de entrada neste projeto. Vamos chamá-los de Esquerda, Direita, Cima, Baixo e Selecionar. Os botões padrão são ideais para isso, mas qualquer sensor digital liga / desliga funcionará.

Conecte seus botões da seguinte maneira:

Esquerda conecta entre Gnd e pino 25 do MCP23017

A direita conecta-se entre Gnd e pino 22

Up conecta entre Gnd e pino 24

Down conecta entre Gnd e pino 23

Selecione conecta entre Gnd e pino 21

Etapa 3: esboço de LCD

Esboço LCD
Esboço LCD

Baixe e instale a biblioteca Adafruit, execute o exemplo "Hello World" e esta interface de lcd estará operacional. Usamos o pino 27 no MCP23017, portanto, especifique apenas VERMELHO para a luz de fundo monocromática.

Abordaremos a edição do endereço da biblioteca para que até 8 chips MCP23017 possam ser usados em uma etapa futura. Envie-me um e-mail com perguntas.

Para mais projetos que usam este chip e código adicional, consulte:

arduinotronics.blogspot.com/2015/11/wifi-rechargeable-internet-clock.html

arduinotronics.blogspot.com/2015/10/add-up-to-128-inputsoutputs-or-mix-to.html

Etapa 4: Como funciona

Image
Image

Aqui está um projeto que construímos usando a versão Adafruit deste projeto. A versão DIY tem a mesma fiação, mas você pode ter a versão monocromática em vez da luz de fundo RGB.

Etapa 5: folha de dados

Uma folha de dados completa está disponível em

Recomendado: