Forum: Mikrocontroller und Digitale Elektronik was für nachteile ohne stack


von fksystems (Gast)


Lesenswert?

ich habe hier einen AT90S1200 microcontroller. (benutze assembler, nicht
C)

ich will in diesem den timer overflow interrupt benutzen. bei aufrufen
des interrupts soll eine bestimmte prozedur durchgeführt werden.

jetzt ist mir im tutorial in dem interrupt-beispiel aufgefallen, daß da
irgendwie was mit stack gemacht wird.

jetzt die frage:
ich habe gehört, daß der AT90S1200 kein sram und somit auch keinen
stack haben sollte.

ist das schlimm? wird jetzt meine sache mit dem timer overflow
interrupt dadurch irgendwie verhindert oder blockiert?

muß ich dann da was zusätzliches berücksichtigen? und wenn ich nix
extra bei ohne stack berücksichtigen muß, ab wann hätte das mit dem
nicht vorhandenen stack denn nachteile für mich bzw. würde dinge
unmöglich machen?

von HanneS (Gast)


Lesenswert?

Hallo...

1200 hat kein RAM, daher auch kein PUSH/PULL, also keinen Datenstack.
Er hat nur einen 3-Level-Programmstack für Rücksprungadressen bei ISR
und UP.

In der ISR (Interrupt-Service-Routine) muss das Statusregister
gesichert werden, damit dem Hauptprogramm nicht die Flags unterm Ar...
geändert werden. Dies machen viele Programmierer, indem sie es während
der ISR auf Stack legen.

Da das beim 1200er mangels RAM nicht geht, kann man das SREG in einem
Register zwischenspeichern, das man zweckmäßigerweise exklusiv nur für
diesen Zweck benutzt...

Bit- & Bytebruch...
...HanneS...

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
Noch kein Account? Hier anmelden.