Liste der Konstanten/Symbole

In dieser Liste sind globale Konstanten und Symbole aufgeführt, welche in Assembler-Sourcecode in Bibliotheken oder Luna-Inline-Asm verwendet werden können.

NameBeschreibung
AVR_ADDRWRAPUngleich Null wenn Adress-Wrap unterstützt (Relative Sprünge über Flash-Ende auf Anfang und umgedreht).
AVR_COREAVR Core-Typ (Zahl)
AVR_CLOCK, _CLOCKDefinierte Taktrate
AVR_CODE_START_ADDRDefinierte Code-Startadresse im Flash.
AVR_DEVICE, DEVICEControllerbezeichnung (Zeichenkette)
AVR_EEPROM_ACCESSUngleich Null wenn Eepromzugriffe im Luna-Source erfolgen.
AVR_EEPROM_ACCESS_HIGHUngleich Null wenn der Eeprom-Speicher größer 255 Bytes ist.
AVR_HWMULUngleich Null wenn Hardware-Multiplikation unterstützt.
AVR_HWJMPUngleich Null wenn direkte Sprünge/Aufrufe unterstützt (call,jmp,..)
AVR_MEGAUngleich Null wenn Atmega-Controller
AVR_XMEGAUngleich Null wenn Atxmega-Controller
AVR_PC_SIZEAnzahl Bytes die bei einem Unterprogrammaufruf auf dem Stack als Rücksprungadresse abgelegt werden.
AVR_STACK_SIZEDefinierte Stackgröße
AVR_STACK_ENDStack-Endadresse, zeigt auf letztes Stack-Byte (SRAMEND-AVR_STACK_SIZE).

Die folgenden Symbole sind nur dann vorhanden, wenn die entsprechende Eigenschaft zutrifft. Sie sind mittels der Präprozessorfunktion defined() auf Vorhandensein zu prüfen und nicht auf Wert!

NameBeschreibung
AVR_PC33-Byte-Programmcounter (PC). z.B. direkte (Rücksprung-)Adressen (call/ret) haben eine Größe von 3 Byte.