Sommario:
- Passaggio 1: poche parole
- Passaggio 2: cos'è il bootloader? (Optiboot)
- Passaggio 3: Master Arduino Sketches
- Passaggio 4: la configurazione dell'hardware
- Passaggio 5: la programmazione
- Passaggio 6: disconnettiti
- Passaggio 7: connettiti
- Passaggio 8: stato di programmazione
- Passaggio 9: inizia il divertimento!:)
- Passaggio 10: un nuovo chip
- Passaggio 11: ESCLUSIONE DI RESPONSABILITÀ
- Passaggio 12: quando accadono cose strane
Video: Guida alla masterizzazione del bootloader Atmega328P-PU (Optiboot): 12 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:00
Ancora un altro bootloader Atmega che brucia giude. Ma questa volta scommetto che al primo tentativo ci riuscirai!!
Questo è il tutorial sulla masterizzazione del bootloader di Nick Gammons per le schede Arduino.
Passaggio 1: poche parole
Il microcontrollore Atmega328P-PU è uno dei chip Arduino più popolari che vengono utilizzati in una vasta gamma in tutto il mondo. Ma soprattutto le ossa nude Atmega fa ancora ciò che può fare lo standard Uno R3. Il motivo principale per cui amo questo microcontrollore è la modalità "Low Power". Ho scritto alcuni nuovi schizzi per alcuni sensori e li sto testando da un po' di tempo.
Qualche anno fa, quando ho iniziato a giocare con Arduino, il mio primo ordine è stato un microcontrollore Atmega328P. Più tardi mi sono reso conto che quelli che ho ordinato da Aliexpress sono chip vuoti. Le fiches sono molto economiche su Ali, le puoi acquistare a partire da 1,40$. Ma non hanno contenuto il Bootloader Uno (Optiboot) e senza di esso non ho potuto caricare nessuno schizzo. Pausa dura ah??!! È stata una doccia davvero fredda per me……. Quindi stavo cercando un modo per masterizzare il bootloader nei chip. Ho provato 5 o 6 metodi, ma senza fortuna. Dopo una settimana ho trovato un argomento su un forum di un sito Web che menzionava il tutorial sulla masterizzazione del bootloader di Nick Gammon. Primo tentativo e SUCCESSO!!:D Ora ti mostrerò come masterizzare facilmente il bootloader su chip Atmega328P-PU vuoti senza fare confusione nell'IDE di Arduino.
Passaggio 2: cos'è il bootloader? (Optiboot)
Il bootloader è un piccolo programma (file HEX, 0.5Kbyte) che permette di caricare gli sketch sulla memoria flash direttamente dall'IDE di Arduino. Il file HEX viene sempre eseguito prima del programma principale ed è per questo che è necessario.
Senza bootloader:
-Il microcontrollore PUO' ESSERE ancora PROGRAMMATO! (sì, è possibile), ma avresti bisogno di un programmatore AVR dedicato per farlo. E non è economico!
- Non può essere programmato tramite l'IDE Arduino.
Bootloader supportati di questo metodo:
Atmega8 (1024 byte)
Atmega168 Optiboot (512 byte)
Atmega328 Optiboot (per Uno ecc. a 16 MHz) (512 byte)
Atmega328 (8 MHz) per Lilypad ecc. (2048 byte)
Atmega32U4 per Leonardo (4096 byte) Atmega1280 Optiboot (1024 byte)
Atmega1284 Optiboot (1024 byte)
Atmega2560 con correzioni per il problema del timer watchdog (8192 byte)
Atmega16U2 - il bootloader sul chip dell'interfaccia USB di Uno
Atmega256RFR2 - il bootloader della tavola Pinoccio Scout
Il codice per i seguenti bootloader è incorporato nello sketch e verrà scaricato a seconda della firma rilevata.
Quindi abbiamo tutto ciò di cui abbiamo bisogno.
Passaggio 3: Master Arduino Sketches
Prima di tutto hai bisogno della libreria arduino.
Scaricalo da qui:
Oppure scaricalo da qui.
Dopo averlo scaricato, estrailo nella cartella delle librerie Arduino e cerca Board Programmer. Aprilo ed esegui Board Programmer.ino.
Passaggio 4: la configurazione dell'hardware
Ci sono 3 modi per effettuare il cablaggio prima della programmazione:
- Usa lo scudo AVR ISP
- Arduino A ad Arduino B
- E il metodo breadboard
Nella foto puoi vedere come effettuare il cablaggio. Sulla breadboard non servono proprio i condensatori ceramici, ma va aggiunto il cristallo da 16Mhz.
Sto usando il mio shield AVR ISP questa volta.
L'obiettivo di questo metodo è che il programma utilizzi il monitor seriale per accedere alla memoria flash per scrivere l'Optiboot (bootloader)
Passaggio 5: la programmazione
Una volta completata la configurazione dell'hardware, esegui Board Programmer.ino!
Compila e carica sul tuo Arduino, ma non chiudere la finestra!! ne avrai bisogno:)
Il caricamento richiederà alcuni secondi.
Passaggio 6: disconnettiti
Dopo aver caricato lo schizzo, scollega l'Arduino dal PC e collega tutto se hai intenzione di farlo sulla breadboard.
Se usi lo scudo AVR, inserisci il chip Atmega nella presa ZIF e "bloccalo".
Molto importante: finché l'hardware non è configurato, il processore non deve ricevere VCC!! In questo modo rischi un danno!!
Passaggio 7: connettiti
Ok! L'hardware è impostato e tutto è a posto colleghiamo l'Arduino al PC.
Quindi apri il monitor seriale e imposta la velocità di trasmissione 115200 e vedrai questo.
Nel monitor seriale puoi vedere che Arduino è entrato in modalità di programmazione. Freddo!!:)
Poiché vogliamo programmare Uno (Atmega328P), digita una "U" nel prompt del messaggio e premi invio.
Passaggio 8: stato di programmazione
Nella finestra successiva vedrai questo.
Non usciremo o verificheremo, digita una G e premi invio!
Passaggio 9: inizia il divertimento!:)
Dopo aver premuto invio vedrai questo:
Cancellazione chip…Scrittura bootloader…
Commettere pagina a partire da 0x7E00 Commettere pagina a partire da 0x7E80
Commettere la pagina a partire da 0x7F00
Commettere la pagina a partire da 0x7F80
Scritto. Verifica in corso…
Nessun errore trovato.
Fusibili di scrittura …LFuse = 0xFF
HFuse = 0xDE
EFuse = 0xFD
Byte di blocco = 0xEF Calibrazione orologio = 0x9E
Fatto.
Modalità di programmazione disattivata. Digita 'C' quando sei pronto per continuare con un altro chip…
E buona giornata!!:D Il tuo chip Atmega328P è ora pronto per caricare gli schizzi!
Questo è stato facile non è vero?:)
Passaggio 10: un nuovo chip
Se vuoi programmare un altro chip disconnetti Arduino dal tuo PC, sostituisci il chip con uno vuoto. Ricollega Arduino e ripeti i passaggi.
Se il monitor seriale non risponde dopo aver ricollegato Arduino, niente panico, chiudilo e aprine uno nuovo.
Passaggio 11: ESCLUSIONE DI RESPONSABILITÀ
NON POSSIEDO NULLA DI TUTTO QUESTO!! Tutto il merito va a Nick Gammon!!
Ho appena mostrato questo metodo in questo Instructable.
Spero che lo troverai utile.
Buona giornata.
Passaggio 12: quando accadono cose strane
Recentemente ho ricevuto questo Arduino Nano con processore Atmega328P-MU.
Quindi ho provato a caricare uno schizzo su di esso, ma non ci sono riuscito. Il processore non ha risposto a nulla con le opzioni Atmega328.
OK! Quindi forse il bootloader è danneggiato e necessita di una riscrittura. L'ho collegato con un altro arduino e ho fatto la masterizzazione del bootloader. Ancora niente……!!!!
Ok allora mi serve un freno (caffè e sigaretta)!! Come ultima possibilità ho selezionato di nuovo Arduino Uno come obiettivo. Caricamento completato:D
In questo momento ho un Nano che si comporta come un Arduino Uno. Non so perché sia successo, ma penso che sia dovuto alla firma del processore. Comunque ha davvero reso la mia giornata ed è un po' divertente:)
Consigliato:
Visualizzazione del testo scorrevole (guida dalla A alla Z): 25 passaggi (con immagini)
Display di testo scorrevole (guida dalla A alla Z): in questo tutorial / video ti guiderò con istruzioni passo passo su come creare un display di testo scorrevole con Arduino. Non ti spiegherò come creare codice per Arduino, ti mostrerò come utilizzare il codice esistente. Cosa e dove devi co
Interessante guida alla programmazione dell'elaborazione per il designer - Controllo del colore: 10 passaggi
Interessante guida alla programmazione per l'elaborazione per il designer - Controllo del colore: nei capitoli precedenti, abbiamo parlato di più su come utilizzare il codice per eseguire la modellatura invece dei punti di conoscenza sul colore. In questo capitolo, esploreremo più a fondo questo aspetto della conoscenza
MPU6050 Guida alla configurazione e alla calibrazione: 3 passaggi
MPU6050 Guida alla configurazione e alla calibrazione: MPU6050 è un IMU 6 DoF (gradi di libertà) che sta per unità di misura inerziale, un sensore davvero eccezionale per conoscere l'accelerazione angolare attraverso il giroscopio a 3 assi e l'accelerazione lineare tramite gli accelerometri lineari. A volte può essere complicato a
Pike - Guida in modo più sicuro, guida in modo più intelligente, guida una picca!: 5 passaggi
Pike - Guida in modo più sicuro, guida in modo più intelligente, guida un luccio!: Benvenuto nel mio progetto chiamato Pike! Questo è un progetto che fa parte della mia formazione. Sono uno studente NMCT a Howest in Belgio. L'obiettivo era creare qualcosa di intelligente utilizzando un Raspberry Pi. Avevamo una completa libertà in cui volevamo rendere intelligenti. Per me è stato
Interessante guida alla programmazione per il progettista - Controllo del processo del programma - Dichiarazione del ciclo: 8 passaggi
Interessante guida alla programmazione per il progettista - Controllo del processo del programma - Dichiarazione del ciclo: Controllo del processo del programma - Dichiarazione del ciclo Da questo capitolo, entrerai in contatto con un importante e potente punto di conoscenza - Dichiarazione del ciclo. Prima di leggere questo capitolo, se vuoi disegnare 10.000 cerchi nel programma, puoi farlo solo con un ter