Professional Documents
Culture Documents
Carrera:
Ingeniería en Sistemas Computacionales
Materia:
Lenguaje de Interfaz
Practica:
Uso de un display de 7 segmentos Cátodo Común y LCD 20x4
Semestre: 6to Grupo: A
Turno:
Matutino
Alumnos:
PRACTICA 7 ............................................................................................................................. 4
INTRODUCCION ....................................................................................................................... 5
OBJETIVOS ............................................................................................................................ 19
MATERIALES .......................................................................................................................... 20
PROCEDIMIENTOS ................................................................................................................ 21
RESULTADOS ........................................................................................................................ 32
CONCLUSIONES .................................................................................................................... 33
REFERENCIAS ....................................................................................................................... 34
PRACTICA 7
En esta practica se pretende hacer el uso de un display de 7 segmentos cátodo común, en este
reporte se implementará un contador del 0 al 9 utilizando un Arduino, el cual es el que realizara
las funciones del contador y se mostrara por el display.
¿Qué es Arduino?
¿Qué es un microcontrolador?
Es un circuito integrado que se puede programar, o sea que puede ejecutar las órdenes que
tenga almacenadas en su memoria. Tiene las tres funciones principales de un computador: la
unidad central de proceso, memoria y entradas y salidas. Arduino utiliza la marca ATMEL, y el
modelo de microcontrolador depende del tipo de tarjeta, por ejemplo, la tarjeta Arduino Uno
utiliza el micro ATMEL MEGA 328P.
Realmente el límite lo marca tu imaginación, pero por dar alguna pista, podrías diseñar un
sistema para la apertura y cierre de la puerta de un garaje, hacer un robot móvil que detecte
Las partes principales de un programa hecho en Arduino son: Bloque de inclusión de módulos
y declaración de variables, bloque de configuración void setup () donde se indica el modo de
funcionamiento de los pines (entrada y salida), comunicación serie, etc.… y bloque de ejecución
continua void loop (), en este bloque se incluyen las acciones que queremos que realice el
Sólo es necesario que esté conectado al ordenador mediante el USB para cargar los programas
o para visualizar en tiempo de ejecución datos del programa mediante la consola serie. El
ordenador proporciona la energía eléctrica suficiente para que funcionen los programas, pero
una vez cargado el programa en la memoria del microcontrolador de Arduino se puede
desconectar del USB y alimentar a la tarjeta mediante una fuente externa mediante el Jack de
alimentación con un margen de (5 a 20 Voltios). El programa cargado en Arduino queda grabado
permanentemente, aunque cese el suministro eléctrico.
Protoboard
Es una placa reutilizable usada para construir prototipos de circuitos electrónicos sin soldadura.
Compuestas por bloques de plástico perforados y numerosas láminas delgadas de una aleación
de cobre, estaño y fósforo.
Este elemento se ensambla o arma de manera que se pueda activar cada segmento (diodo
LED) por separado logrando de esta manera combinar los elementos y representar todos los
números en el display (del 0 al 9). El display de 7 segmentos más común es el de color rojo, por
su facilidad de visualización.
Cada elemento del display tiene asignado una letra que identifica su posición en el arreglo del
display. Ver el gráfico
La correspondencia de los pines y cada uno de los leds del display puede verse en la siguiente
figura:
PROTECCIÓN.
Cada segmento (y el punto) es un LED como cualquier otro. Debido a esto la corriente media
que se debe aplicar es de 15 mA. Dependiendo de la lógica que estemos empleando debemos
utilizar una resistencia por cada entrada y así no forzar el dispositivo:
Las LCDs de caracteres, por su parte, pueden mostrar pequeños iconos de 5x7 píxeles o similar.
Las LCDs de caracteres más habituales son de 4-bit o 8-bit, dependiendo del número de cables
(bits) que necesitan tener conectados al circuito para poder recibir o enviar datos. Ojo, solo se
cuentan los cables que son estrictamente de transferencia de datos ya que en realidad una LCD
necesita no solo 4 o 8 cables para funcionar, sino varios más (como los de alimentación, tierra,
reseteado...). Otras características que pueden tener (o no) las LCDs de caracteres son la
posibilidad de iluminar el fondo de la pantalla (opción ideal para entornos con poca luz
ambiental) o la posibilidad de utilizar varios colores de fondo (y no solamente el blanco/negro
sobre azul/verde, que suele ser lo habitual), etc.
Cada modelo de LCD es diferente, por lo que es imprescindible consultar su datasheet concreto
para poder distinguir los diferentes pines de conexión que ofrece y sus características
generales. De todas formas, lo más habitual es que una LCD estándar ofrezca:
Un pin para recibir la alimentación (normalmente con los 5 V que proporciona la placa
Arduino ya está bien, pero hay modelos que requieren 3,3 V, así que hay que vigilar esto)
y otro pin para conectar la pantalla a tierra. Es conveniente conectar un divisor de
tensión entre la fuente de alimentación y el pin de alimentación de la pantalla para evitar
posibles daños. Para calcular el valor óptimo de esta resistencia, se deben consultar dos
valores en el datasheet del LCD: la corriente máxima soportada para la luz de fondo y la
caída de tensión causada por esta. Haciendo uso de la Ley de Ohm, si se resta dicha
Las pantallas LCD comunes tienen el inconveniente de requerir muchos cables para conectarse
al circuito. Como consecuencia, en nuestra placa Arduino nos pueden quedar pocos pines
disponibles para usarlos en otras cosas. Una solución a este inconveniente es el empleo de
pantallas LCD que utilizan un sistema de comunicación con la placa Arduino diferente del ya
comentado, como pueden ser los protocolos I2 C (el cual solo utiliza las líneas SDA y SCL), o
la serie (usando solo las líneas RX y TX), principalmente.
En realidad, estas pantallas LCD son exactamente las mismas que las listadas en el apartado
anterior, pero incorporan una pequeña plaquita en su dorso (llamada “backpack”) que incluye
un pequeño microcontrolador encargado de realizar la traducción del protocolo adecuado (I2 C,
Serie, etc.) a las señales “estándares” que la pantalla LCD entiende. Por ejemplo, DFRobot
distribuye un conjunto llamado “I2 C LCD1602 module” formado por una pantalla alfanumérica
de 2x16 caracteres más un backpack y otro llamado “I2 C LCD2004 module” formado por una
pantalla de 4x20 caracteres más el mismo backpack.
Estos conjuntos pantalla + backpack tan solo requieren cuatro cables para ser controlados
totalmente desde la placa Arduino: alimentación de 5 V, tierra, cable SDA y cable SCL. Además,
disponen de un potenciómetro para ajustar el contraste y se programan mediante una librería
propia (descargable de la página web de ambos productos) llamada “LiquidCrystal_I2C”,
prácticamente idéntica a la librería oficial de Arduino.
Fritzing fue creado bajo los principios de Processing y Arduino, y permite a los diseñadores,
artistas, investigadores y aficionados documentar sus prototipos basados en Arduino y crear
esquemas de circuitos impresos para su posterior fabricación. Además, cuenta con un sitio
web complementario que ayuda a compartir y discutir bosquejos y experiencias y a reducir los
costos de fabricación. y su diseño de arte de artistas.
Figura 4 Servomotor
Los servomotores funcionan por medio de modulación de ancho de pulso (PWM) Todos los
servos disponen de tres cables, dos para alimentación Vcc y Gnd (4.8 a 6 [V]) y un tercero para
aplicar el tren de pulsos de control, que hace que el circuito de control diferencial interno ponga
el servo en la posición indicada.
Dado que existen algunas pequeñas diferencias entre las distintas marcas de servos, en la
tabla 1 están indicados las características técnicas de varias marcas que comercializan este
producto.
Partes de un servomotor
Es el elemento que le brinda movilidad al servo. Cuando se aplica un potencial a sus dos
terminales, este motor gira en un sentido a su velocidad máxima. Si el voltaje aplicado sus dos
terminales es inverso, el sentido de giro también se invierte.
Sensor de desplazamiento
Suele ser un potenciómetro colocado en el eje de salida del servo que se utiliza para conocer
la posición angular del motor.
Circuito de control
Es una placa electrónica que implementa una estrategia de control de la posición por
realimentación. Para ello, este circuito compara la señal de entrada de referencia (posición
deseada) con la posición actual medida por el potenciómetro. La diferencia entre la posición
actual y la deseada es amplificada y utilizada para mover el motor en la dirección necesaria
para reducir el error.
Algunas variaciones
Los motores que contienen pueden ser con escobillas o sin escobillas -tipo brushless-, y los
juegos de engranes pueden estar hechos de nylon o de metal. Por consiguiente, aquellos
servomotores con motores brushless y con engranes metálicos suelen ser más costosos.
Así mismo, éstas son algunas de las características comunes en la mayoría de los servos:
Amperaje: dado que muchos de los servos pequeños están hechos para el modelado y
al ser alimentados con cuatro pilas tamaño AA, la corriente demandada suele ser menor
a 1 A.
Objetivo General
Crear un diseño lógico de las conexiones del display y el Arduino en Fritzing y elaborar un
programa en el software de Arduino, el cual controle un display de 7 segmentos mediante una
placa de Arduino, el cual será un contador del numero 0 al 9.
Objetivo Especifico
MATERIALES
En esta practica se necesitarán los siguientes materiales con los cuales se elaborará la práctica.
B. Como siguiente paso se montara el diagrama lógico en físico haciendo usos de los
materiales requeridos.
a. Primer paso: Montar el display en el Protoboard
void loop()
{
switch(Numero)
{
//Mostrar un 0 en el display
case 0:
digitalWrite(a,HIGH);
digitalWrite(b,HIGH);
digitalWrite(c,HIGH);
digitalWrite(d,HIGH);
digitalWrite(e,HIGH);
digitalWrite(f,HIGH);
digitalWrite(g,LOW);
break;
//Mostrar un 1 en el display
case 1:
digitalWrite(a, LOW); // 1
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, LOW);
digitalWrite(e, LOW);
digitalWrite(f, LOW);
digitalWrite(g, LOW);
break;
//Mostrar un 2 en el display
case 2:
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, LOW);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
digitalWrite(f, LOW);
digitalWrite(g, HIGH);
break;
//Mostrar un 3 en el display
case 3:
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
//Mostrar un 4 en el display
case 4:
digitalWrite(a, LOW);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, LOW);
digitalWrite(e, LOW);
digitalWrite(f, HIGH);
digitalWrite(g, HIGH);
break;
//Mostrar un 5 en el display
case 5:
digitalWrite(a, HIGH);
digitalWrite(b, LOW);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, LOW);
digitalWrite(f, HIGH);
digitalWrite(g, HIGH);
break;
//Mostrar un 6 en el display
case 6:
digitalWrite(a, HIGH);
digitalWrite(b, LOW);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
digitalWrite(f, HIGH);
digitalWrite(g, HIGH);
break;
//Mostrar un 7 en el display
case 7:
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, LOW);
digitalWrite(e, LOW);
//Mostrar un 8 en el display
case 8:
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
digitalWrite(f, HIGH);
digitalWrite(g, HIGH);
break;
//Mostrar un 9 en el display
case 9:
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, LOW);
digitalWrite(e, LOW);
digitalWrite(f, HIGH);
digitalWrite(g, HIGH);
break;
}
delay(1000);//Esperar 1 segundo
Numero++;//incrementar la cuenta
Una vez visto como se conecta el display al Arduino y de como funciona cada parte del Codigo
del programa, procederemos a mostrar los resultados que se obtuvo al momento de cargar el
Codigo al Arduino donde se encuentra conectado el display de 7 segmentos.
A continuación, se mostrarán los resultados obtenidos al cargar el sketch al Arduino donde esta
conectado el display de 7 segmentos.
CONCLUSIONES
http://grupovirtus.org/moodle/pluginfile.php/4495/mod_resource/content/1/SEMANA_6/material_3.pdf
https://es.wikipedia.org/wiki/Fritzing
http://www.ingmecafenix.com/electricidad-industrial/servomotor/
https://blog.330ohms.com/2016/03/14/que-son-los-servomotores/