8051 MOV iram,iram (Opcode 85) geht nicht

OP #4827897
Lesenswert?

Hallo,

ich versuche gerade einen 80c32x2 zu programmieren.

Es scheint aber dass der Befehl "MOV iramaddr,iramaddr" mit dem Opcode 
85h nicht funktioniert.
In meinem Testprogramm stehen sowohl die Zieladresse (24h) als auch die 
Quelladresse (26h) im Bit-adressierbaren Scratchpad-Bereich.
Der Befehl im Maschienenformat wäre dann "85 24 26".


Kann es sein dass man auf diesen Bereich nicht mit diesem MOV-Befehl 
zugreifen kann ?
OP #4827951
Lesenswert?

Denkt ihr es wird erst die Quelladresse angegeben im Opcode ?
Das könnte einiges erklären, vor allem warum mein 
Interrupt-Tastenabfrageprogramm immer einen Reset verursachte :-)


Es ist übrigens eine Byte-Adresse - die Sache mit den eigenen Adressen 
der Bits ist mir bekannt.
OP #4830090
Lesenswert?

Ja, es scheint dass eine Möglichkeit zum Debuggen sehr wichtig ist.

Es sah sehr gut aus als ich den Code schrieb und in Maschinencode 
umwandelte und dann einswitchte.
Dass es nicht wie gewünscht lief war doch recht enttäuschend.
Bei der Kontrolle fand ich einen Fehler beim Umwandeln in Maschienencode 
und auch einen Fehler beim Einswitchen.
Es lief aber immer noch nicht, daher schrieb ich jetzt ein neues 
Testprogramm welches genau an der Stelle des MOV iram,iram nicht das tat 
was es sollte.

Doch wie es aussieht hat die Eingabeport-Serielleinschiebe-Routine einen 
Fehler - doch ich werde alles einzeln testen bzw. debuggen  :-)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren