Xmega Register File

Gast #1403895
Lesenswert?
• ▲
▼
Hallo zusammen,

die internen Register R0 - R31, liegen beim Xmega ja nicht mehr vor den 
I/O Registern. Laut Datenblatt "The Register File is located in a 
separate address space, so the registers are not accessible as
data memory"!
So nun die grosse Frage, wo liegen sie denn und wie lassen sie sich 
adressieren ??? Ich habe nämlich bemerkt, das z.B.
asm(" LD R0,Z ") dazu führt, dass die Adresse des Z-Pointer aus dem I/O 
Adressraum "stammt". Z Pointer = 0x19 (R25), Inhalt der Adresse 0x19 im 
I/O beschrieben, und siehe da in R0 steht der Wert der I/O Adresse 0x19 
und nicht der Inhalt von R25!!!???

Klartext: Ich habe dem Z-Pointer eine Adresse eines anderen Rx Registers 
zugewiesen, R0 hat danach aber den Inhalt der Adresse die im I/O 
liegt!!??

Wie kommt man an die Inhalte von R0-R31 über Adressen ran??

Für sachdienliche Hinweise bin ich wie immer sehr dankbar ;)

MfG Rookie
Gast #1403935
Lesenswert?
• ▲
▼
hab da was gefunden
http://wapedia.mobi/en/Atmel_AVR

"In the XMEGA variant, the working register file is not mapped into the 
data address space; as such, it is not possible to treat any of the 
XMEGA's working registers as though they were SRAM. Instead, the I/O 
registers are mapped into the data address space starting at the very 
beginning of the address space. Additionally, the amount of data address 
space dedicated to I/O registers has grown substantially to 4096 bytes 
(000016-0FFF16). As with previous generations, however, the fast I/O 
manipulation instructions can only reach the first 64 I/O register 
locations (the first 32 locations for bitwise instructions). Following 
the I/O registers, the XMEGA series sets aside a 4096 byte range of the 
data address space which can be used optionally for mapping the internal 
EEPROM to the data address space (100016-1FFF16). The actual SRAM is 
located after these ranges, starting at 200016."

Heisst das soviel wie, KEINE CHANCE mehr die internen Register "von 
Hand" anzupacken!!??

Gruss Rookie

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.