//...

#define ENC_PORT		PORTD		//Enkóder port kiválasztás
#define ENC_PORT_DIR		DDRD		//Enkóder port irány beállítás
#define ENC_IN			PIND		//Enkóder bemenet
#define ENC_PIN1		0			//Enkóder 1. vagy 3. láb
#define ENC_PIN2		1			//Enkóder 3. vagy 1. láb

#define _E0	((ENC_IN&(1<<ENC_PIN1))>>ENC_PIN1)
#define _E1	((ENC_IN&(1<<ENC_PIN2))>>ENC_PIN2)


//...
ISR(INT0_vect){		//Az INT0 láb legyen felhúzva tápfeszre, belső vagy külső ellenállással

	_delay_ms(2);
		if (_E0<_E1){
			//Jobbra léptet
		}else if (_E0>_E1){
			//Balra léptet
		}
	while(_E0!=_E1);

	
}
//...

void ENC_PORT_INIT(void){
	ENC_PORT |= (1<<ENC_PIN1) | (1<<ENC_PIN2);				//Bemenet felhúzóellenállás beállítása
	ENC_PORT_DIR &= ~((1<<ENC_PIN1)|(1<<ENC_PIN2));		//Bemenet maszkolása
	
}

//...

int main(void){
//...
ENC_PORT_INIT();

//INTx beállítása, lefutó élre interruptoljon



//...

}