Forum: Mikrocontroller und Digitale Elektronik Xmega Register File


von Xmega Rookie (Gast)


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

von Xmega Rookie (Gast)


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

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.