Sommario:
- Passaggio 1: il problema
- Passaggio 2: materiali necessari
- Passaggio 3: la soluzione
- Fase 4: Voilà
- Passaggio 5: configurazione di Arduino
- Passaggio 6: far lampeggiare l'ATmega8
- Passaggio 7: assicurarsi che il programmatore funzioni
- Passaggio 8: risoluzione dei problemi
- Passaggio 9: TL;DR
Video: Come aggiornare il firmware su un clone USBasp economico: 9 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:04
Questa è una piccola guida per eseguire il flashing del nuovo firmware su un clone USBasp come il mio. Questa guida è stata scritta specificamente per il clone USBasp visto nelle immagini, tuttavia dovrebbe funzionare anche con altri. Il cablaggio è mostrato al punto 5, c'è un TL;DR al punto 9.
Divertiti!
Passaggio 1: il problema
Avrdude mi dice che il programmatore che sto usando ha un firmware obsoleto. Sulla mia scheda non esiste il normale jumper per l'autoprogrammazione. Ecco come risolverlo. Gli schemi per USBasp sono disponibili su fischl.de.
Passaggio 2: materiali necessari
Avrai bisogno…
- Un saldatore
- Un Arduino (preferibilmente Nano)
- Alcuni ponticelli
- Un PC con Arduino IDE e avrdude installati
Passaggio 3: la soluzione
Per poter eseguire il flashing del nuovo firmware sull'ATmega8, dobbiamo ottenere il controllo del suo pin RESET. Normalmente, un jumper sull'USBasp può essere chiuso per abilitare l'autoprogrammazione, tuttavia il produttore della mia scheda non ne ha incluso uno.
Su ATmega8, il pin RESET è il pin 29, il quarto pin in alto da sinistra. È collegato a una resistenza di pull-up da 10k a 5V. Dobbiamo collegarlo al pin 5 dell'intestazione ICSP.
Potremmo provare a saldare un filo direttamente sul resistore o sul pin stesso, tuttavia è noioso e può danneggiare la scheda. (L'ho provato e ho strappato il resistore di pull-up, non lo consiglio) Inoltre, c'è un modo molto più semplice!
Sebbene il produttore non abbia incluso un vero ponticello per abilitare l'autoprogrammazione, ha inserito un'intestazione sotto il microcontrollore. Possiamo semplicemente saldare un filo e…
Fase 4: Voilà
Abbiamo collegato i due pin di reset! I due fori sul fondo collegano il pin 29 e il pin 14 del microcontrollore.
Passaggio 5: configurazione di Arduino
Per eseguire il flashing del nuovo firmware sul programmatore, abbiamo bisogno di un altro programmatore, in questo caso un Arduino con lo sketch ArduinoISP su di esso. Solo per assicurarti che la tua configurazione sia la stessa, decommenta la riga 81
// #define USE_OLD_STYLE_WIRING
Ora collega Arduino con l'intestazione ICSP sul tuo programmatore.
Arduino USBasp
5V Pin 2 (VCC) GND Pin 4/6/8/10 (GND) Pin 10 Pin 5 (Reset) Pin 11 Pin 9 (MISO) Pin 12 Pin 1 (MOSI) Pin 13 Pin 7 (SCK)
L'USBasp rimane scollegato dal PC.
Apri un terminale e digita
avrdude -cavrisp -pm8 -b19200 -P[Il tuo numero di porta va qui, dovrebbe essere lo stesso dell'IDE di Arduino]
Se tutto va bene, avrdude dovrebbe stampare alcune informazioni sull'ATmega8 (fusibili, firma, ecc.)
Passaggio 6: far lampeggiare l'ATmega8
Per flashare il chip, abbiamo ancora bisogno del firmware. Vai su fisch.de e scarica la versione più recente. Estrai l'archivio e naviga verso di esso usando la shell.
La compilazione del codice non ha funzionato per me, ma fortunatamente l'archivio contiene tutti i programmi compilati sotto
cestino/firmware
Qui dovresti vedere tre file.hex. Scegli quello con lo stesso nome del tuo chip. Il mio programmatore usa un ATmega8, quindi ho scelto
usbasp.atmega8.yyyy-mm-dd.hex
Con una connessione funzionante all'ATmega8, il lampeggio dovrebbe richiedere solo la digitazione
avrdude -cavrisp -pm8 -b19200 -P[PORTA] -U flash:w:[file esadecimale]
Se tutto è stato fatto correttamente, avrdude dovrebbe scrivere e verificare il firmware selezionato.
Passaggio 7: assicurarsi che il programmatore funzioni
Per utilizzare nuovamente l'USBasp come programmatore, dobbiamo rimuovere la connessione tra il pin 29 e il pin 14. Tagliare il ponticello sul fondo dovrebbe essere sufficiente, ma anche rimuoverlo non fa male.
Puoi provarlo ricollegandolo al PC e digitando
avrdude -cusbasp -pm8
Anche se avrdude non riesce a raggiungere l'obiettivo, dovrebbe almeno riconoscere il nuovo firmware del nostro programmatore.
Passaggio 8: risoluzione dei problemi
Se avrdude dovesse mostrare un errore come questo, probabilmente ha qualcosa a che fare con la funzione di ripristino automatico di Arduino. Per aggirare questo problema, aggiungi un condensatore tra RESET e GND dell'Arduino. In genere si consiglia di utilizzare un condensatore da 10 µF, tuttavia nel mio caso un condensatore da 100 µF ha funzionato bene.
Se dovessi ricevere un errore come
avrdude: errore: abilitazione del programma: il target non risponde. 1
o viene restituita una firma non valida, controllare il cablaggio. Ho avuto un problema con i miei cavi di alimentazione che si arrugginivano e non conducevano più elettricità. Consiglio di controllare in anticipo tutti i cavi dei ponticelli.
Assicurati anche di cambiare pin 11 e pin 12 su Arduino, se il problema persiste.
Assicurati anche di impostare la velocità di trasmissione corretta per Arduino come ISP, 19200. Può essere impostato con l'opzione
-b19200
Se avete domande o avete individuato un errore, fatemelo sapere:)
Passaggio 9: TL;DR
- Saldare un filo attraverso i due pin sul fondo della scheda
- Configura un Arduino come ISP, assicurandoti di abilitare il vecchio schema di cablaggio
- Collega Arduino al programmatore tramite l'intestazione ICSP
- Flashare il nuovo firmware sul programmatore
- Rimuovere la connessione sul fondo
- Non strappare alcun resistore SMD
Consigliato:
Come hackerare e aggiornare un oscilloscopio digitale Rigol DS1054Z: 5 passaggi (con immagini)
Come hackerare e aggiornare un oscilloscopio digitale Rigol DS1054Z: Rigol DS1054Z è un oscilloscopio a memoria digitale a 4 canali entry level molto popolare. Presenta una frequenza di campionamento in tempo reale fino a 1 GSa/se una larghezza di banda di 50 MHz. I display a colori TFT particolarmente grandi sono molto facili da leggere. Grazie ad un in
Come aggiornare RAM e SSD sul laptop Acer Aspire E1-571G: 4 passaggi
Come aggiornare RAM e SSD sul laptop Acer Aspire E1-571G: Il mio laptop Acer Aspire E1-571G è dotato di una CPU Intel i3, 4 Gb di RAM DDR3 e un disco rigido da 500 Gb, oltre a una GPU mobile nVidia GeForce GT 620M da 1 Gb . Tuttavia, volevo aggiornare il laptop poiché ha pochi anni e può usarne alcuni velocemente
Come aggiornare una CPU LAPTOP (e altre cose interessanti!) Per trasformare un laptop LENTO/MORTO in un laptop VELOCE!: 4 passaggi
Come aggiornare una CPU LAPTOP (e altre cose interessanti!) Per trasformare un laptop LENTO/MORTO in un laptop VELOCE!: Salve! Ho recentemente acquistato un laptop Packard Bell Easynote TM89, che era con specifiche troppo basse per i miei gusti, in pratica molto obsoleto… Il display LCD è stato rotto e il disco rigido principale si è bloccato, quindi il laptop era praticamente morto….. Vedi la foto è un
Come aggiornare GAINER V1: 7 passaggi
Come aggiornare GAINER V1: questo progetto descrive come aggiornare GAINER v1. Al momento attuale (2006.3.8), viene fornito uno strumento di aggiornamento su Windows
Come aggiornare il firmware su un PCB universale: 4 passaggi
Come aggiornare il firmware su un PCB universale: Il progetto Universal PCB (in breve UPCB) è stato avviato per consentire un singolo controller di gioco, in particolare i bastoncini da combattimento, su quante più console possibili. Le informazioni sul progetto possono essere trovate nel seguente thread in Shoryuken.com