Hallo,
bin immer noch an der Aufgabe, eine Funktion in den Ram zu schreiben.
Dafür möchte ich jetzt diese Funktion einem Segment zuweisen und dann
das Segment kopieren. Der Vorteil ist, dass ich mir so sicher sein kann,
dass auch wirklich die gesamte Funktion im RAM zur Verfügung steht.
Leider kenne ich die zugehörigen Befehle nicht. Könnt Ihr mir irgendwie
weiterhelfen?
Ich habe folgende Fragen:
1. Deklariere ein Segment, dazu habe ich folgendes gefunden
1 | #pragma segment="MYSEG" [memattr] [align] //allgemein
|
...wobei memattr frei bleibt und align zu __data20 wird. Richig?
Kann ich irgendwo die Größe des Segments festlegen?
2. Benzutze als Speicherort für die Funktion BootLoaderFunction das
Segment: MYSEG. Ich habe die Funktionsdeklaration in einer Datei
BootloaderFunction.h und die Funktion in einer Datei
BootloaderFunction.c
Schreibe ich einfach __MYSEG vor alle Deklarationen?
3. Kopiere das Segment MYSEG in den RAM.
Hört sich so ziemlich einfach an, ich hoffe, jemand hilft mir weiter...
Vielen Dank auf jeden Fall
Sebastian
P.s.: Entwicklungsumgebung ist die IAR Embedded Workbench.