You are on page 1of 2

#include "mbed.

h"
BusOut portac
(PB_10,PB_4,PB_5,PB_3,PA_10,PB_14,PB_15,PB_2,PA_8,PA_9,PC_7,PB_6,PA_7,PA_6,PA_5,PB_
9);
BusOut LEDSB (PB_10,PB_4,PB_5,PB_3,PA_10,PB_14,PB_15,PB_2);
BusOut LEDSD (PB_9,PA_5,PA_6,PA_7,PB_6,PC_7,PA_9,PA_8);
BusIn INTERRUPTOR(PC_15,PC_14,PC_13);
void borrar(void);
void secuencia0(void);
void secuencia1(void);

void borrar(void)
{
portac=0;
LEDSB=0;
LEDSD=0;
}
void s1(void)
{
uint16_t i,valor;

LEDSB=0;
LEDSD=0;
wait(0.25);
valor=1;

for (i=0;i<15;i++)
{ portac=valor;
wait(0.25);
valor=valor<<1;
}

for (i=0;i<=15;i++)
{ portac=valor;
wait(0.25);
valor = valor>>1;
}
}
void secuencia0(void)
{
uint16_t i,valor;

LEDSB=0;
LEDSD=0;
wait_ms(200);
valor=1;

for (i=0;i<16;i++)
{ portac=valor;
wait(0.25);
valor=(valor<<1)+1;
}
for (i=0;i<=16;i++)
{ portac=valor;
wait(0.25);
valor = valor>>1;
}
}
int main(void)
{
borrar();

while(1)
{ wait(1);
switch (INTERRUPTOR)

{
case 0:secuencia0();break;
case 1:s1();break;
default : borrar(); break;
}
}
}

You might also like