Logo Studenta

Laboratorio 4-ARQUITECTURA DE COMPUTADORAS-2020-II

¡Estudia con miles de materiales!

Vista previa del material en texto

Universidad Nacional de la Facultad de Ingeniería de 
 Amazonia Peruana Sistemas e Informática 
1 
 
 
 
 
 
 
 
 
UNIVERSIDAD 
 
 NACIONAL DE LA 
 
 AMAZONIA PERUANA 
 
 
 
 
FACULTAD DE INGENIERIA 
 
DE SISTEMAS E INFORMATICA 
 
LABORATORIO DE ELECTRONICA DIGITAL 
 
 
GUIA - INFORME Nº 4 
CURSO : ARQUITECTURA DE COMPUTADORAS 
 TEMA : Visualizando Datos con el LCD Serie 
 PROFESOR : 
 GRUPO : 
 ALUMNO : 
 CODIGO : 
 
 NOTA: 
 
 FECHA EXPE.: SEMEST. ACADÉ. 2020 - I 
 
 
Universidad Nacional de la Facultad de Ingeniería de 
 Amazonia Peruana Sistemas e Informática 
2 
 
 
 
4to LABORATORIO 
Tema: Visualizando Datos con el LCD Serie 
Objetivo: Hacer que el alumno aprenda a interactuar con una pantalla de cristal líquido (LCD) 
serie para poder ver la información generada por un Arduino de tal modo podrá 
mostrar texto, caracteres personalizados, datos numéricos y gráficos 
 
Material y Equipo: 
 LCD Paralelo, serie, gráfico y un GLCD 
Diodos LED 
 Resistencias 
 Un Protoboard 
 Cablecitos de Conexión 
 Una Tarjeta Arduino Uno 
 Cable USB 
EXPERIENCIA 1.- FUNCIONAMIENTO DEL LCD SERIE 
¿Quieres ahorrar aún más pines en tu placa Arduino? Los LCD serie son una opción asequible y 
requieren solo tres pines para operar. Estos trabajan de manera diferente a los LCD paralelos. 
Interpretan comandos de tipo serie a través de la patilla TX. El problema es que son un poco más 
caros que sus hermanos paralelos. De todas maneras, sus precios han disminuido notablemente en 
los últimos años. Además, podemos comprar una mochila serie LCD, convirtiendo el LCD paralelo 
Hitachi H044780 en un LCD serie. En este laboratorio, vamos a ver la conexión y la comunicación 
con un LCD serie y construir un proyecto para medir, en tiempo real, la temperatura de tu casa. 
La manera en la que las pantallas LCD de serie se comunican con Arduino es fundamentalmente 
diferente a como lo hacen los LCD paralelo que vimos en el apartado anterior. En los LCD paralelo 
enviábamos datos en grupos de 4 u 8 bits. La principal diferencia es que los LCD serial envían 
datos u órdenes a través de una sola línea de 1 bit. Por ello, este tipo de pantallas se comunican 
con el Arduino con tan solo una línea de datos. La comunidad de Arduino ha creado una librería 
muy parecida a la librería LiquídCrystal ( ), que permite realizar las operaciones básicas de control 
del LCD de forma muy sencilla. 
Universidad Nacional de la Facultad de Ingeniería de 
 Amazonia Peruana Sistemas e Informática 
3 
 
 
la librería que se va a utilizar para comunicarse con nuestra pantalla LCD serial es la SerLCD(), 
Esta librería está pensada para ser utilizada con el LCD 16 x 2 de la casa "SparkFun" pero funciona 
con la mayoría de los tipos de LCD de otros fabricantes. A diferencia de LiquidCrystal() que viene 
por defecto con el IDE de Arduino, esta nueva librería SerLCD() es del tipo contributiva, es decir, 
no ha sido escrita por el equipo oficial de Arduino sino que ha sido diseñada por un miembro 
particular de esta comunidad. Para hacerla operativa e integrarla en nuestro IDE hay que seguir 
una serie de pasos muy simples: 
1.- Descargarla en formato zip de: https://github.com/nemith/serLCD 
2. Añadirla desde el IDE. 
3. Observar las funciones que contiene desde: http://arduino.cc/playground/Code/SerLCD 
Esta librería utiliza a su vez otra denominada: SoftwareSeríal(), permitiendo trabajar sobre una 
sola línea de comunicación serie. Además, ha remodelado la mayoría de las funciones que 
teníamos disponibles en la librería LiquídCrystal() de tal manera que es muy sencillo y trasparente 
para el usuario pasar de un LCD paralelo a uno serial. Por ello, podremos compartir código entre 
ambos con pocos cambios. 
 Tabla 1.- Principales funciones de la librería SoftwareSerial ( ) 
Función Descripción 
serLCD (int pin) Establece el pin Tx de comunicación serie. 
clear Limpia la pantalla. 
home Establece el cursor a la parte superior izquierda de 
la pantalla. 
clearLine(int num) Limpia una línea determinada. 
print (data) Imprime el texto que puede ser un tipo: char, byte, 
int, long, o una cadena. 
setBrightness (int num) Establece por software el contraste del LCD 
cursor ( ) Muestra un subrayado en la posición actual. 
noCursor ( ) Oculta el carácter del cursor. 
blink ( ) Parpadea el carácter del cursor. 
noBlink ( ) Desactiva el parpadeo del carácter del cursor. 
Universidad Nacional de la Facultad de Ingeniería de 
 Amazonia Peruana Sistemas e Informática 
4 
 
 
setSplash ( ) Establece las dos líneas que conforman la 
“bienvenida” del LCD. 
toggleSplash ( ) Habilita o deshabilita el pantalazo de “bienvenida”. 
createChar (int num, byte [ ] charData) Define un carácter personalizado 5 x 8 
printCustomChar (int num) Imprime un carácter personalizado. 
La pantalla de bienvenida o splash es una característica de los LCD serial que permite mostrar 
durante medio segundo un mensaje tan pronto lo encendamos. Transcurrido dicho tiempo el 
mensaje desaparece. Por otra parte, observamos que las dos últimas funciones de la tabla nos 
permiten trabajar con los caracteres personalizados de forma muy sencilla. 
 
 
 
 
 
 
 
 
 
 Figura 1.- Un típico LCD 
 
 
 
 
 
 
 
 Figura 2.- Conexiones de un LCD serial de la marca Parallax 
 
Universidad Nacional de la Facultad de Ingeniería de 
 Amazonia Peruana Sistemas e Informática 
5 
 
 
Programa: Mostrando un simple texto con el LCD serie: (MILFORD-2X16-BKP) 
/* Utilizacion simple del LCD serie*/ 
#include <SerLCD.h> 
#include <SoftwareSerial.h> 
//int pin=7; 
//SerLCD lcd(pin); 
serLCD miLcd(7); 
void setup() 
 // put your setup code here, to run once: 
{ 
 Serial.begin(9600); 
 miLcd.clear(); 
} 
void loop() 
 // put your main code here, to run repeatedly: 
{ 
 miLcd.setCursor(1,1); 
 miLcd.print("LCD funcionando"); 
} 
En primer lugar, incluimos las dos librerías necesarias para trabajar con este tipo de LCD. 
#include <SerLCD.h> 
#include <SoftwareSerial.h> 
Definimos un objeto de la librería serLCD() llamado milcd que establece el pin 7 como línea de 
comunicación serie entre el LCD y nuestro Arduino. 
serLCD miLcd(7); 
A partir de ahí siempre que hagamos referencia a las funciones de la librería expuestas en la tabla 
anterior, utilizaremos esta construcción. Por ejemplo, para imprimir un mensaje (función print): 
 miLcd.print("LCD funcionando"); 
El esquema del ejercicio simulado en PROTEUS se observa en la Figura 3. 
 
 
Universidad Nacional de la Facultad de Ingeniería de 
 Amazonia Peruana Sistemas e Informática 
6 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 Figura 3.- Funcionamiento del LCD serie 
EJERCICIO ENCARGADO 
Diseñar un proyecto que mida la temperatura ambiente utilizando un sensor LM35 y muestre la 
información en un LCD serie.

Continuar navegando