AVR-Bootloader - und dann?

Gast #5392595
Lesenswert?

Hi,

irgendwie stehe ich gerade mächtig auf dem Schlauch: ich habe einen 
Arduino Nano, der mit dem Optiboot-Bootloader daherkommt. So weit ich 
das verstanden habe, brauche ich mit diesem keinen Programmer mehr 
sondern kann meine Firmware über den USB-Port des Nano an den Bootloader 
schicken, der diese dann in den Flash schreibt und beim nächsten mal 
startet.

Das wirft folgende Fragen auf:

- wie schicke ich diese Daten an die USB/serielle Schnittstelle? AVRDude 
erwartet immer noch die Angabe eines Programmers als Parameter, eine 
Option "Bootloader" gibt es nicht.

- wie mach ich dem Bootloader von außen klar, dass er nicht ein 
eventuell bereits auf dem Flash vorhandenes Programm starten soll, 
sondern eine neue Firmware vom USB-Port empfangen und schreiben soll?

Danke!
Gast #5392734
Lesenswert?

Die Hardware löst beim Start des Programmiervorgangs normalerweise einen 
Reset aus. In der ersten Sekunde nach dem Reset wartet der Bootloader 
auf Befehle vom PC. Wenn keine kommen, startet er das eigentliche 
Anwendungsprogramm.
#5392760
Lesenswert?

Ich habe das mal so ausprobiert bei einem PRO-MINI mit externen USB 
Adapter und mit batch file und es funktionierte einwandfrei::

Command Line BUILD and LOAD:
BOOTLOADER with AVRDUDE:

Assumes C:\AVRDUDE directory with:
----------------------------------
A.BAT
AVRDUDE.CONF
AVRDUDE.EXE
HelloWorld.hex <--- Dein AVR Programm

Inside A.BAT:

c:\AVRDUDE\avrdude -CC:\AVRDUDE\avrdude.conf -v -patmega328p -carduino 
-PCOM4 -b57600 -D -Uflash:w:C:\AVRDUDE\A.hex:i


Note: Verify correct COM port is used and modify -PCOMn entsprechend.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren