Hallo, Wie sind die Werte in der Origin Spalte zu verstehen. Nach meinem Verständnis sind das Anfangsadressen des jeweiligen Speicherbereichs. Memory Configuration Name Origin Length Attributes text 0x00000000 0x00100000 xr data 0x00802000 0x0000ffa0 rw !x eeprom 0x00810000 0x00010000 rw !x fuse 0x00820000 0x00000400 rw !x lock 0x00830000 0x00000400 rw !x signature 0x00840000 0x00000400 rw !x default 0x00000000 0xffffffff Ich verwende einen AT xmega128 mit "nur" 8K RAM ohne ext RAM. Daher wundere ich mich über die großen Adresswerte. Daher meine Fragen: Ist das ein Einstellungsfehler? Falls nicht: Warum sind die Adressen so groß? Gruß Martin
Martin schrieb: > Ist das ein Einstellungsfehler? Nein. > Falls nicht: Warum sind die Adressen so groß? Weil der AVR mehrere separaten Adressbereichen hat, die der Linker so nicht handhaben kann. Deshalb muß man die alle für den Linker in einenen Adressraum zusammenfassen. Man rechnet also einfach immer Offsets drauf, die auf jeden Fall groß genug sind, damit sich die Adressräume nicht in die Quere kommen.
Martin schrieb: > Daher wundere ich mich über die großen Adresswerte. Die avr-binutils linearisieren den Speicher.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.