Pesquisar neste blog

02/06/2022

Contador multiplexado com PIC 16F876

Código feito no CCS C Compiler

//PÁGINA 63
#include <16F876.h>
#USE DELAY(CLOCK = 4MHz)
#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};
         
void main(){
   byte ud = 0, dec = 0;
   SET_TRIS_B(0x00);
   SET_TRIS_A(0x00);
   OUTPUT_B(0);
   
   for( ;; ){
      for(dec = 0; dec < 10; dec++){
         for(ud = 0; ud < 10; ud++){
            output_a(0x02);
            output_b(DISPLAY[ud]);
            delay_ms(50);
            
            if (dec == 0) output_a(0x03);
            else output_a(0x01);
                                    //cat_D_ = acender
            OUTPUT_B(DISPLAY[dec]);//digito dezenas
            delay_ms(50);     //para evitar paralelos
         }
      }
   }
}




Nenhum comentário: