Dolfo
01.12.2007, 14:18
Hallo,
eine kleine Routine, macht nichts anderes als über einen Adressbus 8 Pins abfragen ("Eingabeport") und dann an einem Ausgabebus ausgeben. Funktioniert einwandfrei - nur nicht, wenn das Anwählen des Eingabeports als Subroutine programmiert ist.
a) So läufts auf Atiny 2313 und Atmega8:
ldi Adresse, 1
out Adressbus,Adresse
START:
in Temp, Datenbus_in
out Magnetbus,Temp
rjmp START
b) So läufts auf Atiny 2313, aber nicht auf Atmega8:
rcall Tastatur
START:
in Temp, Datenbus_in
out Magnetbus,Temp
rjmp START
Tastatur:
ldi Adresse, 1
out Adressbus,Adresse
ret
Ich habe keine Ahnung, wo ich ansetzen muß. Bitte Hilfe!
eine kleine Routine, macht nichts anderes als über einen Adressbus 8 Pins abfragen ("Eingabeport") und dann an einem Ausgabebus ausgeben. Funktioniert einwandfrei - nur nicht, wenn das Anwählen des Eingabeports als Subroutine programmiert ist.
a) So läufts auf Atiny 2313 und Atmega8:
ldi Adresse, 1
out Adressbus,Adresse
START:
in Temp, Datenbus_in
out Magnetbus,Temp
rjmp START
b) So läufts auf Atiny 2313, aber nicht auf Atmega8:
rcall Tastatur
START:
in Temp, Datenbus_in
out Magnetbus,Temp
rjmp START
Tastatur:
ldi Adresse, 1
out Adressbus,Adresse
ret
Ich habe keine Ahnung, wo ich ansetzen muß. Bitte Hilfe!