Logo

Status Register

Das Status Register SREG ist der ALU direkt zugeordnet und wird nach jeder ALU Operation aktualisiert.
Es enthält wichtige Informationen, die von diversen Befehlen ausgewertet werden und ist daher für den Programmablauf essentiell notwendig.

Bei einem Interrupt sollte das SREG am Anfang der ISR gesichert und am Ende der ISR zurückgeschrieben werden. Dies geschieht nicht automatisch!

Status Register: SREG

Bit Nr. 7 6 5 4 3 2 1 0
SREG (0x5F) I T H S V N Z C
Read/Write R/W R/W R/W R/W R/W R/W R/W R/W
Initial Value 0 0 0 0 0 0 0 0

Global Interrupt Enable

Das Global Interrupt Enable Bit I ist für die globale Steuerung von Interrupts zuständig.

Ist I gesetzt, können Interrupts verarbeitet werden.

Ist I gelöscht, wird die Interruptverarbeitung blockiert.

Das I Bit wird hardwareseitig automatisch gelöscht, wenn ein Interrupt ausgelöst wurde. Am Ende der ISR setzt der RETI Befehl das I Bit, so dass Interrupts wieder zugelassen sind.

Außerdem gibt es spezielle Befehle zum Setzen des I Bits (SEI) und zum Löschen des I Bits (CLI).