Hallo zusammen, ich glaube ich sehe den Wald vor lauter Bäume nicht. Ich habe schon mit verschieden uc gearbeitet (vor allem beruflich). Für ein privates Projekt schau ich mir gerade den atmega32 an. Im Datenblatt kann ich aber nichts genaues zur memory map bzw. Speicheradressierung finden. Sprich Adressbereich vom Flash / Ram etc. Sorry für die Frage, aber ich komm gerade nicht weiter. Danke schonmal. Grüße
Mike schrieb: > Im Datenblatt kann ich aber nichts genaues zur memory map bzw. > Speicheradressierung finden. Ich schon, und zwar auf Seite 16. Ist dein PDF kaputt, oder der PDF Reader?
Störungsvermeider schrieb: > Mike schrieb: >> Im Datenblatt kann ich aber nichts genaues zur memory map bzw. >> Speicheradressierung finden. > > Ich schon, und zwar auf Seite 16. > > Ist dein PDF kaputt, oder der PDF Reader? da steht die Adresse vom flash. 0x0000 bis 0x3fff. Und keine vollständige memory map. Wo finde ich die Info für RAM und EEPROM?
Michael O. schrieb: > da steht die Adresse vom flash. 0x0000 bis 0x3fff. Und keine > vollständige memory map. Mehr Memory gibt's halt nicht. Das ist vollständig. Michael O. schrieb: > Wo finde ich die Info für RAM und EEPROM? Oh mann, kannst du keine Seite weiterblättern?
Störungsvermeider schrieb: > Michael O. schrieb: >> da steht die Adresse vom flash. 0x0000 bis 0x3fff. Und keine >> vollständige memory map. > > Mehr Memory gibt's halt nicht. Das ist vollständig. > > Michael O. schrieb: >> Wo finde ich die Info für RAM und EEPROM? > > Oh mann, kannst du keine Seite weiterblättern? Entweder du willst meine Frage nicht verstehen oder findest es lustig.... Ja ich kann Seiten vor und zurückblättern. Und mein pdf Reader funktioniert. Ich habe nach der memory map vom uc gefragt. Flash 0x0000 bis 0x3fff SRam 0x0000 bis 0x085f (zusammen) dann sind das die Adressen vom jeweiligen memory Block. Ich möchte aber das Mapping wissen!
Michael O. schrieb: > dann sind das die Adressen vom jeweiligen memory Block. Ich möchte aber > das Mapping wissen! Es gibt keine "gemeinsame" Adressen, also einen gemeinsamen Adressraum. Die angegebenen Adressen sind absolut, nicht relativ. Das EEPROM wird nur über Register Read/Write angesprochen.
>dann sind das die Adressen vom jeweiligen memory Block. Ich möchte aber >das Mapping wissen! Flash und RAM haben keinen gemeinsamen Adressraum im AVR. Deshalb findest du auch kein Mapping wie du es erwartest.
ok danke. Diese Information hatte mir gefehlt. Gruß P.s. d.h. heißt aber auch, dass ich meinen PC nicht einfach so ins RAM setzen kann oder?
:
Bearbeitet durch User
Hi
>Ich möchte aber das Mapping wissen!
Flash, EEPROM und Register+RAM sind drei unabhängige Speicherbereiche.
Jeder beginnt bei 0x0000.
MfG spess
Hi >P.s. d.h. heißt aber auch, dass ich meinen PC nicht einfach so ins RAM >setzen kann oder? Was soll der im RAM? Dort kann kein Code stehen. MfG Spess
Michael O. schrieb: > P.s. d.h. heißt aber auch, dass ich meinen PC nicht einfach so ins RAM > setzen kann oder? Im RAM läuft kein Code, das ist nur Datenbereich. Wenn du mit PC den Program Counter meinst ..... der wird nur auf Flash zeigen können, aus oben genannten Gründen der Speichertrennung.
>>P.s. d.h. heißt aber auch, dass ich meinen PC nicht einfach so ins RAM >>setzen kann oder? > >Was soll der im RAM? Dort kann kein Code stehen. Oder deutlicher gesagt: Ein AVR kann keine Funktionen aus dem RAM ausführen.
Michael O. schrieb: > P.s. d.h. heißt aber auch, dass ich meinen PC nicht einfach so ins RAM > setzen kann oder? Vielleicht solltest du dir die Unterschiede der Harvard % von Neumann Architektur mal ansehen.
Vielen Dank. Sorry das mit der Harvard Architektur ist schon zu lange her ;) Aber jetzt kommt langsam wieder "Licht" rein. Wird also Zeit das ich mal was mit dem atmega mache. Zur Frage mit Code im RAM: Hintergrund war ein FBL (flash bootloader). Aber spielt keine Rolle. Schönen Abend noch zusammen. Gruß
holger schrieb: > Oder deutlicher gesagt: Ein AVR kann keine Funktionen aus > dem RAM ausführen. Schwachsinn! Was hindert einen daran einen Interpreter zu schreiben?
russelduff schrieb: > holger schrieb: >> Oder deutlicher gesagt: Ein AVR kann keine Funktionen aus >> dem RAM ausführen. > > Schwachsinn! Was hindert einen daran einen Interpreter zu schreiben? Der Programmcode des Interpreters kommt immer noch aus dem Flash. Ach bitte. Man muss wirklich nicht krampfhaft versuchen in jedem Posting ein Haar in der Suppe zu finden. Dem TO war anscheinend nicht im geringsten klar, dass er es mit einer Harvard Architektur zu tun hat und welche Konsequenzen das hat. Für ihn ist die strenge Trennung zwischen Flash und SRAM erst mal die wichtigste Information.
Michael O. schrieb: > Hintergrund war ein FBL Speziell dafür hat der ATMega einige nette Befehle. Fertigen Code dafür gibt es en masse, auch im Quältext. Such mal auf der Atmel HP nach Appnotes zu dem Thema.
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.