Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
MICROPROCESADORES 1 INFORME PRACTICA 7 SEGMENTOS CATADO COMÚN EN ARDUINO INTEGRANTES: ÁLVARO JAVIER CAMACHO MANUEL RICARDO PUENTES GRUPO: B152 UNIDADES TECNOLÓGICAS DE SANTANDER BUCARAMANGA-SANTANDER 2018 INTRODUUCION En esta práctica vamos a utilizar un display 7 segmentos en el que se generará el siguiente texto (UTS-2018) el cual aparecerá letra por letra al oprimir el interruptor RESUMEN Utilizamos un Arduino nano el cual se programó para generar un texto en un display 7 segmentos con la implementación de un pulsador se definieron los puertos del 2 al 8 para los segmentos del display, puerto 9 para el pulsador yel puerto de 5v+ para alimentar el circuito. A las salidas de los segmentos del display conectamos resistencias de 220ohm para evitar que se queme algún segmento del display lo mismo se realizo en el pulsador y en el display con resistencias de 1kohm y 10kohm a demás se utilizó un condensador (condensador tipo lenteja referencia 104) Desarrollo de la programación 1)int c = 0; //Variable asociada al contador esta variable (contador) se utilizó para almacenar las variables en un espacio de memoria y que el mismo permita el incremento y decremento de las variables 2)int p; //Variable para el anti-rebote del pulsador aumentar Esta variable se utilizó para evitar problemas de con el anti-rebote del pulsador y así evitar problemas con el Arduino 3) digitalWrite(2, a); //Asigna el segmento 'a' al pin 2 Se utilizo para activar los puertos del Arduino en este caso del puerto 2 al 8 para los segmentos del display y el 9 para el pulsador 4) pinMode(2, OUTPUT); Se utilizó para definir lo puertos empleados por el 7 segmento como salidas 5) pinMode(9, INPUT); Este se empleó para definir como salida el puerto utilizado por el pulsador 6) if (digitalRead(p_a) == LOW) { p=1; Este se empleo para que el se repita el programa siempre que el pulsador sea 1 7) case 1: encender (0, 1, 1, 1, 1, 1, 0) break; empleamos este para prender los segmentos que se necesitan para la letra deseada Materiales 1.arduino nano 2.display 7 segmentos (cátodo común) 3.cable 4.resistensias (7 de 220ohm, 1 de 10kohm y una de 1kohm) 5.protoboard 6.condesador (ref 104) 7.interuptor (normalmente abierto) 8.progrmador Arduino Circuito PRODUCTO FINAL MONTAJE PROGRAMACIÓN int c = 0; //Variable asociada al contador int p; //Variable para el antirrebote del pulsador aumentar int p_a = 9; //Pulsador conectado al pin 9 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 } void loop() { if (digitalRead(p_a) == LOW){ p=1; } if (digitalRead(p_a) == HIGH && p == 1){ p = 0; c++; if(c>=9){ c=0; } } switch (c) { case 0: encender (0, 0, 0, 0, 0, 0, 0); //Muestra que esta apagado break; case 1: encender (0, 1, 1, 1, 1, 1, 0); //Muestra la letra u break; case 2: encender (0, 0, 0, 1, 1, 1, 1); //Muestra la letra t break; case 3: encender (1, 0, 1, 1, 0, 1, 1); //Muestra la letra s break; case 4: encender (0, 0, 0, 0,0, 0, 1); //muestra un - break; case 5: encender (1, 1, 0, 1, 1, 0, 1); //Muestra el numero 2 break; case 6: encender (1, 1, 1, 1, 1, 1, 0); //Muestra el numero 0 break; case 7: encender (0, 1, 1, 0, 0, 0, 0); //Muestra el numero 1 break; case 8: encender(1, 1, 1, 1, 1, 1, 1); //Muestra el numero 8 break; case 9: encender(0, 0, 0, 0, 0, 0, 0); //Muestra que esta apagado break; } }
Compartir