ARM Cortex M3 - Custom Bootlader / Externer Programmspeicher

Gast #2926875
Lesenswert?
• ▲
▼
Hallo,

ich bin neu auf dem Gebiet der ARM Entwicklung. Ich arbeite mich gerade 
durch den Berg an Informationen die da auf einen Neuankömmling 
einstürzen für die STM32.

Folgende Frage stellt sich mir:
Ich würde gerne mein gesamtes Programm auf einem externen Speicher 
(FRAM) auslagern. Prinzipiell ist das sicherlich kein Problem. Ich würde 
aber ebend gerne -gänzlich- auf den internen Speicher verzichten. Also 
die Interruptvektoren und auch den Bootloader nicht intern laufen 
lassen.

Ich habe den Eindruck das das prinzipiell nicht möglich ist? Ich habe 
auch die verschiedenen Boot Modi des STM32 gefunden - jedoch keine 
Möglichkeit den Bootloader selbst zu programmieren. Ist das möglich?
#2927077
Lesenswert?
• ▲
▼
> gesamtes Programm auf einem externen Speicher

Der externe Speicher ist bei den meisten Cortex M3 zu langsam, so dass 
es zu Wartezyklen kommen kann wenn man von dort Code ausführt.

Ohne besondere Gründe würde ich bei STM32 keinen externen Speicher 
benutzen - das ist kein Atmel, es gibt ausreichend RAM und Flash. 
Übrigens kann man Code beim Cortex M3 auch aus dem internen RAM 
ausführen, wenn man den vorher dort irgendwie rein bekommen hat.

> Interruptvektoren und auch den Bootloader nicht intern

IIRC geht das nicht, weil der mögliche Addressbereich für VTOR 
(=Addresse der Interrupt Vektoren) nur internen RAM und Flash umfasst.

Der Bootloader liegt im nicht beschreibbaren ROM, kann also nicht 
geändert werden - aber man kann sich seinen eingenen Bootloader ins 
Flash schreiben.
Gast #2927123
Lesenswert?
• ▲
▼
Alex schrieb:
> gesamtes Programm auf einem externen Speicher

Selbstverständlich ist das möglich, es muss ein ARM mit External Memory 
Controller (EMC) gewählt werden, z.B. NXP LPC1788:

http://www.nxp.com/products/microcontrollers/cortex_m3/lpc1700/LPC1788FET208.html

> Interruptvektoren und auch den Bootloader nicht intern

Auch das ist mit EMC möglich, sofern wie geplant nichtflüchtiger 
Speicher verwendet wird.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.