#include <avr/io.h>
#define F_CPU 16000000UL
#include <util/delay.h>

//------------------------------------------------------------------------------
int main (void) {

	DDRB |= (1 << DDB5);						//PB5 vyvod nastaveny na vystup
	PORTB |= (1 << PORTB0)|(1 << PORTB1);		//PB0, PB1, povolene pull-up rezistory
		
	while(1) {
		if ((PINB & (1<<PINB1)) && (PINB & (1<<PINB0)))				//11
			PORTB &= ~(1<<PORTB5);       //LED_OFF	
		else if (!(PINB & (1<<PINB1)) && (PINB & (1<<PINB0))) {		//01  
			PORTB |= (1<<PORTB5);  _delay_ms (100);
			PORTB &= ~(1<<PORTB5); _delay_ms (900);
		}
		else if ((PINB & (1<<PINB1)) && !(PINB & (1<<PINB0)))		//10
			PORTB |= (1<<PORTB5);        //LED_ON
		else if (!(PINB & (1<<PINB1)) && !(PINB & (1<<PINB0))) {	//00
			PORTB |= (1<<PORTB5);  _delay_ms (100);
			PORTB &= ~(1<<PORTB5); _delay_ms (200);
		}
		/*
		asm("nop"); asm("nop");			
        switch (PINB & 0b00000011) {
			case 0:		PORTB |= (1<<PORTB5);	//_delay_ms (100); 
						PORTB &= ~(1<<PORTB5);  //_delay_ms (200); 
						break;
			case 1:		PORTB |= (1<<PORTB5);  //_delay_ms (100);
						PORTB &= ~(1<<PORTB5); //_delay_ms (500);
						break;
			case 2:		PORTB |= (1<<PORTB5);  break;
			case 3:		PORTB &= ~(1<<PORTB5); break;
		}
		*/
	}
}
//------------------------------------------------------------------------------

 