bombatz
04.10.2006, 20:12
hallo,
ich möchte eine 7-Segment-Anzeige ansteuern. Dazu habe ich am Ende des Programmes mit Hilfe von ".db" die Daten geschrieben, welches Segment bei welcher Zahl aufleuten soll. Diese lade ich dann mit dem lpm-Befehl und dem Z-Pointer, in dem die Adresse der Daten steht.
Das Programm arbeitet auch wunderbar.
Nun zu meinem Problem:
Wenn ich das Programm mit dem ISP-Kabel rein gespielt habe, funktioniert es, ich kann auch einen Reset ausführen oder die Spannung unterbrechen, ohne das Fehler auftreten.
Aber nur solange bis ich das ISP-Kabel getrennt habe. Und sobald ich dann die Spannung kurz unterbreche funktioniert es nicht mehr.
Es wird dann nur noch "8" angezeigt, was bedeutet, dass mit lpm eine "FF" geladen wird, also der Z-Pointer nicht auf die Daten zeigt, sondern irgendwo ins nirvana.
Wie kann das sein?
Solange das ISP-Kabel noch dran ist, geht das Programm ja, auch nach Spannungsunterbrechungen.
Und wenn das Kabel ab ist (bzw. der Rechner ausgeschaltet), funktioniert es nicht mehr.
Das Programm arbeitet aber weiter, nur das Laden der Daten fuktioniert nicht mehr.
Nach dem Einschalten führe ich ja auch im Programm eine Reset-Routine aus, in der auch der Z-Pointer wieder mit der richtigen Adresse geladen wird.
Das klingt zwar vlt jetzt alles etwas durcheinander, aber ich hoffe es ist halbwegs verständlich.
ich möchte eine 7-Segment-Anzeige ansteuern. Dazu habe ich am Ende des Programmes mit Hilfe von ".db" die Daten geschrieben, welches Segment bei welcher Zahl aufleuten soll. Diese lade ich dann mit dem lpm-Befehl und dem Z-Pointer, in dem die Adresse der Daten steht.
Das Programm arbeitet auch wunderbar.
Nun zu meinem Problem:
Wenn ich das Programm mit dem ISP-Kabel rein gespielt habe, funktioniert es, ich kann auch einen Reset ausführen oder die Spannung unterbrechen, ohne das Fehler auftreten.
Aber nur solange bis ich das ISP-Kabel getrennt habe. Und sobald ich dann die Spannung kurz unterbreche funktioniert es nicht mehr.
Es wird dann nur noch "8" angezeigt, was bedeutet, dass mit lpm eine "FF" geladen wird, also der Z-Pointer nicht auf die Daten zeigt, sondern irgendwo ins nirvana.
Wie kann das sein?
Solange das ISP-Kabel noch dran ist, geht das Programm ja, auch nach Spannungsunterbrechungen.
Und wenn das Kabel ab ist (bzw. der Rechner ausgeschaltet), funktioniert es nicht mehr.
Das Programm arbeitet aber weiter, nur das Laden der Daten fuktioniert nicht mehr.
Nach dem Einschalten führe ich ja auch im Programm eine Reset-Routine aus, in der auch der Z-Pointer wieder mit der richtigen Adresse geladen wird.
Das klingt zwar vlt jetzt alles etwas durcheinander, aber ich hoffe es ist halbwegs verständlich.