Bootloader in eigenem Adressbereich PIC18f67j60

OP #2270010
Lesenswert?
• ▲
▼
Tach zusammen,

ich möchte einen eigenen Bootloader für den oben genannten PIC 
schreiben. Leider gibt es da ein paar Punkte die mir nicht ganz klar 
sind.

Im Linker-File kann ich mit:

CODEPAGE   NAME=vectors    START=0x0            END=0x29 
PROTECTED
CODEPAGE   NAME=page       START=0x2A           END=0x1F000
CODEPAGE   NAME=boot       START=0x1F001        END=0x1FFF7

Speicherbereich festlegen und schützen. Ich würde jetzt gerne den Code 
separat schreiben und mit dem eigentlich Programm mitflashen. Bei einem 
bestimmten tftp-Kommando ("boot") soll das Hauptprogramm die 
Bootfunktion anspringen den PIC neu initialisieren und dann den neuen 
Code über UDP laden und dann einen reset durchführen.

Mein Hauptproblem ist gerade, dass ich nicht weiß wie ich die 
Bootloaderfunktion in den dafür vorgesehenen Adressbereich bekomme. Wie 
muss hierzu denn der Code aussehen?

Gibt es vielleicht schon einen Bootloader? Ich habe bei Brushelectonics 
einen kostenpflichtigen gefunden der allerdings beim Start auf ein 
Bootloaderkommando warten. Ich möchte dies allerdings nicht. Ich will 
die Routine wie oben beschrieben anspringen können!

Vielen Dank für eure Hilfe

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.