Hallo, ich habe folgenen Programmauszug getestet in der Schaltung und es funktionierte nicht. Nach der Simulation stellte ich fest, dass nach einem rcall-Befehl es nicht zum Ausgangspunkt zurueckspringt, sondern in einer Endloasschleife wieder an die erste .db-Anweisung zurueck. .include "4433def.inc" .def lcd0 = r18 .def men0 = r19 .def cou0 = r20 .def all0 = r21 .def all1 = r17 .equ LCD_PORT = PORTD .equ LCD_DD = DDRD ...etc... MEN1: .db "etc" MEN2: .db "hgjewg" MEN3: .db "sdfs" ... etc ... ldi all0, 0b01111111 out LCD_DD, all0 rcall lcd_init ... etc ... lcd_init: clt ldi cou0, -0xC3 rcall delay ...etc... delay: ; nichts ret <======= von hier aus springt er nicht wieder in lcd_init zurueck, von wo er herkam, sondern auf den ersten .db-Befehl MEN1: .db "..." Woran liegt das? Danke und viele Gruesse, Thomas H.
Hallo, ich gebe mir die Antwort selbst: Beim Kopieren des Gesamtprogrammes in ein kleineres Testprogramm habe ich vergessen den Teil zu verschieben, in welchem ich den STACK initialisiere. Auf die einfachsten Dinge kommt man eben nicht (gleich). Ciao, Thomas H.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.