Forum: Mikrocontroller und Digitale Elektronik Bootloader Anfängerfrage


von Manuel (Gast)


Lesenswert?

Bin gerade dabei mich ins thema avr einzulesen.
Bin mal beim Thema bootloader angelangt. Hab grundsätzlich begriffen wie 
ein bootloader funktioniert, was sein sinn ist, etc.

doch, wenn der avr "jungfreulich" ist, ist ja noch kein bootloader 
programmiert. Wie kriege ich den da darauf? Respektive ist es über die 
Serielle schnittstelle möglich?

gruss
Manuel

von starwatcher (Gast)


Lesenswert?

Den Bootloader kannst du über die ISP-Schnittstelle mit Hilfe eines 
ISP-Programmer auf den Mikrokontroler bekommen. Außerdem musst du einige 
Fusebits setzen. Guck aber mal hier, da wird das ganz gut erklärt:
http://s-huehn.de/elektronik/bootloader/bootloader.htm

von Manuel (Gast)


Lesenswert?

Sprich ich kommm nicht daraum rum, zuerst via SPI den Bootloader ins 
Flash zu schreiben...

Naja kann mir die antwort zwar denken, aber gibts eine möglichkeit den 
bootloader über die UART ins flash zu schreiben)? (wenn der avr 
"jungfräulich" ist?) Ist bereits ein Bootloader auf dem avr, dürfte das 
updaten des Bootloaders grundsätzlich kein problem darstellen, lieg ich 
da richtig (naja würde meinen, das setzt voraus das der bootloader ins 
ram geladen, und von dortaus ausgeführt wird)?

Ich möchte die SPI zur Porterweiterung benutzen, sprich ein paar 595 
ranhängen. Gibt das in irgend einer weise problem, wenn ich SPI, an 
welcher die 595 angeschlossen sind, zum flashen benutze?

Kann ich die fuse bits jederzeit in meiner Software ändern? (Ist eine 
Grundsätzliche frage, ob dies sinnvoll ist, wäre eine andere)

mfg

von breakpoint (Gast)


Lesenswert?

Naja kann mir die antwort zwar denken, aber gibts eine möglichkeit den
bootloader über die UART ins flash zu schreiben)?

nein.

von AVRFan (Gast)


Lesenswert?

>Sprich ich kommm nicht daraum rum, zuerst via SPI den Bootloader ins
>Flash zu schreiben...

Exakt (aber ist das schlimm?).

>gibts eine möglichkeit den
>bootloader über die UART ins flash zu schreiben)? (wenn der avr
>"jungfräulich" ist?)

Nein.  Der Bootloader muss per ISP oder HV-Programming in den µC.

>Ist bereits ein Bootloader auf dem avr, dürfte das
>updaten des Bootloaders grundsätzlich kein problem darstellen, lieg ich
>da richtig

Nein. (1) Bootloader nur per ISP oder HV-Programming.  (2) Ein 
Bootloader sollte nicht geupdatet werden müssen.  (3) Nach Installation 
eines funktionierenden Bootloaders kann die Applikationssoftware via 
UART beliebig aufgespielt und geupdatet werden.

>(naja würde meinen, das setzt voraus das der bootloader ins
>ram geladen, und von dortaus ausgeführt wird)?

Bei AVR-Controllern wird Code nie ins RAM geladen.  Der Code residiert 
im Flash-ROM und wird auch stets von dort aus ausgeführt.

>Ich möchte die SPI zur Porterweiterung benutzen, sprich ein paar 595
>ranhängen. Gibt das in irgend einer weise problem, wenn ich SPI, an
>welcher die 595 angeschlossen sind, zum flashen benutze?

Nein.  Es könnte höchstens sein, dass während des 
ISP-Programmiervorgangs ein paar LEDs flackern.  (OK, theoretisch könnte 
bei entsprechender Beschaltung auch ein Motor anlaufen, aber so etwas 
kann man bei der Planung berücksichtigen und zu vermeiden suchen).

>Kann ich die fuse bits jederzeit in meiner Software ändern? (Ist eine
>Grundsätzliche frage, ob dies sinnvoll ist, wäre eine andere)

Ich verstehe die Frage nicht ganz.  Zur Programmlaufzeit sind die 
Fusebits  aus dem Programm heraus nicht änderbar, sonst wären es 
I/O-Register.

von Manuel (Gast)


Lesenswert?

vielen dank für die schnellen, klaren antworten

mfg
Manuel

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.