Está en la página 1de 4

DECODIFICADOR BCD A 7 SEGMENTOS

1. Problema

Utilizando programación con Arduino, representar los números en un display 7 segmentos


del 0 al 9 utilizando un decodificador BCD a 7 segmentos (puede ser de ánodo común o
cátodo común según la disponibilidad del dispositivo a simular). Y que el incremento de la
cuenta se haga cada vez que se presione un pulsador.

2. Simulación

3. Código

/* Representar los números en un display 7 segmentos del 0 al 9 utilizando


un decodificador BCD a 7 segmentos y que el incremento de la cuenta se haga
cada vez que se presione un pulsador */

//declaracion de variables int:nuemero entero, const int:

#define pulsador 2
const int A = 11;
const int B = 10;
const int C = 9;
const int D = 8;

//Variables globales//

int i=0;
int a=0;

// asigna entradas y salidas, solo se ejecuta un ves//

void setup()
{
pinMode(pulsador, INPUT);
pinMode(A, OUTPUT);
pinMode(B, OUTPUT);
pinMode(C, OUTPUT);
pinMode(D, OUTPUT);
Serial.begin(9600);

}
//peograma a ejecutar, se ejecuta indefinidamente//

void loop(){

i=digitalRead(pulsador);
if(i==1){

for(int a=0; a<10; a++)

//Numero 0
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, LOW);

delay(500);

//Numero 1
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, LOW);

delay(500);
//Numero 2
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, LOW);
digitalWrite(D, LOW);

delay(500);
//Numero 3
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, LOW);
digitalWrite(D, LOW);

delay(500);
//Numero 4
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);

delay(500);
//Numero 5
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);

delay(500);
//Numero 6
digitalWrite(A, LOW);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);

delay(500);
//Numero 7
digitalWrite(A, HIGH);
digitalWrite(B, HIGH);
digitalWrite(C, HIGH);
digitalWrite(D, LOW);

delay(500);
//Numero 8
digitalWrite(A, LOW);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, HIGH);

delay(500);
//Numero 9
digitalWrite(A, HIGH);
digitalWrite(B, LOW);
digitalWrite(C, LOW);
digitalWrite(D, HIGH);
delay (500);
}
else{ }
}

También podría gustarte