;in Assembler bzw. im AVR-Studio

.include "m8def.inc" ;damit bindest du die Tabelle ein, ist zu finden unter C:\Programme\Atmel\AVR Tools\AvrAssembler2\Appnotes

ldi r16, 0xFF
out DDRB, r16 ;Port B als Ausgang
ldi r16, 0b00000011
out PORTB, r16 ; sieht ganz gut aus

;nur noch über zwei weitere Pins deine Sensoren einlesen (Schalter) und je nach Zustand dein Port-Ausgang (PortB) steuern.
;mit sbrs oder sbrc kannst du vergleichen, der Befehl der danach kommt wird entweder bearbeitet oder übersprungen -> je nach Bit-Kombination
;mit sbi oder cbi kannst du einzelne Bits setzten oder löschen, in deinem Fall LED an oder aus

so ungefär sollte es funktionieren:

;-----------------------------------------------------------------------------------
.include "m8def.inc"

.def temp = r16
.def sensor = r17

;Stack-Pointer an die letzte SRAM Addresse für den Befehl "rcall"
ldi temp, LOW(RAMEND) ;LOW-Byte der obersten RAM-Adresse
out SPL, temp
ldi temp, HIGH(RAMEND) ;HIGH-Byte der obersten RAM-Adresse
out SPH, temp


;##############################################
main: ;Prog-Anfang
rcall port_init ;unterroutine


;jetzt nur noch den Inhalt im "sensor" register r17 vergleichen
sbrc sensor, 0 ;überspringe wenn Bit 0 nicht gesetzt ist
rcall MotorL_aus

sbrc sensor, 1 ;überspringe wenn Bit 1 nicht gesetzt ist
rcall MotorR_aus

...
...
...

rjmp main ;Endlosschleife -> sprung auf main
;##############################################



port_init:
ldi temp, 0xFF
out DDRB, temp ;Port B als Ausgang
ldi temp, 0b00000011
out PORTB, temp ; sieht ganz gut aus


ldi temp, 0x00
out DDRD, temp ;Port D als Eingang
ldi temp, 0xFF ; evtl. interne pull up´s aktivieren
out PORTD, temp
in sensor, PIND ;sensor = r17
ret



MotorL_aus:
sbi PORTB, PB0 ;setzte Bit 0 von PortB
ret

MotorR_aus:
sbi PORTB, PB1 ;setzte Bit 1 von PortB
ret

MotorL_ein:
cbi PORTB, PB0 ;setzte Bit 0 von PortB
ret

MotorR_ein:
cbi PORTB, PB1 ;setzte Bit 1 von PortB
ret



; Infos gibt es unter... http://www.mikrocontroller.net/artic..._IO-Grundlagen

..und im Datenblatt auf Seite 289