verschiedene Adressen im Register Summary des Datenblattes

OP #1326540
Lesenswert?
• ▲
▼
hmm.. schrieb:
> Der Unterschied wird in den 32 ($20) internen Registern liegen.

Eigentlich sind doch alle Register des Mikrocontrollers intern?
(Register befinden sich innerhalb des Míkrocontrollerbausteins)

Es gab ja mal CPU's welche auf einen erweiterten Cache auf den Mainboard 
zurückgreifen konnten. Nur da macht eine Unterscheidung interne/externe 
Register für mich Sinn.

Meinst du mit "interne Register" vielleicht Register welche nur der 
Mikrocontroller selbst verändern kann? (im Gegensatz zu Register welche 
vom Programmierer verändert werden können)

Johann L. schrieb:
> Das eine ist die I/O-Adresse, wie sie zB für IN/CBI/SBIC... anzugeben
> ist. Das andere ist die RAM-Adressem wie sie für STS... und
> Adressarithmetik (in avr-gcc) verwendet wird.
>
> Johann

Was ist dann was?
Ist die erste angegeben Adress die I/O Adresse?
Oder ist die I/O Adresse die zweite Angegebene Adresse? (welche in 
Klammer hinter der ersten Adresse steht)
Gast #1326558
Lesenswert?
• ▲
▼
Hi

>st die erste angegeben Adress die I/O Adresse?
>Oder ist die I/O Adresse die zweite Angegebene Adresse? (welche in
>Klammer hinter der ersten Adresse steht)

Der Wert in der Klammer ist die absolute Adresse. Der Wert davor die 
IO-Adresse.
Bei den AVRs befinden sich r0..r31, IO-Adressen und RAM im gleichen 
Adressraum. Bestimmte Befehle (z.B. in/out...) addieren beim Zugriff $20 
zur angegebenen Adresse. Dadurch lässt sich der Adressbereich $20...$5F 
mit einer 6 Bit-Adresse ansprechen.

MfG Spess
Gast #1326570
Lesenswert?
• ▲
▼
Du solltest mal (anhand des Datenblattes) den Unterschied ergründen 
zwischen:

- unteren Allzweckregistern (r0-r15), darunter die Besonderheit von
  r0 und r1
- oberen Allzweckregistern (r16-r31), darunter die Pointer-Register
- unteren 32 I/O-Registern (und ihren Zugriffsmöglichkeiten)
- oberen 32 I/O-Registern (und ihren Zugriffsmöglichkeiten)
- extended I/O-Bereich (mit seinen arg begrenzten Zugriffsmöglichkeiten)
- SRAM

Und dann solltest Du mal die Unterschiede zwischen IN, OUT und LD, LDD, 
LDS, ST, STD, STS, ergründen, dabei besonders auf die Adressierung 
achten.

Ohne dieses Wissen über die AVR-Architektur wirst Du nicht so recht 
voran kommen.

...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren