Hallo liebe Forumgemeinde. Ich habe ein Problem mit folgendem Programmteil. out_ziffer1 movfw mem_ziffer1 ; die Zahl aus dem Register mem_ziffer1 wird geladen call segmente ; der Wert um die entsprechende Ziffer ausgeben zu können wird geholt movwf PORTD ; der aus segmente mitgebrachte Wert, um die in mem_ziffer1 stehende Zahl aus zu geben, wird nach Port D geschoben return ; Rückkehr ins HP Ich springe aus dem Hauptprogramm zu out_ziffer1. Bis einschließlich call segmente klappt auch alles (laut MPLAB SIM). Es steht der aus call segmente mitgebrachte Wert im Arbeitsregister. Nun möchte ich, mit movwf, diesen Wert nach Port D kopieren. Port D bleibt aber unverändert. Kann mir vielleicht jemand sagen, was ich falsch gemacht habe? L.G. Micha
Sorry. Der Dateianhang im ersten Beitrag, enthält noch einen Fehler bei den Zuweisungen. Hier die korrigierte asm.- Datei. L.G. Micha
Hi, Die Zeilen machen auf jeden Fall nicht das, was im Kommentar steht.
1 | movlw b'11111111' ; alle pins von D sollen Ausgänge werden |
2 | movwf TRISD |
Gruß Flo
Hui. X-mal drüber gekuckt, und nicht aufgefallen. Etwas in einen komplett als Eingang konfigurierten Port schreiben, geht freilich schlecht. Danke Flo. L.G. Micha
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.