Practica 6 Display de 7 Segmentos
Practica 6 Display de 7 Segmentos
Practica 6 Display de 7 Segmentos
DISPLAY DEJacqueline
7 SEGMENTOS Luna
701 MECANICA
[Email address]
DISPLAY DE 7 SEGMENTOS:
Ctodo comn
En los displays de tipo nodo comn, todos los nodos de los LEDS estn unidos
internamente a una pata comn que debe ser conectada a potencial positivo.
MATERIAL NECESARIO:
DESCRIPCIN
3 Ahora el pin com que est del lado del punto decimal se conecta a tierra.
4 Una vez conectado todo el cableado del display se procede a colocar los dos
botones para controlar el display.
5 Para eso conectamos los dos botones, a ambos les conectamos una resistencia
de 10K ohm y en medio de estos un cable que va a ir a los pines digitales de
Arduino en este caso el botn de incrementar ira al pin 9 y el de decrementar al
pin 10.
6 Ahora a otro extremo de los botones se conectarn cables que irn a la lnea
roja de nuestra protoboard y de esta lnea sacaremos un cable que ira a la
conexin de 5v.
CODIGO:
/* se declaran las contantes para identificar cada led*/
const int a = 2;
const int b = 3;
const int c = 4;
const int d = 5;
const int e = 6;
const int f = 7;
const int g = 8;
const int BtnIncremento = 9; // boton de incremento conectadoa al pin 9
const int BtnDecremento = 10; // boton de decremento conectadoa al pin 10
do {
estado = digitalRead (pin);
if (estado != estadoAnterior ){ // comparamos el estado actual
contador =0; // reiniciamos el contador
estadoAnterior= estado;
}
else{
contador = contador +1; // aumentamos el contador en 1
}
delay (1);
}
while (contador < tiempoAntirebote);
return estado;
}
/* Metodo para elegir que numero mostrar en el display*/
void actualizarNumero(){
switch (cuenta) {
case 0:
/*Bloque para mostrar un 0*/
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
digitalWrite(f, HIGH);
digitalWrite(g, LOW);
break;
case 1:
/*Bloque para mostrar un 1*/
digitalWrite(a, LOW);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, LOW);
digitalWrite(e, LOW);
digitalWrite(f, LOW);
digitalWrite(g, LOW);
break;
case 2:
/*Bloque para mostrar un 2*/
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, LOW);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
digitalWrite(f, LOW);
digitalWrite(g, HIGH);
break;
case 3:
/*Bloque para mostrar un 3*/
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, LOW);
digitalWrite(f, LOW);
digitalWrite(g, HIGH);
break;
case 4:
/*Bloque para mostrar un 4*/
digitalWrite(a, LOW);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, LOW);
digitalWrite(e, LOW);
digitalWrite(f, HIGH);
digitalWrite(g, HIGH);
break;
case 5:
/*Bloque para mostrar un 5*/
digitalWrite(a, HIGH);
digitalWrite(b, LOW);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, LOW);
digitalWrite(f, HIGH);
digitalWrite(g, HIGH);
break;
case 6:
/*Bloque para mostrar un 6*/
digitalWrite(a, HIGH);
digitalWrite(b, LOW);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
digitalWrite(f, HIGH);
digitalWrite(g, HIGH);
break;
case 7:
/*Bloque para mostrar un 7*/
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, LOW);
digitalWrite(e, LOW);
digitalWrite(f, LOW);
digitalWrite(g, LOW);
break;
case 8:
/*Bloque para mostrar un 8*/
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, HIGH);
digitalWrite(f, HIGH);
digitalWrite(g, HIGH);
break;
case 9:
/*Bloque para mostrar un 9*/
digitalWrite(a, HIGH);
digitalWrite(b, HIGH);
digitalWrite(c, HIGH);
digitalWrite(d, HIGH);
digitalWrite(e, LOW);
digitalWrite(f, HIGH);
digitalWrite(g, HIGH);
}
}
void setup(){
/*Declaramos los segmetos del display como salidas*/
pinMode(a, OUTPUT);
pinMode(b, OUTPUT);
pinMode(c, OUTPUT);
pinMode(d, OUTPUT);
pinMode(e, OUTPUT);
pinMode(f, OUTPUT);
pinMode(g, OUTPUT);
/*Declaramos los botones como entradas*/
pinMode(BtnIncremento, INPUT);
pinMode(BtnDecremento, INPUT);
void loop() {
estadoBtnIncremento = digitalRead(BtnIncremento);
if (estadoBtnIncremento != estadoBtnIncrementoAnterior) { // si hay cambio con respeto al
estado
if (antirebote (BtnIncremento)){ //checamos si esta preionado y si lo esta
cuenta++; //aumentamos la cuenta
if (cuenta > 9){
cuenta = 9;
}
}
}
estadoBtnIncrementoAnterior = estadoBtnIncremento; // guardamos el estado del
boton
cuenta = 0;
}
}
}
estadoBtnDecrementoAnterior = estadoBtnDecremento; //guardamos el estado del boton
RESULTADOS:
CONCLUSION:
LUNA ORTEGA YURI KARLA JACQUELINE
Con esta prctica aprend a utilizar un medio electrnico que muestra una salida visual
comprensible, en este caso nmeros, esto es muy til para complementar con otro tipo
de prcticas. Tambin aprend sobre el uso del switch y el case en Arduino para as
determinar que numero mostrar en el display. Y por ltimo la importancia de hacer
nuestras conexiones ordenadamente cuando la prctica requiere el uso de mucho
cableado.