AT91SAM7X64 SERIAL BOOTLOADER

Gast #303173
Hallo zusammen!

Da SAMBA nicht die optimale Lösung ist, um beim Basteln mit dem Olimex
AT91SAM7S64 Developmentboard ist, habe ich einen seriellen Bootloader
geschrieben.

Das Dingen ist zwar recht einfach zusammengeschustert, funktioniert
aber bei mir.

Der Bootloader liegt in den ersten 4K des Flash und kann den Rest
beschrieben. Dazu ist ein Visual C Programm gepackt, mit dem man die
BIN Files dem Bootloader zuführt.

Bitte nicht mecker über Stil den Stil der Programmierung. Ist alles
recht "Dirty" (windows programmierung). Nehmt es als Grundstock. Ich
würde mich freuen, wenn wir das Dingen gemeinsam weiterbringen könnten.
Wer also was verbessert usw. bitte wieder hier posten.

Programme, die mit diesem Bootloader geflasht werden, müssen im Linker
Script (*.ld Files) Die Speicheradresse 0x1000 für den Start des CODE
Segemets haben (siehe Hello Beispiel im zip-File). Ausserdem sollten
die Interrupt Vectoren ins RAM gemappt werden (auch wie im Hello
Beispiel).

So denn...
Angehängte Dateien:
Gast #303176
Kannste natürlich auch für den X nehmen :) muss halt nur die pagesize
angepasst werden.

Hast du schon nen x256? hab bei ineltek ne Bestellung für das
Developmentboard am laufen, die sie aber vom Lieferdatum immer wieder
hinauszögern. Im Moment ist KW19 aktuell. :( Hab mir deswegen das
Olimex Board zugelegt, damit ich schonmal den Core kennenlernen kann.
Gast #303177
Nein, ich wart im Moment bis die X rauskommen. So eilig hab ich es im
Moment aber net, daß ich auf die Schnelle schon nen Board mit nem
"normalen" brauch.
Gast #303185
Atmel bietet ein Paket namens "AT91 In-system Programmer" an. Darin
befindet sich ein OLE COM-Objekt in Form der DLL "AT91Boot_DLL.dll".
Die kann man für eigene Programme benutzen, um den Flash-Speicher via
serielle Schnittstelle, USB oder J-Link zu beschreiben.

http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3883

Lokko: Dein Verzeichnis "at91sam7s64_Atmel_bootloader" sieht so aus
als hättest du eine Vorlage benutzt. Ist das der Fall? Wenn ja, wo hast
du den ursprünglichen Bootloader her? Ich finde den nirgendwo im Netz.

Gruß Björn
Gast #303186
Den "Bootloader" an sich hab ich selbst geschrieben. Als Grundgerüst
habe ein UART Beispiel von Martin Thomas aus WinARM genommen. Die
Flash.c ist aus dem Beispielcode zum Falsh beschreiben von IAR.
Gast #303187
Kannst du ein paar Angaben zur Lizenz deines kleinen Loaders machen? Ich
finde das Programm sehr nützlich und würde es gerne weiterverwenden.
Gast #303188
Die von mir stammenden Teile insbesondere die Windows Software kannste
frei für alles verwenden. Bei den anderen verwendeten Dateien, die
nicht von mir stammen, sollteste du dir den Header anschauen. Ich wäre
sehr froh, wenn du Erweiterungen/Änderungen/Fehlerbeseitigungen/usw...,
die du zum Bootloader machst, wieder hier postest, damit wir alle was
davon haben.
Gast #303189
Da hier gerade über die Lieferung von den SAM7X Typen geredet wurde:

Ich habe bei embedit.de gesehen, dass die den SAM7X256 auf Lager haben.
Hat da schon jemand bestellt?

Gruß

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 20 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.