PIC18 Bootloader

OP #5355296
Lesenswert?
• ▲
▼
Hallo,

ich möchte auf einem PIC18F46j50 einen Bootloader umsetzen.

Dabei ist folgende Frage aufgetaucht.

Der PIC verfügt über zwei Interruptvektoren. Den High-Priority bei 0x08 
und den Low Priority bei 0x18. In der Dis-Assembly sieht man, dass der 
Compiler die ISR bei 0x08 beginnt und damit über 0x18 hinaus schreibt.

Würde die CPU also einen Low-Prio Interrupt auslösen, dann würde sie in 
der Mitte der ISR starten. Das ganze ist in meinem Fall kein Problem, da 
ich im 'Mid range compatibility mode' arbeite. Es werden also ohnehin 
alle Interrupts auf 0x08 abgebildet.
Aber die Einstellung des Modus erfolgt zur Laufzeit; wieso macht der 
Kompiler das so?

(Ich würde einfach bei 0x18 anfangen und bei 0x08 einen Sprung zu 0x18 
setzen).
Angehängte Dateien:
#5367460
Lesenswert?
• ▲
▼
Danish B. schrieb:
> Aber die Einstellung des Modus erfolgt zur Laufzeit; wieso macht der
> Kompiler das so?

1. Welcher Kompiler?
2. Was genau haben die IRs mit dem Bootloader zu tun?
3. Wenn keine Routine für Low-Priority IRs da ist, warum sollte der 
Compiler den Vektor berücksichtigen?
4. Hast du schon mal den von Ingo angesprochenen BL AN1310 oder einen 
anderen angeschaut?
<edit>
5. Welche Schnittstelle benutzt der Bootloader? (USART, USB...)

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.