3.5 LCD
Las pantallas Liquid Cristal Display es la forma más sencilla de poner una interfáz de texto a nuestro Arduino.
La pantalla LCD
La pantalla LCD tiene un precio muy bajo, el más común es el Hitachi HD44780 monocromo con configuración 16 carácteres y 2 líneas (16x2) pero también se venden 20×02, 20×04 y 40×02.
Su conexión DIRECTA con el Arduino no es recomendable por la cantidad de cables que se necesitan y el código elaborado, pero tiene la ventaja de tener total libertad en creación de carácteres y control. Si quieres ver esta opción puedes ver la página de Luis LLamas
I2C
Como hemos dicho en La pantalla LCD no es recomendable su conexión directa con Arduino, para ello está este controlador que permite su conexión utilizando sólo dos cables. Los dos componentes pueden salir por menos de 5€.
Su conexión con el LCD tiene que ser tal y com indica la imagen, y soldándo los terminales con cuidado: CC-BY-SA Luis Llamas
Conexión con el Arduino
La conexión tiene serie tiene que ser en los pines A4 y A5 exclusivamente en el Arduino Uno pues son los dedicados para el protocolo serie I2C que veremos más adelante. Para otras placas ver la página de Luis Llamas.
El esquema es muy sencillo:
CC-BY-SA Luis Llamas
Contraste
Tiene un potenciómetro azul para regular el contraste, bastante sensible por cierto (una poca variación hace que nuestro texto no se vea correctamente):
Escaneo
El bus I2C está vinculado en el Arduino Uno a los Pines A4 y A5 como hemos visto en la anterior página, el protocolo serie I2C necesita la librería Wire.h que está de forma nativa en el programa Arduino IDE, pero la dirección de dispositivo no lo sabemos PARA ELLO HAY QUE EJECUTAR ESTE CÓDIGO:
#include
void setup()
{
Wire.begin();
Serial.begin(9600);
while (!Serial); // Leonardo: wait for serial monitor
Serial.println("\nI2C Scanner");
}
void loop()
{
byte error, address;
int nDevices;
Serial.println("Scanning...");
nDevices = 0;
for(address = 1; address
Extraido de Arduino.cc o también de Luis Llamas
Nos tiene que salir lo siguiente:
En mi caso como ves la dirección me ha salido 0x3F pero puede ser cualquier otro, por ejemplo otro valor muy típico es 0x27