Wie lade ich eine Hex-Datei-Firmware ohne Verwendung der Arduino-IDE auf eine Zielplatine hoch?

8

Gibt es eine Möglichkeit für mich, ein Installationsprogramm zu erstellen, das ein Shell-Skript ausführt, um ein Firmware-Update auf ein Arduino hochzuladen, bei dem die IDE nicht verwendet wird? Ich habe eine Sache, die ich mache und die manchmal ein Firmware-Update benötigt, und manchmal können die Leute, die das Firmware-Update anwenden, das Update von der IDE nicht anwenden. Ich vermute, es hat etwas mit avrdude zu tun, aber ich versuche so gut ich kann zu lernen, wie, ich hatte alleine einfach kein Glück.

Ich kann den Teil "Erstellen eines Installationsprogramms, das ein Shell-Skript ausführt" behandeln.

Steve Cooley
quelle
Ist das Interesse an einem USB-Upload der Skizze / Firmware? (im Gegensatz zur Verwendung eines ICSP)
Boardbite

Antworten:

5

Ich glaube, dass dies über die folgende Befehlszeile erreicht werden kann (und somit leicht in ein Skript umgewandelt werden kann). Dies ist keine vollständig getestete Antwort, und ich werde sie aktualisieren, sobald der Fortschritt eintritt, entweder durch meine Tests oder durch die Überprüfung durch andere.

Holen Sie sich zuerst avrdude (Mindestdateien: avrdude.conf, avrdude.exe und libusb0.dll).

Führen Sie dann über die Befehlszeile Folgendes aus:

avrdude -U flash: w: [hexadezimaler Dateipfad hier einfügen]: i -C avrdude.conf -v -p atmega328 -b 115200 -c stk500v2 -P [Gerätepfad hier setzen]

Brettbiss
quelle
7

Wenn Sie die ausführliche Ausgabe in den Einstellungen der IDE aktivieren, wird die vollständige Befehlszeile angezeigt, die die IDE zum Ausführen von avrdude verwendet.

In der ausführlichen Ausgabe können Sie auch sehen, welches temporäre Verzeichnis für die Hex-Datei verwendet wird, damit Sie es abrufen können.

Baldengineer
quelle
Dies beantwortet die Frage halb. Ich glaube, der Fragesteller war daran interessiert, wie diese Hex-Datei auf das Board hochgeladen werden kann (ohne Arduino IDE und vermutlich ohne ICSP).
Boardbite
Es bietet den notwendigen Schritt, um die vollständige Antwort zu erhalten. Sobald Sie die von der IDE verwendete Befehlszeile sehen und die Hex-Datei haben, benötigen Sie die IDE nicht mehr. Ich bin mir nicht sicher, ob ich Ihren Kommentar zu ICSP verstehe, da avrdude keinen ICSP-basierten Programmierer benötigt.
Baldengineer
1
Ich habe gerade bemerkt, dass die ausführliche IDE-Ausgabe tatsächlich die vollständigen erforderlichen Informationen liefert. Mein Kommentar wurde jetzt aufgehoben! Und meine Erwähnung von ICSP bezieht sich nicht auf avrdude, sondern auf die Tatsache, dass es eine übliche Art ist, Chips zu programmieren.
Boardbite
3

Möglicherweise suchen Sie nach der Inotool- Utitlity.


quelle
Windows-Alternativen? Kommandozeilenbasiert vielleicht?
Boardbite
Die Seite sagt nichts über Hex-Dateien aus.
Elmue
3

Sie können AX Loader verwenden, eine Open Source-Software, die auf Sourceforge verfügbar ist .

user24931
quelle
Gibt es eine 32-Bit-Windows-Version derselben?
Boardbite
Dieser Link ist tot. Ich kann XLoader nur unter xloader.russemotto.com finden, aber es ist kein Quellcode verfügbar.
Elmue