Sie sind auf Seite 1von 20

INFORME: PROYECTO BINARIO-DISPLAY SIETE SEGMENTOS

OSCAR IVAN CIFUENTES


JAIRO ALBERTO BARRIOS

UNIVERSIDAD ANTONIO NARIO


INGENIERA ELECTROMECNICA
ELECTRNICA INDUSTRIAL
SANTIAGO DE CALI
2017
INFORME: PROYECTO BINARIO-DISPLAY SIETE SEGMENTOS

OSCAR IVAN CIFUENTES


JAIRO ALBERTO BARRIOS

Informe: Proyecto Prctico

Presentado a:
ING. FABIAN CHAVARRIAGA LENIS

UNIVERSIDAD ANTONIO NARIO


INGENIERA ELECTROMECNICA
ELECTRNICA INDUSTRIAL
SANTIAGO DE CALI
2017
INTRODUCCIN.

En el siguiente informe se presenta el desarrollo del proyecto propuesto para la


iniciacin en el mundo del arduino, el cual consiste en representar en un display
de siete segmentos los equivalentes decimales de las entradas binarias de un dip
switch de cuatro bits. El proyecto se desarrolla bajo la plataforma de arduino uno y
se utiliza el CAD de Isis para la simulacin del proyecto; de igual forma se logra
desarrollar el montaje del proyecto en la protoboard. Aplicando conceptos bsicos
de electrnica y programacin.
OBJETIVOS.

Conocer el entorno arduino, su estructura de programacin y su


arquitectura fsica.
Servir de prembulo al desarrollo de proyectos con la plataforma arduino.
Aplicar conceptos bsicos de electrnica y programacin.

OBJETIVOS ESPECIFICOS
Conocer los comandos bsicos para la programacin en el entorno de
arduino.
Programar pines digitales de entrada y salida.
Distinguir los pines del microcontrolador Atmega de arduino.
Conocer los tipos de display de siete segmentos.
Clasificar los pines del display de siete segmentos.
Conocer el funcionamiento de las resistencias Pull- Up para la adquisicin
de entradas TTL en el microcontrolador.
Recordar el sistema de numeracin binario.

PROYECTO BINARIO-DISPLAY SIETE SEGMENTOS


Planteamiento.

El proyecto consiste en que a travs de la manipulacin de un dip switch de cuatro


bit se le enven al microcontrolador del arduino los nmeros de cero a ocho en
binario y posteriormente el microcontrolador haga el procesamiento de tomar las
seales en binario y mostrar en el display de siete segmentos los nmeros en
base diez.

Diagrama de Bloques.

+5V

MICROCONTROLA
DIP DOR DISPLAY 7
SWITCH ARDUINOR SEGMENTOS
4 Bits

GND

MATERIALES.

PLACA ARDUINO UNO.


1. Conector USB encargado de la comunicacin con el puerto serial de la PC
para la programacin del Arduino, adems de servir de fuente de
alimentacin de 5V a bajo amperaje.

2. Regulador de voltaje de 5V. cuando se conecta un adaptador como fuente


de alimentacin para el Arduino.

3. Plug de conexin para fuente de alimentacin externa con pin central


positivo, se admite hasta 20VDC.

4. Puerto de seis pines.


Reset. Se activa cuando recibe una seal de un cero lgico.
3.3V. fuente de 3.3VDC para dispositivos externos.
5V. fuente de 5VDC para dispositivos externos.
2 GND. Pines de referencia a 0V.
Vin. este pin est conectado con el positivo del plug 3 por lo que se usa
para conectar la alimentacin de la placa con una fuente externa de entre 6
y 12VDC en lugar del plug 3 o la alimentacin por el puerto USB.

5. Puerto de entradas analgicas para la conexin de sensores analgicos

6. Microcontrolador. Atmega 328 cerebro de la placa y sobre el cual se


efecta la programacin.

7. Botn de Reset.

8. Pines de programacin ICPS para programar el Arduino en la protoboard.

9. LED ON.

10. LEDs de recepcin y transmisin, estos se encienden cuando la tarjeta se


comunica con el PC. El Tx indica transmisin de datos y el Rx recepcin.

11. Puerto de conexiones, est constituido por los pines de entradas o salidas
digitales desde la cero hasta la 7. La configuracin como entrada o salida
debe ser incluida en el programa. Cuando se usa la terminal serial es
conveniente no utilizar los pines cero (Rx) y uno (Tx). Los pines 3, 5 y 6
estn precedidos por el smbolo ~ , lo que indica que permiten su uso como
salidas controladas por ancho de pulso PWM.

12. Puerto de conexiones, incluye 5 entradas o salidas adicionales (de la 8 a


la 12), las salidas 9, 10 y 11 permiten control por ancho de pulso.

13. Led estado del pin 13.

14. AREF referencias para entradas anlogas.

15. Chip de comunicacin serial.

DIP SWITCH.
Tomado de Wikipedia

Se trata de un conjunto
de interruptores encapsulados; en
ingles DIP ( Dual In- line Package),

En particular el DIP Swicht es el encargado de enviar las seales binarias en un


formato TTL, es decir para un bit 0 se establece como 0 voltios y un bit 1 ser 5V
positivos. Para lograr esto el DIP swicht se configuran con unas resistencias
denominadas PULL-UP; como se observa en la siguiente figura.

+5V

DIPSWICTH SEALES DE
ENTRADA AL MICRO

RESISTENCIAS 10K

GND

Funcionamiento : cuando uno de los interruptores del DIP SWICTH se encuentra


abierto el voltaje de la corriente que produce los 5V no fluye hacia el micro, por lo
contrario las entradas del micro se encuentran conectadas por medio de las
resistencias de 10K a tierra o la Ref enviando un cero lgico o 0V a la entrada
del microcontrolador.

Cuando un interruptor del DIP SWICTH se cierra la corriente fluye a las entradas
del micro debido a que se encuentra en su trayectoria una resistencia de 10K y el
nico camino de baja resistencia es el que dirige hacia el microcontrolador
originndose as los 5V+ o 1 Binario en la entrada del pin del microcontrolador.

DIP EN CIRCUITO ABIERTO

ENTRADA AL MICRO

0V o 0 binario

DIP EN CIRCUITO CERRADO


RECORRIDO
RESISTENCIA
DE LA
10K 5V+ o 1 binario ENTRADA AL MICRO
CORRIENTE
DISPLAY DE SIETE SEGMENTOS.

Es un visualizador de 7 segmentos es un componente que se utiliza para la


representacin de caracteres (normalmente nmeros) en muchos dispositivos
electrnicos, debido en gran medida a su simplicidad. Aunque externamente su
forma difiere considerablemente de un led tpico, internamente estn constituidos
por una serie de ledes con unas determinadas conexiones internas,
estratgicamente ubicados de tal forma que forme un nmero '8'.

En el mercado existen variedad de displays de 7 segmentos pero se pueden


clasificar segn su forma de conexin, estos pueden ser display de ando comn si
el pin comn es conectado a 5 V+ o display de ctodo comn si el pin comn se
conecta a 0V de REF.

En el proyecto se utiliz el display de nodo comn y sus pines comunes se


conectaron a 5V por medio de una resistencia de 220 ohmios. En la siguiente
figura se observa la configuracin de los pines y sus respectivos segmentos; asi
como la forma como se realizaron las conexiones.

En este punto se define que las salidas del microcontrolador Atmega debern ser
de 0V o Ref para lograr iluminar los segmentos del display de nodo comn.

Tomado de electrontools.com

5V+

RESISTENCIA DE 220

A LAS SALIDAS DEL MICRO

DISPLAY 7 SEGMENTOS

PROCEDIMIENTO.
PIN D
PIN C
PIN E

PINBF
PIN

PIN A
Se empieza por designar los pines del Arduino que trabajaran como entrada y
recibirn las seales lgicas del DIP SWICTH, posteriormente se designan los
pines de que funcionaran como salida del microcontrolador e irn conectados al
display de siete segmentos. Como se ilustra en el siguiente diagrama.
PIN5
PIN4
PIN6

PIN7
PIN3

PIN2

PIN12
PIN G

MONTAJE EN ISIS.
PROGRAMACIN.
La programacin se realiz en el entorno Arduino 8.1 descargado de la pgina de
Arduino.cc. Inicialmente se configuran los pines de entrada y salida segn el
diagrama. Se crean las subrutinas y se realiza la lectura de los pines de entrada,
la condcional if se usa para establecer los pines de entrada en alto y llamar a la
subrutina establecida que enviara al puerto de salida los bit 0 necesarios para
iluminar el display de siete segmentos para poder visualizar el nmero
correspondiente.

CODIGO
void setup() {
pinMode(2,OUTPUT); //segmento A
pinMode(3,OUTPUT); //segmento B
pinMode(4,OUTPUT); //segmento C
pinMode(5,OUTPUT); //segmento D
pinMode(6,OUTPUT); //segmento E
pinMode(7,OUTPUT); //segmento F
pinMode(8,OUTPUT); //segmento G
pinMode (9,INPUT); //ENTRADA 1
pinMode (10,INPUT); //ENTRADA 2
pinMode (11,INPUT); //ENTRADA 3
pinMode (12,INPUT); //ENTRADA 4

void cero ()
{
digitalWrite (2,LOW);
digitalWrite (3,LOW);
digitalWrite (4,LOW);
digitalWrite (5,LOW);
digitalWrite (6,LOW);
digitalWrite (7,LOW);
digitalWrite (8,HIGH);
loop();
}

void uno ()
{
digitalWrite (2,HIGH);
digitalWrite (3,LOW);
digitalWrite (4,LOW);
digitalWrite (5,HIGH);
digitalWrite (6,HIGH);
digitalWrite (7,HIGH);
digitalWrite (8,HIGH);
loop();
}

void dos()
{
digitalWrite (2,LOW);
digitalWrite (3,LOW);
digitalWrite (4,HIGH);
digitalWrite (5,LOW);
digitalWrite (6,LOW);
digitalWrite (7,HIGH);
digitalWrite (8,LOW);
loop();
}

void tres()
{
digitalWrite (2,LOW);
digitalWrite (3,LOW);
digitalWrite (4,LOW);
digitalWrite (5,LOW);
digitalWrite (6,HIGH);
digitalWrite (7,HIGH);
digitalWrite (8,LOW);
loop();
}

void cuatro()
{
digitalWrite (2,HIGH);
digitalWrite (3,LOW);
digitalWrite (4,LOW);
digitalWrite (5,HIGH);
digitalWrite (6,HIGH);
digitalWrite (7,LOW);
digitalWrite (8,LOW);
loop();
}

void cinco ()
{
digitalWrite (2,LOW);
digitalWrite (3,HIGH);
digitalWrite (4,LOW);
digitalWrite (5,LOW);
digitalWrite (6,HIGH);
digitalWrite (7,LOW);
digitalWrite (8,LOW);
loop();
}

void seis ()
{
digitalWrite (2,LOW);
digitalWrite (3,HIGH);
digitalWrite (4,LOW);
digitalWrite (5,LOW);
digitalWrite (6,LOW);
digitalWrite (7,LOW);
digitalWrite (8,LOW);
loop ();
}

void siete ()
{
digitalWrite (2,LOW);
digitalWrite (3,LOW);
digitalWrite (4,LOW);
digitalWrite (5,HIGH);
digitalWrite (6,HIGH);
digitalWrite (7,HIGH);
digitalWrite (8,HIGH);
loop ();
}

void ocho ()
{
digitalWrite (2,LOW);
digitalWrite (3,LOW);
digitalWrite (4,LOW);
digitalWrite (5,LOW);
digitalWrite (6,LOW);
digitalWrite (7,LOW);
digitalWrite (8,LOW);
loop ();
}
void nueve ()
{
digitalWrite (2,LOW);
digitalWrite (3,LOW);
digitalWrite (4,LOW);
digitalWrite (5,HIGH);
digitalWrite (6,HIGH);
digitalWrite (7,LOW);
digitalWrite (8,LOW);
loop ();
}

void loop() {
int boton1 = digitalRead (9); //1 del dip
int boton2 = digitalRead (10); //2 del dip
int boton3 = digitalRead (11); //3 del dip
int boton4 = digitalRead (12); //4 del dip
if (boton1==0 && boton2==0 && boton3==0 && boton4==0)
{
cero();
}
if (boton1==0 && boton2==0 && boton3==0 && boton4==1)
{
uno ();
}
if (boton1==0 && boton2==0 && boton3==1 && boton4==0)
{
dos();
}

if (boton1==0 && boton2==0 && boton3==1 && boton4==1)


{
tres();
}

if (boton1==0 && boton2==1 && boton3==0 && boton4==0)


{
cuatro();
}
if (boton1==0 && boton2==1 && boton3==0 && boton4==1)
{
cinco();
}

if (boton1==0 && boton2==1 && boton3==1 && boton4==0)


{
seis();
}

if (boton1==0 && boton2==1 && boton3==1 && boton4==1)


{
siete();
}

if (boton1==0 && boton2==0 && boton3==0 && boton4==1)


{
ocho();
}

if (boton1==1 && boton2==0 && boton3==0 && boton4==1)


{
nueve();
}
}

MONTAJE.

Das könnte Ihnen auch gefallen