Muitas vezes a quantidade de pinos disponíveis no seu Arduino não é suficiente, pois após conectar o display e os sensores sobram poucos pinos para uso. Com este Módulo de Interface I2C vai poder controlar o seu Display LCD usando apenas 2 pinos!
Características:
• Endereço I2C: 0x20-0x27 (Padrão 0x20 mas pode ser modificado);
• Compatível com o Display LCD 16x2 (1602) e LCD 20x4 (2004);
• Tensão da operação: 5V;
• Dimensões: 55 x 23 x 14mm;
• Peso: 5g.
Inclui:
• 1x Módulo Série I2C para Display LCD Arduino.
Como usar o módulo I2C com Arduino e display 16×2? Para ligar um display LCD 16×2 ou 20×4 ao Arduino são precisos de pelo menos 6 fios (ou jumpers) para conexão. Em placas com um número menor de portas, como o Arduino Uno, isso significa sacrificar algumas portas que poderiam ser utilizadas para ligação de outros componentes, como sensores ou motores. Um módulo que pode ser utilizado para contornar esse problema é o módulo I2C para display LCD com CI PCF8574:

.
Com esse módulo, consegue controlar um display LCD, seja ele 16×2 ou 20×4, utilizando apenas dois pinos do Arduino: o
pino analógico 4 (SDA) e o
pino analógico 5 (SCL), que formam a interface de comunicação I2C.
Estrutura do módulo I2CNa lateral esquerda do módulo temos 4 pinos, sendo que dois são para alimentação (
Vcc e
GND), e os outros dois são da interface
I2C (SDA e SCL).
O potenciômetro da placa serve para ajuste do contraste do display. O jumper na lateral oposta permite que a luz de fundo (backlight) seja controlada pelo programa ou permaneça apagada.
Por padrão o módulo vem configurado com o endereço
0x27, mas você pode alterar esse endereço utilizando os pinos
A0, A1 e A2 seguindo a tabela abaixo:
.
Em alguns casos o módulo I2C pode vir configurado com uma faixa de endereços diferente, para descobrir qual o endereço do módulo, utilize o programa
I2C Scanner.Ligação do módulo I2C com Arduino e display LCD 16×2O módulo possui 16 pinos que podem ser ligados diretamente ao display, ou pode testar a conexão na protoboard, conforme o circuito abaixo, onde é utilizado um display LCD 16×2 com controlador HD44780 ligado ao Arduino Uno:
Caso esteja usando um Arduino Mega 2560, utilize os pinos
20 (SDA) e
21 (SCL):
Código Exemplo: #include
#include
// Inicializa o display no endereco 0x27
LiquidCrystal_I2C lcd(0x27,2,1,0,4,5,6,7,3, POSITIVE); //em alguns displays substituia por: LiquidCrystal_I2C lcd(0x3f,2,1,0,4,5,6,7,3, POSITIVE);
void setup()
{
lcd.begin (16,2); //Caso o display de 4 linhas (20x04) substituia esta linha por: lcd.begin (20,4);
}
void loop()
{
lcd.setBacklight(HIGH);
lcd.setCursor(0,0);
lcd.print("ElectroFun.pt");
lcd.setCursor(0,1);
lcd.print("LCD e modulo I2C");
delay(1000); lcd.setBacklight(LOW);
delay(1000);
}