Aprende a crear un programa para controlar la pantalla LCD del Mini Lab con estos dos ejercicios.
ÍNDICE DE EJERCICIOS:
- Ejercicio 6.1: Escribir palabras en la pantalla LCD
- Ejercicio 6.2: Indicar en la pantalla la luz y temperatura medidas
Ejercicio 6.1: Escribir palabras en la pantalla LCD
Aprende a programar para escribir palabras en la pantalla LCD del Mini Lab.
NIVEL DE DIFICULTAD: Avanzado.
DURACIÓN DEL EJERCICIO: 45 min.
MATERIALES:
- Pantalla LCD
- 1 Cable USB – Micro USB
- Ordenador
El kit Mini Lab deberá estar montado de acuerdo a las instrucciones indicadas en el manual.
¿Qué es una pantalla LCD?
LCD es el acrónimo de Liquid Crystal Display, en español Pantalla de Cristal Líquido. Es una pantalla delgada y plana formada por un número de píxeles en color o monocromos colocados delante de una fuente de luz o reflectora.
Hay de diferentes tipos de pantallas, dependiendo del numero de filas y columnas que tenga. En el kit Mini Lab la pantalla es de 16 columnas y 2 filas.
CÓDIGO DE PROGRAMACIÓN:
Puedes realizar esta actividad utilizando Arduino o un software de programación por bloques compatible. A continuación encontrarás el código de programación necesario.
Código Arduino
- Descarga el software Arduino y realiza en proceso de instalación.
- Para poder programar la pantalla LCD con ArduinoIDE en Windows, es necesario añadir una librería en el programa. Puedes hacerlo siguiendo los pasos indicados en este enlace.
- Una vez instalada la librería, introduce el siguiente código:
#include <Wire.h> #include <LiquidCrystal_I2C.h> // LIBRERIA PARA LA PANTALLA LCD LiquidCrystal_I2C lcd(0x27, 16, 2); // CONFIGURACIÓN DE LA PANTALLA LCD void setup() { // lIMPIAR PANTALLA LCD lcd.begin(); // INICIALIZACION PANTALLA LCD lcd.clear(); // LIMPIAR LA PANTALLA LCD } void loop() { // ESCRIBIR EN LA PANTALLA LCD lcd.setCursor(0, 0); // ESCRIBIR EN LA LINEA 1 COLUMNA 0 lcd.print("MINI LAB"); // CONTENIDO QUE SE ESCRIBE EN LA PANTALLA lcd.setCursor(0, 8); // ESCRIBIR EN LA LINEA 2 COLUMNA 0 lcd.print("eBOTICS"); // CONTENIDO QUE SE ESCRIBE EN LA PANTALLA }
- Configura y carga el código, siguiendo las instrucciones indicadas en la guía de Primeros Pasos del Mini Lab.
- Revisa que el interruptor BLT/USB de la placa controladora Build&Code 4in1 está en posición USB, para una correcta carga del código.
Código para software de programación por bloques compatible
- Descarga el software y realiza en proceso de instalación.
- Para poder programar la pantalla LCD con el software de programación por bloques es necesario añadir la extensión LCD I2C PACK de Wu Xin al programa. Accediendo a este enlace podrás consultar los pasos necesarios.
- Una vez instalada la extensión, introduce el siguiente código:
*Ten en cuenta que cada vez que cargues un programa nuevo y el contenido de la pantalla cambie, debes de reiniciar la placa Build&Code 4in1.
- Configura y carga el código, siguiendo las instrucciones indicadas en la guía de Primeros Pasos del Mini Lab.
- Revisa que el interruptor BLT/USB de la placa controladora Build&Code 4in1 está en posición USB, para una correcta carga del código.
Resultado del ejercicio:
Como resultado del ejercicio, podrás programar la pantalla LCD con I2C en las distintas plataformas y escribir las primeras palabras en ella.
Ejercicio 6.2: Indicar en la pantalla la luz y temperatura medidas.
Aprender a programar la pantalla LCD para que indique la cantidad de luz medida por el sensor de luz y los grados en los que se encuentra el servomotor.
NIVEL DE DIFICULTAD: Avanzado.
DURACIÓN DEL EJERCICIO: 45 min.
MATERIALES:
- Pantalla LCD
- 1 Servomotor
- 1 Sensor de Luz Analógico
- 1 Cable USB – micro USB
- Ordenador
El kit Mini Lab deberá estar montado de acuerdo a las instrucciones indicadas en el manual.
CÓDIGO DE PROGRAMACIÓN:
Puedes realizar esta actividad utilizando Arduino o un software de programación por bloques compatible. A continuación encontrarás el código de programación necesario.
Código Aduino
- Descarga el software Arduino y realiza en proceso de instalación.
- Abre el programa Arduino y, una vez en él, copia el siguiente código:
#include <Wire.h> #include <LiquidCrystal_I2C.h> // LIBRERIA PARA LA PANTALLA LCD #include <Servo.h> // LIBRERIA DEL SERVOMOTOR LiquidCrystal_I2C lcd(0x27, 16, 2); // CONFIGURACIÓN DE LA PANTALLA LCD Servo motor; // VARIABLE DEL SERVO MOTOR int pot = 0, pinpot = A1; //VARIABLES PINS DEL POTENCIÓMETRO float degree; // VARIABLE DE GRADOS DEL SERVO MOTOR int pinlight = A0, luz; // PIN Y VARIABLE LDR void setup() { // lIMPIAR PANTALLA LCD lcd.begin(); // INICIALIZACIÓN PANTALLA LCD lcd.clear(); // lIMPIAR LA PANTALLA LCD //CONFIGURACIÓN DEL SERVO MOTOR motor.attach (9); } void loop() { // REPRODUCIR EL GIRO DEL POTENCIÓMETRO EN LOS GRADOS DEL SERVO MOTOR. pot = analogRead (pinpot); // LECTURA DEL VALOR DEL POTENCIÓMETRO degree = map (pot, 0,1023, 0, 180); //ESCALAR LOS VALORES DEL POTENCIÓMETRO CON LOS GRADOS DEL SERVO MOTOR. if ( degree <= 10) { motor.write (10); } else { motor.write (degree); } //LEER LA INTENSIDAD DE LUZ DEL SENSOR DE LUZ luz = analogRead( pinlight); // LECTURA DE LA INTENSIDAD DE LUZ DEL SENSOR DE LUZ // ESCRIBIR EN LA PANTALLA LCD lcd.setCursor(0, 0); // ESCRIBIR EN LA LÍNEA 1 COLUMNA 0 lcd.print("S.Luz = "); // CONTENIDO QUE SE ESCRIBE EN LA PANTALLA lcd.print(luz); // CONTENIDO DEL SENSOR DE LUZ lcd.setCursor(0, 8); // ESCRIBIR EN LA LÍNEA 2 COLUMNA 0 lcd.print("Grados M = "); // CONTENIDO QUE SE ESCRIBE EN LA PANTALLA lcd.print(degree); // GRADOS DEL SERVO MOTOR }
- Configura y carga el código, siguiendo las instrucciones indicadas en la guía de Primeros Pasos del Mini Lab.
- Revisa que el interruptor BLT/USB de la placa controladora Build&Code 4in1 está en posición USB, para una correcta carga del código.
Código para software de programación por bloques compatible
- Descarga el software y realiza en proceso de instalación.
- Abre el programa y, una vez en él, copia el siguiente código:
- Configura y carga el código, siguiendo las instrucciones indicadas en la guía de Primeros Pasos del Mini Lab.
- Revisa que el interruptor BLT/USB de la placa controladora Build&Code 4in1 está en posición USB, para una correcta carga del código.
RESULTADO DEL EJERCICIO:
En la pantalla LCD se muestra el valor en tiempo real de la lectura del sensor de luz LDR y la posición constante en grados del servomotor.
Con el programa que has creado, además de mostrar texto fijo, la pantalla también mostrará texto que cambia de manera constante.