mikrocontroller.net

Forum: Compiler & IDEs Bottloader: Mehrere Programme im AVR?


Autor: Stefan Seegel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tach Leute!

Ich hab nun schon vieles hier im Forum über Bootloader hier im Forum
gelesen, aber irgendwie fehlt bei mir im Hirnkasten noch der gewisse
"Gehirnfurz" zum Verständis:

Ich möchte gerne zwei oder mehr verschiedene Programme in einem AVR
haben, und per DIP Schalter wählen, welches nach dem Einschalten
gestartet wird. Geht das prinzipiell Überhaupt oder hab ich das mit dem
Bootloader völlig falsch verstanden ?
Wie muss ich diese Unterschiedlichen Programme dann anlegen ? Alles in
getrennten Projekten ? Wie krieg ich dann die verschiedenen .hexen in
den AVR ? Oder alles in einem Projekt ? (mehrere main.c Dateien?) Wie
sag ichs dann dem GCC ?
Weiß da jemand ein HowTo/Tutorial ?

So grob von der Funktion stelle ich mir das so vor:

*** BOOTLOADER ***
switch (DIPSCHALTER) {
  case 1:
    Starte Programm 1 (main1)
  case 2:
    Starte Programm 2 (main2)
usw.

Wäre nett wenn mich da jemand auf den "rechten Weg" führen könnte.

MfG
Stefan

Autor: Jörg Wunsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hat so keinen Sinn.

Warum legst Du die entsprechende Entscheidung nicht in das main()
Deiner Applikation?

Autor: Stefan Seegel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jörg!

> "Hat so keinen Sinn."

Alles klar, das ist eigentlich dass was ich wissen wollte, sowas ist
also nicht Sinn eines Bootloaders :-)

Danke und Gruß,

Stefan

Autor: Eugen d (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
gehen würde es aber über eventuell eigene sections die man dem linker
und dem bootloader mitteilt ;-)

Autor: DerMax (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das problem wäre dann aber das die interrupt vektoren immer an der
selben stelle stehen müssen (nämlich ganz am anfang vom Flash)
und wnen man mehrere programm hat die die gleichen Interrupts benutzen
bekommt man zwangsläufig ein problem

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.