Está en la página 1de 2

/*-------------------------------------------------------------------------------------------------- Proyecto Cartel -----------------------------------------------------------------------------------------------------------------------*/

//Configuracion:
#INCLUDE <16F628A.H>
#USE INTRC_IO,NOWDT,NOLVP,MCLR,NOPROTECT
#USE DELAY(CLOCK=4000000)
#DEFINE CLOCK PIN_A0
#DEFINE DATO PIN_A1
#DEFINE RESET PIN_A2
const int ALFA[11][8]={0xFF,0xFF,0x18,0x18,0x18,0xFF,0xFF,0x00;
0x00,0xFF,0xFF,0x03,0x03,0x03,0x03,0x00;
0xFF,0xFF,0x18,0x18,0x18,0xFF,0xFF,0x00;
0x00,0xFF,0xFF,0xC3,0xC3,0xC3,0xC3,0x00;
0x00,0xC0,0xC0,0xFF,0xFF,0xC0,0xC0,0x00;
0x00,0xFF,0xFF,0xCC,0xCE,0xFB,0x71,0x00;
0x00,0x7E,0xFF,0xC3,0xC3,0xFF,0x7E,0x00;
0xFF,0xFF,0x60,0x30,0x18,0x0C,0xFF,0xFF;
0x00,0xC3,0xC3,0xFF,0xFF,0xC3,0xC3,0x00;
0x00,0xFF,0xFF,0xC3,0xC3,0xC3,0xC3,0x00;
0x00,0x7F,0xFF,0xD8,0xD8,0xFF,0x7F,0x00;
}
//Variables a usar en el proyecto
int Max;
int Cont=0;
int Letra;
int C=0;
void config(void)
{ set_tris_b(0x00);
output_b(0x00);
set_tris_a(0x00);
output_a(0x00);
setup_adc(ADC_OFF);
setup_comparator(NC_NC_NC_NC);
}
//Funcion que te permite enviar un uno o cero
void SEND_DATA(short DATA)
{ output_bit(DATO.DATA);
output_bit(CLOCK,0);
delay_us(2)
output_bit(CLOCK,1);
}
//Funcion borrado
void CLEAR(void)
{ for(Max=1;Max<=8;Max++)
{DEND_DATA(1);}
}
//Funcion habilitador
void HABILITO(void)
{ if(Cont==0) SEND_DATA(1);
else SEND_DATA(0);
}
//Programa principal

void main(void)
{ config();
output_bit(Reset,1);
Clear();
SEND:DATA(0);
while(TRUE)
{ for(Letra=0;Letra<8;Letra++)
{ output_b(~ALFA[Letra]);
delay_us(5);
SEND_DATA(1);
}
SEND_DATA(0);
}
}

También podría gustarte