Come faccio a caricare un firmware di file esadecimale su una scheda di destinazione senza utilizzare l'IDE arduino?


8

C'è un modo per me di creare un programma di installazione che esegue uno script della shell per caricare un aggiornamento del firmware su un arduino che non comporta l'utilizzo dell'IDE? Ho una cosa che faccio che a volte necessita di un aggiornamento del firmware, e a volte le persone che applicano l'aggiornamento del firmware non sono in grado di applicare l'aggiornamento dall'IDE. Immagino che abbia a che fare con avrdude, ma prova a capire come, semplicemente non ho avuto fortuna da solo.

Sono in grado di gestire la parte "crea un programma di installazione che esegue uno script di shell".


L'interesse per un caricamento USB del disegno / firmware? (invece di usare un ICSP)
boardbite

Risposte:


5

Credo che questo potrebbe essere realizzato dalla riga di comando come di seguito (e quindi potrebbe essere facilmente trasformato in una sceneggiatura). Questa non è una risposta completamente testata e la aggiornerò man mano che avanzi i progressi, sia tramite i miei test che con la verifica di altri.

Prima ottieni avrdude (file minimi: avrdude.conf, avrdude.exe e libusb0.dll).

Quindi dalla riga di comando, esegui qualcosa per l'effetto di:

avrdude -U flash: w: [put-hex-file-path-here]: i -C avrdude.conf -v -p atmega328 -b 115200 -c stk500v2 -P [put-device-path-here]


7

Se si attiva un output dettagliato nelle preferenze dell'IDE, è possibile visualizzare l'intera riga di comando utilizzata dall'IDE per eseguire avrdude.

L'output dettagliato ti permetterà anche di vedere quale directory temporanea viene utilizzata per il file hex, in modo da poterlo prendere.


Questo risponde parzialmente alla domanda. Credo che l'interrogante fosse interessato a come caricare questo file esadecimale sulla scheda (senza Arduino IDE e presumibilmente senza un ICSP).
boardbite

Fornisce il passaggio necessario per ottenere la risposta completa. Quando vedi la riga di comando che utilizza l'IDE e hai il file hex, non hai più bisogno dell'IDE. Non sono sicuro di aver compreso il tuo commento su ICSP poiché avrdude non richiede un programmatore basato su ICSP.
Baldacchino,

1
Ho appena notato che l'output dettagliato IDE fornisce effettivamente tutte le informazioni necessarie; il mio commento ora è annullato! E la mia menzione di ICSP non è correlata a avrdude, ma piuttosto al fatto che è un modo comune di programmare i chip.
boardbite

3

Forse stai cercando l' inesattezza dell'inotool.


Alternative di Windows? Forse basato sulla riga di comando?
boardbite

La pagina non dice nulla sui file esadecimali.
Elmue,

3

È possibile utilizzare AX Loader, un software open source disponibile su Sourceforge .


Qualche versione per Windows a 32 bit della stessa?
Boardbite

Questo link è morto. Posso trovare XLoader solo su xloader.russemotto.com ma non esiste un codice sorgente disponibile.
Elmue,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.