En aquest post anem a estudiar com connectar una Pantalla LCD a Arduino mitjançant la connexió I2C.
Pantalla LCD de 16×2 caracters per a Arduino.
La pantalla LCD és el component o dispositiu de sortida que ens permet llegir la informació i mostrar-la per pantalla.
Mòdul adaptador I2C:
Per facilitar la comunicació i la connexió de la nostra placa compatible amb Arduino amb la pantalla LCD, utilitzem el mòdul adaptador I2C. Aquest dispositiu ens permet connectar la LCD amb sol 4 cables.
En el nostre cas els dos elements vénen ja soldats. Ens resultarà més còmoda la connexió a l’Arduino. Cal dir que també es podria connectar la pantalla a l’Arduino sense el mòdul adaptador I2C però el muntatge es complicaria una mica.
Al mòdul I2C podemos observar:
- Jumper backlight: permet enfosquir la pantalla o deixar-la amb el color verd de fons.
- Un potenciòmetre per ajustar el contrast de la pantalla.
- Els pins de connexió: Vcc (5 V), GND, SDA i SCL.
Connexionat de la pantalla LCD.
La transmissió d’informació es farà mitjançant el protocol I2C: bus de 2 fils de control, SDA per a dades i SCL que controla el rellotge.
En el mòdul I2C s’indiquen les connexions a realitzar:
MÒDUL I2C | CONNEXIONS EN LA PLACA |
GND (pin de connexió a terra o negatiu) | Pin GND |
Vcc (pin per alimentació) | Pin 5V |
SDA (serial data: connexió per on es transmet l’informació) | Pin analògic 4 (A4) de la placa |
SCL (serial clock: defineix la velocitat de comunicació) | Pin analògic 5 (A5) de la placa |
Els fabricants utilitzen per al mòdul I2C dos tipus de xip, pot ser que el teu mòdul tingui el xip PCF8574T o bé el xip PCF8574AT, segons el model de xip ve amb una adreça (address) o una altra. Ens assegurem de posar la direcció correcta (l’adreça que vagi amb el teu mòdul) en el programa.
XIP PFC8574 | ADREÇA (ADDRESS) |
PFC8574T | 0x27 |
PFC8574AT | 0x3f |
Exemple de xip PFC8574T:
Programació de la pantalla LCD amb Arduino:
Hem de instal·lar la llibreria NewLiquidCrystal perquè funcioni la pantalla LCD amb el mòdul I2C.
¿Com la afegim?
Per a la llibreria NewLiquidCrystal, no és possible afegir-la fent servir el gestor de Llibreries i per tant ha de ser instal·lada manualment.
Per això podem anar al següent enllaç:
https://github.com/fmalpartida/New-LiquidCrystal
I la descarreguem desplegant el botó verd (code)> Download ZIP
Se’ns descarregarà un arxiu en format .zip a la carpeta de descàrregues del nostre ordinador.
A continuació descomprimim aquest arxiu, es generarà una carpeta nova que conté els diferents arxius que conformen la llibreria. Copiem aquesta carpeta i l’enganxem a la carpeta “libraries” dins de la carpeta “Arduino”.
Fet, ja está instal·lada!
Ara anem amb un exemple en el qual mostrarem a la primera fila de la pantalla LCD la paraula InputMakers i en la segona fila la frase we love robotics.
Vosaltres podeu posar la frase que més us agradi.:)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
/* InputMakers Programa per mostrar en la primera fila de la pantalla LCD la paraula InputMakers i en la segona fila de la pantalla LCD la frase learning robotics Recorda que utilitzarem una pantalla LCD controlada mitjançant un Mòdulo Serial I2C */ #include <Wire.h> // Incloem la biblioteca Wire.h que estableix la comunicació amb el protocol I2C. #include <LiquidCrystal_I2C.h> // Incloem la biblioteca per usar la pantalla LCD amb el mòdul I2C. LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); // Estableix l'adreça/connexió de la pantalla LCD i el mòdul I2C amb l'Arduino (Set the LCD I2C address). Si no funciona, revisa aquestes adress: 0x3f (chip PCF8574AT) o 0x27 (chip PCF8574T). void setup() { lcd.begin(16,2); // Inicialitzem el display amb 16 caracters i 2 línies. } void loop() { lcd.setCursor(0,0); // Posiciona la primera lletra en el segment 0 de línia 1 (Comencem a contar des de 0). lcd.print("InputMakers "); // Imprimeix per pantalla la paraula InputMakers. lcd.setCursor(0,1); // Posiciona la primera lletra en el segment 0 de línia 2 (Comencem a contar des de 0). lcd.print("we love robotics"); // Imprimeix per pantalla la frase learning robotics. delay (2500); // Pausa el programa 2,5 segons. } |
Executem el programa i veiem com apareix la nostra frase a la pantalla LCD!
Podeu adquirir el projecte ESTACIÓ METEOROLÒGICA relacionat amb aquest post, que et servirà per ampliar els teus coneixements sobre la pantalla LCD i la lectura del sensor de temperatura i humitat relativa, si t’ha agradat aquest post ACONSEGUEIX-LO!!
IMPORTANT: OFERIM GRANS DESCOMPTES PER A CENTRES EDUCATIUS! SI ERES UN CENTRE EDUCATIU DEMANA PRESSUPOST PERSONALITZAT EN AQUEST ENLLAÇ
[product_page id=”20″]
Si t’ha agradat aquesta entrada a el blog comparteix-la amb els teus amics i col·legues de el món de la robòtica.
Salutacions de l’equip de InputMakers i segueix sempre aprenent!