Display 7 Segmentos Y PIC – Tutorial Electronica

Display 7 Segmentos Y PIC – Tutorial Electronica

¿Quieres aprender a montar un display 7 segmentos en un pic? En este Articulo veremos como conectar un display de 7 segmentos de anodo comun a un PIC16F877A y mostrar un contador de 0 a 9. Tambien conectaremos un led para indicar el estado del circuito. Comenzemos…

Requerimientos

  • -Programador de Pics (Uso uno master prog)
  • -PIC16F877A
  • -Display de 7 segmentos de anodo comun
  • -Cristal de Cuarzo de 4 MHZ
  • -2 Capacitores Ceramicos de 22pF
  • -3 Resistencias de 220Ω
  • -1 Resistencia de 10KΩ
  • -1 led color Verde
  • -Alimentacion 5V (Baterias,conexion usb,fuente de poder,etc)
  • -Protoboard
  • -Cable para Protoboard

Recomendado

Estructura del PIN 16F877A

display 7 segmetnos y pic 16f877a

Desarrollo

Para empezar vamos a ver el circuito que queremos realizar en este articulo.


Suscríbete!

Suscríbete a nuestra lista de correo y recíbe los últimos contenidos directamente en tu bandeja de correo electrónico, puedes elegir únicamente de que categoria del blog quieres recibir contenido.

Suscríbeme

circuito display pic
Obviamente con su respectiva alimentación y tierra en el pin 11 y 12.

Montamos este circuito en el protoboard.

display 7 segmetnos y pic jonathanmelgoza

Como puedes ver al ser un display de anodo común los pines centrales de éste se conectan a voltaje, no a tierra.

Ahora pasemos al programa en C que se cargara en el Microcontrolador.

#include <16F877A.h>
#fuses XT, NOWDT
#use delay(clock=4000000)

#BYTE TRISB = 0x86
#BYTE PORTB = 0x06

void escribir(int n); //definiciones de funciones

void main(){ //funcion principal
   TRISB = 0x00; //establecemos puerto b como salida
   while(1){ //ciclo infinito
      int i; 
      for(i=0;i<10;i++){ //realizamos el conteo de 0 a 9 para el display
         escribir(i); //mandamos escribir el numero correspondiente
         delay_ms(1000); //esperamos 1 seg
      }
   }
}

void escribir(int n){ //funcion para escribir el numero en el display
   switch(n){
      case 0: // si es 0 apagamos pines abcdef 
         PORTB=0B11000000;
         break;
      case 1: // si es 1 apagamos pines bc 
         PORTB=0B11111001;
         break;
      case 2: // si es 2 apagamos pines abdeg 
         PORTB=0B10100100;
         break;
      case 3: // si es 3 apagamos pines abcdg 
         PORTB=0B10110000;
         break;
      case 4: // si es 4 apagamos pines bcfg 
         PORTB=0B10011001;
         break;
      case 5: // si es 5 apagamos pines acdfg 
         PORTB=0B10010010;
         break;
      case 6: // si es 6 apagamos pines acdefg 
         PORTB=0B10000010;
         break;
      case 7: // si es 7 apagamos pines abc 
         PORTB=0B11111000;
         break;
      case 8: // si es 8 apagamos pines abcdefg 
         PORTB=0B10000000;
         break;
      case 9: // si es 9 apagamos pines abcfg 
         PORTB=0B10011000;
         break;
   }
}

Al contrario de lo que pudiera parecer, para encender un led en el display es necesario mandar una señal de apagado, esto es porque estamos manejando un display de anodo comun, asi que para encenderlo es necesario mandarle una señal baja para que pueda tener conexion y asi encender. Tambien si te diste cuenta al pin b7 siempre le enviamos un 1 sin importar que numero sea, esto es porque utlizamos ese pin para encender el led extra que agregamos para encender en cuanto reciba energia, este pin ya no esta conectado al display por lo que funciona de manera normal y el 1 que le enviamos es para mantenerlo encendido.

Despues convertimos el codigo fuente a hexadecimal (puedes generarlo con el programa PIC C COMPILER CSS).
Luego mediante el programador de pics y su respectivo software lo grabamos en el microcontrolador.
y probamos.


Conclusion

En este articulo vimos como programar un microcontrolador para realizar una determinada tarea, en este caso contar del 0 al 9 y mostrarlo en un display, vimos el codigo fuente que contiene la estructura basica de un programa para un PIC y armamos un circuito para montar el PIC y el display.

Esto servira para empezar a desarrollar nuestros circuitos e ir aprendiendo.

Si te sirvio este post no olvides compartirlo en tus redes sociales y dejarme un comentario, asi podré saber que es útil para ti y seguiré subiendo post de este tema.

Hasta luego!

Clic para valorar esta información
[Total: 2 Promedio: 4.5]