Está en la página 1de 16

ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS

LABORATORIO N° 9 PRE INFORME C.I: 6933870


DISEÑO HARDWARE Y SOFTWARE - TINKERCAD
Display de 7 segmento controlado por 2
botones
Fecha: 08/05/2020
Estudiante: Fabian Franco Fabio Condori
Docente: Ing. Héctor Yáñez Maceda

OBJETIVOS

Control de display de 7 segmentos (Cátodo Común) mediante pulsadores mediante


la tarjeta Arduino Uno-R3

MATERIAL

- Programa TinkerCad en línea.


- Un display de 7 segmentos (Cátodo Común).
- Dos pulsadores
- Siete resistencias 220Ω
- Dos resistencias 10 KΩ
- Una tarjeta Arduino Uno-R3
- Un cable USB impresora conector A B.
- Una laptop o computador.
- Cables para el montaje del circuito.
- Protoboard.

CONOCIMIENTOS Y PREPARACIÓN

USANDO EL PUERTO SERIE DEL ARDUINO

El puerto serie del Arduino Uno usa los pins 0(RX) y 1(TX). Estos están conectados
al controlador FTDI (ATmega 16u2) que es el que permite la traducción del formato
serie TTL a USB. Estos pins no pueden ser utilizados mientras se usa la
comunicación serie.

El puerto serie del Arduino utiliza un buffer de 64 bytes. Para entender el uso del
buffer normalmente se usa el ejemplo de la sala de espera del médico. Esta sala de
espera es el buffer, que tiene una capacidad de 64 pacientes. Cada paciente es 1
byte. El médico va atendiendo cada paciente uno por uno por orden de llegada. La
enfermera que deja entrar a los pacientes a la sala de espera son los baudios (la
velocidad de recibir datos), cuando más grande sea la velocidad, más gente entra
en la sala. Si la sala está completa con 64 pacientes y llegan más, estos serán
rechazados (drop o loss).

Para usar el puerto serie del Arduino hay varias funciones de programación que hay
que saber:

-begin(velocidad) Abre el puerto serie y establece la velocidad. La velocidad de


conexión (baudios o Baud Rate) es la velocidad que llegan los datos al puerto serie.
Normalmente se usa 9600bps o 115000bps.

1 - 16
ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS

-available() Esta función devuelve el estado del buffer del puerto serie y rebela si
hay datos dentro de este.

-read() Lee un carácter del buffer. Es importante entender que lee un solo
carácter (byte).

-write() Escribe caracteres a través del puerto serie. A diferencia de read(),


escribe tantos caracteres como quieras.

-print() Imprime los datos al puerto serie como texto ASCII.

-println() Imprime los datos al puerto serie como texto ASCII seguido de un
retorno de carro (ASCII 13, o ‘\r’) y un carácter de avance de línea (ASCII 10, o ‘\n’).
Este comando tiene la misma forma que Serial.print ().

-flush() Vacía el buffer de entrada de datos.

-end() Desactiva la comunicación serie, permitiendo a los pines 0(RX) y 1 (TX) ser
usadoscomo entradas o salidas digitales. Para volver a activar la comunicación
serie, llamar la función Serial.begin().

Para enviar y recibir datos, el Arduino utiliza el código ASCII

Envió de datos del Arduino al PC, utilizaremos el display de 7 segmentos (Cátodo


Común) mediante pulsadores mediante la tarjeta Arduino Uno-R3

2 - 16
ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS
¿QUÉ ES UN DISPLAY DE 7 SEGMENTOS?

El display de 7 segmentos es un componente que se utiliza para la representación


de números, es muy común encontrarlos en dispositivos electrónicos debido a su
simplicidad. Está compuesto internamente por una serie de LEDS estratégicamente
ubicados de tal forma que forme un número 8.

A cada uno de los segmentos que forman el display se les denomina a, b, c, d, e, f y


g y están ensamblados de forma que se permita activar cada segmento por
separado consiguiendo formar cualquier dígito numérico. Muchas veces aparece un
octavo segmento denominado p.d. (punto decimal).
Existen dos tipos de display de 7 segmentos:

– Ánodo común

– Cátodo común

Estructura de los dos tipos de display:

En los displays de tipo ánodo común, todos los ánodos de los LEDS están unidos
3 - 16
ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS
internamente a una pata común que debe ser conectada a potencial positivo.

En esta ocasión utilizaremos el display de cátodo común. Éste tiene todos los
cátodos de los diodos unidos internamente a una pata en común la cual se conecta
a GND. El encendido de cada LED se realiza aplicando voltaje a la pata
correspondiente a través de una resistencia.

Las 2 patas del medio del display serán conectadas al potencial positivo si se trata
de un display de ánodo común y en nuestro como utilizamos un display de cátodo
común éstas patas serán el GND.

¿QUÉ ES UN PULSADOR?

El pulsador es un dispositivo electrónico que funciona por lo general como un


interruptor eléctrico, es decir en su interior tiene dos contactos, al ser pulsado uno,
se activará la función inversa de la que en ese momento este realizando.

Cuando un pin del Arduino no está conectado, el valor que nos devuelve la función
digitalRead() está indeterminado y puede variar aleatoriamente.

Debido a esto y para garantizar que la función nos devuelva un LOW cuando el
botón no esté oprimido, debemos poner lo que se conoce como una resistencia pull
down, en el lado del botón conectado al pin de entrada. Esta resistencia pull down
es una resistencia con un valor alto, usaremos una de 4.7 KΩ, conectada al pin de
tierra o GND del Arduino.

De esta manera, cuando el botón está abierto, aseguramos tener un valor de 0


Volts o LOW, dado por la resistencia pull down conectada a tierra y cuando el botón
esté cerrado, tendremos un valor de 5 Volts o HIGH. La resistencia pull down evitará
que se forme un corto circuito entre el botón y el GND.

4 - 16
ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS

¿QUÉ ES UNA RESISTENCIA?

La resistencia es un componente electrónico diseñado para causar una caída de tensión al flujo de
electricidad en un punto dado, es decir. En otras palabras se opone al paso de la corriente en un circuito
electrónico, su magnitud de resistencia depende de su cantidad de ohmio [Ω] (Unidad de medida de la
resistencia). 

METODOLOGÍA

Paso 1: Selección de los componentes y conexión del Circuito en el Programa


TinkerCad.

5 - 16
ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS

Paso 2: Realizamos el Codificado del programa en el Programa TinkerCad,


seleccionando en la pestaña código la opción texto, que nos permita controlar el
display de 7 segmentos (Cátodo Común) mediante pulsadores mediante la tarjeta
Arduino Uno-R3:

//CONTROL DEL DISPLAY CATODO COMUN CON DOS PULSADORES


int contador = 0; //Variable asociada al contador
int presionado1; //Variable para el antirrebote del pulsador aumentar
int presionado2; //Variable para el antirrebote del pulsador disminuir

int pulsador_disminuir = 9; //Pulsador conectado al pin 9


int pulsador_aumentar = 10; //Pulsador conectado a pin 10

6 - 16
ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS

void encender(int a, int b, int c, int d, int e, int f, int g)


{
//Funcion que permite mostrar los numeros del 0 al 9
//Asigna un segmento del display a cada pin

digitalWrite(2, a); //Asigna el segmento 'a' al pin 2


digitalWrite(3, b); //Asigna el segmento 'b' al pin 3
digitalWrite(4, c); //Asigna el segmento 'c' al pin 4
digitalWrite(5, d); //Asigna el segmento 'd' al pin 5
digitalWrite(6, e); //Asigna el segmento 'e' al pin 6
digitalWrite(7, f); //Asigna el segmento 'f' al pin 7
digitalWrite(8, g); //Asigna el segmento 'g' al pin 8
}

void setup() {

//Inicializa los pines como entradas/salidas digitales

pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, INPUT); //Pulsador aumentar como entrada digital
pinMode(10, INPUT); //Pulsador disminuir como entrada digital
}

void loop() {
7 - 16
ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS

//Condicionales para antirrebote y uso del pulsador aumentar

if (digitalRead(pulsador_aumentar) == LOW)
{
presionado1 = 1; //Variable del antirrebote que cambia cuando se presiona el
pulsador
}
if (digitalRead(pulsador_aumentar) == HIGH && presionado1 == 1)
{
presionado1 = 0; //Se reinicia la variable antirrebote
contador++; //Aumenta el contador
if (contador > 9)
{
contador = 9; //Si el contador esta en 9 y se aumenta, sigue mostrando el 9
}
}

//Condicionales para antirrebote y uso del pulsador disminuir

if (digitalRead(pulsador_disminuir) == LOW)
{
presionado2 = 1; //Variable del antirrebote que cambia cuando se presiona el
pulsador
}
if (digitalRead(pulsador_disminuir) == HIGH && presionado2 == 1)
{
presionado2 = 0; //Se reinicia la variable antirrebote
contador--; //Disminuye el contador

if (contador < 0) //Si el contador esta en 0 y se disminuye, sigue mostrando el 0

8 - 16
ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS
{
contador = 0;
}
}

switch (contador)
{
//Dependiendo del contador, se muestra el número indicado
//Envia estados (1 y 0) al display dependiendo del número a mostrar

case 0:
encender (1, 1, 1, 1, 1, 1, 0); //Muestra el numero 0
break;

case 1:
encender (0, 1, 1, 0, 0, 0, 0); //Muestra el numero 1
break;

case 2:
encender (1, 1, 0, 1, 1, 0, 1); //Muestra el numero 2
break;

case 3:
encender (1, 1, 1, 1, 0, 0, 1); //Muestra el numero 3
break;

case 4:
encender (0, 1, 1, 0, 0, 1, 1); //Muestra el numero 4
break;

case 5:
9 - 16
ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS
encender (1, 0, 1, 1, 0, 1, 1); //Muestra el numero 5
break;

case 6:
encender (1, 0, 1, 1, 1, 1, 1); //Muestra el numero 6
break;

case 7:
encender (1, 1, 1, 0, 0, 0, 0); //Muestra el numero 7
break;

case 8:
encender (1, 1, 1, 1, 1, 1, 1); //Muestra el numero 8
break;

case 9:
encender (1, 1, 1, 0, 0, 1, 1); //Muestra el numero 9
break;
}
}
Paso 3: Ejecución de la simulación del programa en el Programa TinkerCad, en la
estaña Iniciar la simulación y una vez verificado el programa del circuito detener la
simulación.

10 - 16
ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS

RAZONAMIENTO DE LA PRÁCTICA

1. Explique en sus palabras que es el puerto serial del Arduino


(Explique brevemente)
El puerto serie del Arduino Uno usa los pins 0(RX) y 1(TX). Estos están
conectados al controlador FTDI (ATmega 16u2) que es el que permite la
traducción del formato serie TTL a USB. Estos pins no pueden ser utilizados
mientras se usa la comunicación serie.

2. ¿Descripción de los pines de la conexión del display de 7 segmentos


cátodo común y pulsadores en el Tinkercad? (Explique brevemente)

Pin b del display va conectado al Pin 3


del arduino acompañado con una resistencia de 220 ohmios
Pin a del display va conectado al Pin 2 del arduino acompañado con una resistencia
de 220 ohmios
Pin f del display va conectado al Pin 7 del arduino acompañado con una resistencia
de 220 ohmios
Pin g del display va conectado al Pin 8 del arduino acompañado con una
resistencia de 220 ohmios
Pin e del display va conectado al Pin 6 del arduino acompañado con una resistencia
de 220 ohmios
Pin d del display va conectado al Pin 5 del arduino acompañado con una
resistencia de 220 ohmios
Pin c del display va conectado al Pin 4 del arduino acompañado con una resistencia

11 - 16
ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS
de 220 ohmios
El pulsador 1 va conectado al al Pin 10 del arduino con una resistencia de
10k(ohmios) a vcc y el
otro pin a tierra
El pulsador 2 va conectado al al Pin 9 del arduino con una resistencia de
10k(ohmios) a vcc y el
otro pin a tierra

3. ¿Qué es una resistencia y pulsador? (Explique brevemente)

La resistencia es un componente electrónico diseñado para causar una caída de tensión al flujo
de electricidad en un punto dado, es decir. En otras palabras se opone al paso de la corriente en
un circuito electrónico, su magnitud de resistencia depende de su cantidad de ohmio
[Ω] (Unidad de medida de la resistencia). 

El pulsador es un dispositivo electrónico que funciona por lo general como un


interruptor eléctrico, es decir en su interior tiene dos contactos, al ser pulsado
uno, se activará la función inversa de la que en ese momento este realizando.
4. ¿Cómo se debe realizar la conexión del display de 7 segmentos
cátodo común en el Protoboard en el Programa TinkerCad? (Captura
de pantalla)

5.

Describa la conexión del circuito en el Programa TinkerCad (Explique


brevemente y Captura de pantalla)

12 - 16
ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS

Pin b del display va conectado al Pin 3 del arduino acompañado con una
resistencia de 220 ohmios
Pin a del display va conectado al Pin 2 del arduino acompañado con una resistencia
de 220 ohmios
Pin f del display va conectado al Pin 7 del arduino acompañado con una resistencia
de 220 ohmios
Pin g del display va conectado al Pin 8 del arduino acompañado con una
resistencia de 220 ohmios
Pin e del display va conectado al Pin 6 del arduino acompañado con una resistencia
de 220 ohmios
Pin d del display va conectado al Pin 5 del arduino acompañado con una
resistencia de 220 ohmios
Pin c del display va conectado al Pin 4 del arduino acompañado con una resistencia
de 220 ohmios
El pulsador 1 va conectado al al Pin 10 del arduino con una resistencia de
10k(ohmios) a vcc y el
otro pin a tierra
El pulsador 2 va conectado al al Pin 9 del arduino con una resistencia de
10k(ohmios) a vcc y el
otro pin a tierra
Pin GND del arduino va al pin – del protoboard
Pin 5v del arduino va al pin + del protoboard

6. Escriba el programa del circuito con los respectivos comentarios en


el Programa TinkerCad (Programe y Captura de pantalla)

13 - 16
ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS

7. Comente la ejecución de la simulación del programa del circuito en


el Programa TinkerCad (Explique brevemente y Captura de
pantalla)

Aumento de 0 a 9 con el pulsador 1

14 - 16
ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS

Pulsa
dor 1

Disminuir con el pulsador 2

Pulsa
dor 2

15 - 16
ESCUELA MILITAR DE INGENIERIA TECNICO EN SISTEMAS ELECTRONICOS

NOTA. – Él envió del laboratorio debe ser a mí nro. de WhatsApp 68420093.


Colocar en el laboratorio completo su Nombre y Apellidos, código y Carnet de
Identidad. El informe siguiente clase cambiando la posición de los pines del circuito
con captura de pantalla de conexión del circuito, programación y simulación.
Invertir la posición de los pulsadores pulsador 1 Ascendente y Pulsador 2 descende

16 - 16

También podría gustarte