Forum: Mikrocontroller und Digitale Elektronik Bootloader - Anfängerfrage


von Christian O. (easter)


Lesenswert?

Hallo Gemeinde !

Ich habe gerade eine Menge Tutorials gelesen, aber im Moment ist das 
alles ein bisschen viel, weshalb ich hier um Unterstützung bitten 
möchte.

Zunächst einmal ein paar Worte zur Hardware. Es liegen vor :

- ein jungfräulicher ATMega32
- Ein myMultiProg LPT
- Eine selbstgeätzte Platine mit MAX232 und 8Mhz Quarz


Also, ich möchte jetzt mit dem Multiprog einen Bootloader auf den Atmega 
flashen, sodass ich ihn dann, eingebaut in die eigene Platine vom 
COM-Port des PCs aus programmieren kann.

Jetzt gibt es ja viele verschiedene Bootloader für AVR. Ich habe 
folgendes gelesen :

Die RS232-Bootloader warten eine kurze Zeitspanne nach drücken des 
Resets auf eine Signal, wenn nicht, wird zum eigendlichen Programm 
gesprungen.

Ich habe weiterhin gelesen, dass es Bootloader gibt, die sich als 
AVR-Programmierer tarnen, und direkt per AVRDude programmierbar sind.



Also, zuerst muss ich ja jetzt einen Bootloader mit dem Multiprog auf 
den ATMega flashen. Wie sage ich dem Controller, dass ein 8Mhz Quarz auf 
dem Board ist, und er diesen nutzen soll (Fusebits ?).

Kann ich dann überhaupt noch den Bootloader mit dem myMultiprog auf den 
AVR flashen ? auf dem multipog ist nämlich nur ein 3.68Mhz Quarz.



Kann mir jemand mal kurz das Prozedere (Bootloader) beschreiben, bitte ?
Welchen Bootloader kann man empfehlen ?
Kann ich die RS232 Schnittstelle trotzdem noch nutzen um dem PC Daten zu 
schicken (Terminal) ?


Danke schonmal,

Christian

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Christian O. schrieb:

> Also, zuerst muss ich ja jetzt einen Bootloader mit dem Multiprog auf
> den ATMega flashen. Wie sage ich dem Controller, dass ein 8Mhz Quarz auf
> dem Board ist, und er diesen nutzen soll (Fusebits ?).

Ja über die Fusebits.

> Kann ich dann überhaupt noch den Bootloader mit dem myMultiprog auf den
> AVR flashen ? auf dem multipog ist nämlich nur ein 3.68Mhz Quarz.

Gute Frage. Ja es geht, weil die CKSEL3..1 Bits für Quarze 3.0 bis 8.0 
MHz gleich sind. Du musst aber daran denken, im Bootloader die UART 
Parameter und ggf. Warteschleifen passend für 8 MHz einzustellen, d.h. 
F_CPU richtig zu definieren.

> Kann ich die RS232 Schnittstelle trotzdem noch nutzen um dem PC Daten zu
> schicken (Terminal) ?

Sicher doch. Nachdem der Bootloader seine Aufgabe erfüllt hat, ist dein 
Nutzprogramm am Werk und das kann auch die UART benutzen. Der Bootloader 
wird angesprungen nachdem ein RESET aufgetreten ist und er wartet dann 
eine zeitlang darauf ein neues Nutzprogramm in dem µC zu schaffen bzw. 
macht das dann auch oder auch nicht. Danach ist er inaktiv.

Mangels praktischer Erfahrung mit einem Bootloader kann ich nix 
empfehlen, würde aber als erstes hier im AVR Softwarepool bzw. unter 
Bootloader nachsehen, welche Autoren hier im Forum aktiv sind.

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.