ATMEGA8 & PIC18Fxxxx: Speicher-Bereiche

Gast #1126562
Lesenswert?
• ▲
▼
Hallo,

ich habe eine grundlegende Frage zu Angaben aus den Datasheets ATMEGA8 
und PIC18Fxxxx.

Folgendes ist zu lesen:
ATMEGA8
---------
SRAM: 1024 Bytes
EEPROM: 512 Bytes
FLASH PROGRAM MEMORY: 8k Bytes

PIC18Fxxxx
---------
SRAM: 1526 Bytes
EEPROM: 256 Bytes
FLASH PROGRAM MEMORY: 32k Bytes


Mir ist nicht ganz klar, auf welchem Speicher der Controller arbeitet, 
wenn das Programm abgearbeitet wird. Meine Vermutung ist, dass er den 
auszuführenden Code im Zwischengedächtnis, also im SRAM hält. Direkt mit 
Daten aus dem FLashSpeicher wird er wohl kaum arbeiten können, zumal 
Lese-Zugriffe Blockweise geschehen. Es ist aber ja so, dass die 
Applikation zuerst geflasht wird, also im Flashspeicher steht. Das würde 
bedeuten, dass ganz am Anfang, also nach einem Reset zuerst der 
SRAM-Speicher mit Code aus dem Flashspeicher gefüllt wird und dann die 
Ausführung startet. Wenn der ProgramCounter dann hochläüft, etwa 
PC=0x100 müsste der entsprechende Block aus dem FlashSpeicher 
nachgeladen werden. Oder wie funktioniert das?

Auf dem PIC kann ich doch Applikationen, die eine Größe von bis zu 
32kByte haben, laufen lassen oder wird der SW-Umfang vom SRAM Speicher 
begrenzt?

Ihr seht, ich habe an dieser Stelle Nachholbedarf.
Bitte daher um eure Hilfe. Vielen DANK.

PS: Hoffentlich ist überhaupt klar geworden, auf was ich hinaus will... 
:-)

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