Gianlui Suca Motta
José Berenguel Vera P.
Sebastian Pilares Sosa
FASE 1: Programación de una pantalla LCD
I. COMPETENCIA ESPECIFICA DE LA SESION
- Conocer el Display LCD y su funcionamiento
- Programar eficientemente el LCD
- Programar HMI para proyecto actual.
II. PROCEDIMIENTO
1. Descripción y funcionamiento de una pantalla LCD
Existen muchos tipos de LCD, variando en forma y tamaño, número de píxeles, color, etc. El que se utilizó, es del tipo más sencillo de controlar, y son los displays LCD diseñados para interactuar con circuitos integrados, de entrada de 4/8 bits en paralelo. Estos se caracterizan principalmente por el número de caracteres que son capaces de representar, que viene dado en su datasheet generalmente por unos números del tipo “8×1″, “16×2″, “20×4″, que significan “Número de caracteres x Número de filas“, así pues, un display LCD 16×2, es capaz de representar 2 filas de 16 caracteres. Como el usado en el presente laboratorio.
Estos displays se controlan muy facilmente con una placa Arduino o un PIC y muy pocas lineas de código. Para ello veamos sus pines para saber cómo se conectan:
2. Realice la simulación de los siguientes proyectos guiados
Transcriba el siguiente código para simular y probar el funcionamiento del LCD. Asegurarse que el pin RW esté conectado a GND y el LCD esté conectado al puerto D, mediante los interruptores rojos debajo del mismo.
-Se transcribió el código proporcionado en el laboratorio en el CCS Compiler, y obetemos lo siguiente:
El funcionamiento del código se puede apreciar en el siguiente video:
¿Cómo hacer para mostrar números
negativos?, ¿cómo hacer para mostrar números con decimales?
El funcionamiento del código se puede
apreciar en el siguiente video:
Al presionar cada vez A5 se incrementa 7
en las unidades y 10 en los decimales.
3. Basándonos en lo guiado por el laboratorio, realizar
un programa que INCREMENTE un número en 150 unidades cada vez que
se presione un pulsador y DECREMENTE dicho número en 25 unidades cada vez que
se presione otro pulsador.Si el valor del número supera 1000
unidades, mostrar en la pantalla LCD en la primera línea: “FULL”. Si el valor
llega a ser menor o igual a cero, mostrar “VALOR MINIMO”. En ambos casos el
valor del número no debe incementarse ni decrementarse.
Nuestro código
para este programa quedaría como el que se muestra a continuación.
III. OBSERVACIONES Y CONCLUSIONES
Observaciones
- Se debe utilizar una librería específica para
hacer uso de la pantalla LCD, la cual la digitamos como #include <lcd.c>.
- Se tienen que definir los pines que usaremos de
la pantalla LCD, al comienzo de nuestro código.
- Para hacer uso de los
antirrebotes que pueden suceder al presionar un pulsador, podemos utilizar el
comando delay, o también usar la instrucción while, creando un bucle que no
ejecute nada cuando este, este siendo presionado.
Conclusiones
- Para retener un bucle y se
quede congelado en lo que deseemos, podemos utilizar el comando while y entre
llaves, no poner ningún comando, pero este se quedara en es bucle
infinitamente, otra opción sería agregar una variable y colocar una condición
que la incluya como se realizó en
nuestro último programa.
- Este es un display de 16*2,
por lo que si deseamos ir a un punto en específico, debemos usar el comando
“lcd_gotoxy(x,y)” en el cual especificamos un espacio horizontal en “x” y una
fila en “y”, dentro del rango de este. Ósea 16 campos verticales y 2 líneas
horizontales.
- Se puede utilizar números
enteros positivos, enteros negativos y decimales. Para esto se deben conocer el
tipo de variables que usa el programa, como el “int”, el “signed int” y el “float”.
Los cuales nos ayudaron con las tareas solicitadas en el laboratorio.










Los videos restantes deberán estar explicados por los otros compañeros
ResponderBorrar