So, hab mich jetzt mal rangesetzt, aber mir fehlt der Befehl, womit ich prüfen kann, was in einem Register drinne steht, hier erstmal soweit mein Code:
Code:
.include "m8def.inc"
.def temp = r16
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
ldi temp, 0b00000000
out DDRD, temp ;PortD als Eingang
ldi temp, 0b11111111
out DDRB, temp ;PortB als Ausgang
out PortD, temp ;Pullups von PortD aktivieren
main:
sbis PIND, 2 ;Liegt an D.2 high an? Wenn nicht, dann nächsten Befehl überspringen
rjmp LightON ;Rufe Unterprogramm "LightON" auf
rjmp main ;Endlosschleife
LightON:
ldi r17, 0b00000001
sbi PortB, 2 ;B.2 auf high setzen
ret ;zurück
LightOF:
ldi r17 0b00000000
cbi PortB, 2 ;B.2 auf low setzen
ret ;zurück
Bei den Funktionen "LightON" und "LightOFF" ist ja noch eine Zeile frei (über ldi jeweils), dort wollt ich dann erstmal prüfen, was in r17 drinne steht, aber weiß eben nicht wie.
Wenn ich aufm total falschen Dampfer bin, hilf mir bitte *g* 
Gruß
Thomas
Lesezeichen