You are on page 1of 2

#include <16F628A.

h>
#fuses NOWDT,INTRC,NOPUT,NOPROTECT,BROWNOUT,NOMCLR
#use delay (clock=4000000)
#use fast_io(b)
int a=0;
int b=0;
int c=0;
int d=0;
int e=0;
void verific()
{
if(!input(pin_a0))
a=1;
else
a=0;
if(!input(pin_a1))
b=1;
else
b=0;
}
void cero()
{
output_high(pin_b0);
output_low(pin_b1);
output_low(pin_b2);
output_low(pin_b3);
delay_ms(500);
}
void uno(){
output_low(pin_b0);
output_high(pin_b1);
output_low(pin_b2);
output_low(pin_b3);
delay_ms(500);
}
void dos()
{
output_low(pin_b0);
output_low(pin_b1);
output_high(pin_b2);
output_low(pin_b3);
delay_ms(500);
}
void tres()
{
output_low(pin_b0);
output_low(pin_b1);
output_low(pin_b2);
output_high(pin_b3);
delay_ms(500);
}
void main()
{
set_tris_a(0x1F);
set_tris_b(0x00);

int v=0;
if(input(pin_a0))
{
output_low(pin_b0);
output_low(pin_b1);
output_low(pin_b2);
output_low(pin_b3);
}
while(1)
{
verific();
if(a==1)
{
v++;
verific();
if(v==1){
cero();}
if(v==2){
uno();}
if(v==3){
dos();}
if(v==4){
tres();}
}
if(b==1)
{v--;
verific();
if(v==1){
cero();}
if(v==2){
uno();}
if(v==3){
dos();}
if(v==4){
tres();}
}}}

You might also like