Hi, ich möchte bei einem Projekt einen Bootloader verwenden. Damit ich später nicht immer zuerst den Bootloader per ISP programmieren muss und anschließend das eigentliche Programm über den Bootloader möchte ich beides gleichzeitig programmieren. Wie muss ich da vorgehen? (avr-gcc)
Markus B. schrieb: > Hi, ich möchte bei einem Projekt einen Bootloader verwenden. Damit ich > später nicht immer zuerst den Bootloader per ISP programmieren muss und > anschließend das eigentliche Programm über den Bootloader möchte ich > beides gleichzeitig programmieren. Und wie soll dass funktionieren, wenn der uC noch garnicht weiß wie er ohne Bootloader die Daten in empfang nehmen soll? Wenn es nicht gerade ein AVR32 o.ä. ist wo bereits standardmäßig ein Bootloader drauf ist, dann verstehe ich nicht wie dass gehen soll!? Grüße
Klaus der 3. schrieb: > Und wie soll dass funktionieren, wenn der uC noch garnicht weiß wie er > ohne Bootloader die Daten in empfang nehmen soll? Via ISP? Es geht darum, sowohl Bootloader als auch das eigentliche Programm in eine HEX Datei zu packen und in einem Rutsch zu programmieren. So kann man in der Produktion den kompletten AVR in einem Arbeitsgang programmieren und später via Bootloader neue Firmware aufspielen.
Achso...ich hatte das anderst verstanden, deshalb die Nachfrage. Die Frage gab es hier schon öfter. Hier mal ein Beispiel: Beitrag "AVR-GCC - Bootloader & Nutzprogramm in einem. Wie?" Grüße
Eine pragmatische Lösung wäre, einen fertig per Bootloader programmierten AVR mit ISP auszulesen und das Ergebnis als neue kombinierte HEX-Datei fürs ISP Massenprogrammieren zu benutzen. Softwaremäßig siehe http://www.mikrocontroller.net/articles/AVR_Bootloader_in_C_-_eine_einfache_Anleitung#Wie_kann_man_Bootloader_und_Anwendungsprogramm_gemeinsam_flashen.3F
Markus B. schrieb: > So kann > > man in der Produktion den kompletten AVR in einem Arbeitsgang > > programmieren und später via Bootloader neue Firmware aufspielen. Kann das der AVR nicht sowieso ohne dass man einen Bootloader dazulinken muss?
Klaus der 3. schrieb: > Die Frage gab es hier schon öfter. > Hier mal ein Beispiel: > Beitrag "AVR-GCC - Bootloader & Nutzprogramm in einem. Wie?" Ok, der Suchbegriff "Nutzprogramm" ist mir natürlich als erstes eingefallen ;) Die Idee mit den zwei HEX Files hatte ich auch gerade. Hab mal geschaut. Der Bootloader würde zum Schluss den Reset Vektor überschreiben. Ansonsten müsste es gehen. Auf die Idee, einen fertig programmierten AVR auszulesen hätte ich auch selbst kommen können *kopf->tisch*
Hi, wenn Du dich ein wenig mit HEX Files auskennst, kannst Du beide auch in einem Editor zusammenfassen. Beim unteren Part muss man halt die Ende Kennung entfernen. Alternativ geht auch, zuerst den Bootloader (Voraussetzung der funktioniert über den Bootloader Vektor) zu Programmieren und anschliessend die Anwendung im unteren Bereich. Gruß Ingo
Im hier installierten WinAVR gibt es unter den binaries (bin) den srec_cat. Der kann so ziemlich alles in alles umwandeln und auch aneinanderhaengen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.