You are on page 1of 3

Labo .

7
#include <avr/io.h>
#include <util/delay.h>
int contador=0;
int descanzo,unidades,decenas,centenas,i;
int pulsador=1;
int numeros[10]={0x01,0x4f,0x12,0x06,0x4c,0x24,0x20,0x0f,0x00,0x04};

int main(void)
{
DDRB=0xFF;
DDRD|=_BV(PD0)|_BV(PD1)|_BV(PD2);
while(1)
{
if(bit_is_clear(PIND,PD5)&(pulsador==1))
{
_delay_ms(40);
if(bit_is_clear(PIND,PD5)&(pulsador==1))
{
contador++;
descanzo=contador%100;
unidades=descanzo%10;
decenas=descanzo/10;
centenas=contador/100;
if(contador>999)
{contador=0;}
pulsador=0;
}
}
if(bit_is_set(PIND,PD5))
{
pulsador=1;
}
PORTD=0xFB;
PORTB=numeros[unidades];
_delay_ms(20);
PORTD=0xFD;
PORTB=numeros[decenas];
_delay_ms(20);
PORTD=0xFE;
PORTB=numeros [centenas];
_delay_ms(20);
}

You might also like