domingo, 2 de octubre de 2011

Contador de 0 al 99

Este circuito muestra el conteo de 0 al 99 mediante los display de 7 segmentos es realmente sencillo y fácil de programar con el microcontrolador 16f876.




#include <16F876.h>
#USE DELAY( CLOCK=4000000)
#FUSES XT,NOWDT,NOPROTECT,NOPUT
#USE fast_IO (B)
#USE fast_IO (A)
byte CONST DISPLAY[10] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

main(){
byte ud=0,dec=0;
SET_TRIS_B(0x00);
SET_TRIS_A(0x00);
OUTPUT_B(0);
 for( ;; ){
   for (dec=0;dec<10;dec++){       //Cuenta digito decenas
      for (ud=0;ud<10;ud++){
         OUTPUT_A(0x02);           //cat_D=apagado,cat_U=encendido
         OUTPUT_B(DISPLAY[ud]);   //Digito unidades
         delay_ms(50);            //Para evitar parpadeos
         
         if (dec==0) output_a(0x03);     //Si decenas=0, cat_D=apagado
         else output_a(0x01);           //Si decenas>0, cat_D=encendido
                  
         OUTPUT_B(DISPLAY[dec]);      //Digito decenas
         delay_ms(50);               //Para evitar parpadeos
     }}}}



No hay comentarios: