Lavorare con Arduino può essere un'esperienza esaltante. La capacità di trasformare le tue idee creative in un prototipo funzionante è una sensazione davvero soddisfacente.
Tuttavia, mentre l'IDE di Arduino è un pacchetto software incredibilmente intuitivo per la codifica, è comune riscontrare errori e bug che possono essere frustranti. Forse il tuo codice non verrà compilato, il tuo schizzo non verrà caricato o il tuo monitor seriale sta sputando parole senza senso. Qualunque sia il problema, può essere frustrante e demotivante, soprattutto se non conosci la piattaforma Arduino.
Abbiamo riassunto un elenco di idee per la risoluzione dei problemi che possono aiutarti a far funzionare rapidamente il tuo progetto.
Quali sono gli errori più comuni durante l'utilizzo di Arduino?
Gli errori possono variare da semplici errori di sintassi a problemi hardware più complessi. Gli errori hardware non sono molto comuni quando si utilizza Arduino. Questi errori possono essere particolarmente frustranti, poiché spesso richiedono l'ispezione fisica dei componenti hardware per la diagnosi e la correzione. D'altra parte, i problemi software sono abbastanza comuni.
Ecco alcuni errori comuni che potresti riscontrare durante l'utilizzo dell'IDE di Arduino.
1. Porta seriale non trovata
Questo messaggio di errore indica che il computer non è in grado di rilevare la scheda Arduino. Ciò può essere causato da una varietà di problemi, come un cavo USB difettoso, un'impostazione errata della porta COM o una scheda danneggiata. Per risolvere questo problema, provare a ricollegare la scheda o modificare l'impostazione della porta COM nell'IDE.
Alcuni cloni Arduino più economici utilizzano il chip convertitore da USB a seriale CH340 invece del chip FTDI (FT232RL) standard utilizzato dalle schede Arduino ufficiali. Nota che ci sono pro e contro dell'utilizzo dei cloni di Arduino nei tuoi progetti. A differenza delle schede Arduino standard, i driver per il chip CH340 non sono inclusi nel file di installazione IDE.
Per utilizzare una scheda Arduino basata su CH340, è necessario scaricare e installare separatamente il driver per il chip. Per maggiori informazioni, fare riferimento alla guida all'installazione dei driver CH340 sul SparkFun sito web.
2. Il programmatore non risponde
Vedrai questo messaggio di errore nel monitor seriale quando provi a caricare il tuo schizzo:
avrdude: stk500_recv(): programmatore Ènon rispondendo
Per correggere questo errore, è possibile seguire diversi passaggi per la risoluzione dei problemi:
- Assicurarsi che siano selezionate le impostazioni della scheda e della porta corrette.
- Assicurati che il cavo USB sia inserito correttamente sia nella scheda Arduino che nel computer.
- Controlla se il firmware della scheda è aggiornato. A volte il firmware obsoleto può causare problemi di comunicazione con il computer.
- Prova a ripristinare la scheda Arduino o a spegnerla e riaccenderla scollegando e ricollegando il cavo USB.
Se questi non funzionano, prova a caricare lo schizzo da un altro computer o utilizzando un altro cavo USB.
3. Permesso negato
Se riscontri questo errore quando provi a caricare uno schizzo sul tuo Arduino, indica che l'IDE non ha il permesso di leggere/scrivere sulla porta seriale. Ciò si verifica principalmente per gli utenti di Ubuntu.
Vedrai questo messaggio di errore nel monitor seriale:
avrdude: ser_open(): impossibile aprire il dispositivo "/dev/ttyACM0": nessun file o directory simile
Per risolvere questo problema, digita il seguente comando nel terminale:
sudo chmod a+rw /dev/ttyACM0
Ciò consentirà a tutti gli utenti di leggere e scrivere sul file /dev/ttyACM0 dispositivo porta seriale. Tieni presente che il nome specifico del dispositivo può variare a seconda della configurazione del tuo sistema. Se sei su Windows, prova a eseguire Arduino IDE in modalità amministratore.
4. Timeout in comunicazione con il programmatore
Un errore di timeout nell'IDE Arduino può verificarsi quando l'IDE non è in grado di comunicare con la scheda Arduino entro un limite di tempo specificato.
avrdude: stk500v2_ReceiveMessage(): timeoutavrdude: stk500v2_getsync(): timeout comunicazione con programmeravrdude: stk500v2_command(): fallito miserabilmente Aeseguire comando 0x11avrdude: stk500v2_disable(): fallitoA abbandonare la programmazione modalità
Questo messaggio di errore si verifica quando la scheda Arduino non riceve dati dal computer entro un periodo di tempo specificato. È abbastanza comune con i cloni cinesi. Ciò può essere causato da una connessione lenta o inaffidabile, un cavo USB difettoso o impostazioni errate della velocità di trasmissione.
Ci sono due possibili soluzioni:
- Installa il bootloader di Arduino di nuovo prima di caricare il tuo schizzo.
- Tieni premuto il pulsante di ripristino mentre il codice è in fase di compilazione e rilascialo una frazione di secondo prima che il codice inizi a caricarsi.
Sebbene nessuno di questi sia l'ideale, puoi provare una correzione più basata sull'hardware dal tutorial video sopra. Se non funziona, è ora che tu compri una nuova scheda.
5. Firma del dispositivo non valida
Vedrai questo messaggio di errore nel monitor seriale:
Avrdude: Accidenti! Firma del dispositivo non validaDouble-controllo connessioni E riprova, Outilizzo -F A ignorare questo controllo.
Questo errore si verifica quando si carica il codice su una scheda diversa da quella selezionata nell'IDE di Arduino. Di solito è causato da una mancata corrispondenza della firma del dispositivo. Per risolvere questo problema, seleziona la scheda corretta nell'IDE o esegui il flashing dell'ultimo bootloader Arduino sulla scheda.
6. Scheda non sincronizzata
Generalmente, quando si verifica questo errore, la scheda Arduino non sarà in grado di ricevere il codice caricato (anche se l'IDE indica "Caricamento terminato") e l'IDE visualizzerà questo messaggio di errore:
avrdude: stk500_getsync(): non sincronizzato: resp=0x00
Di seguito sono riportati alcuni passaggi per la risoluzione dei problemi che possono aiutare a eliminare l'errore:
- Verifica che non ci siano dispositivi, inclusi gli shield, collegati ai pin digitali 0 e 1 su Arduino.
- Verificare che nel file siano state selezionate la porta COM e la scheda corrette Utensili menu dell'IDE.
- Premi più volte il pulsante di ripristino sulla scheda Arduino, quindi prova a caricare nuovamente il codice.
- Scollega Arduino dal PC e ricollegalo.
Il messaggio di errore sincronizzazione: resp = 0x00 è una risposta generale che in genere indica un problema con il chip ATmega sulla scheda Arduino.
7. Schizzo troppo grande
Questo messaggio di errore appare quando la dimensione del codice supera la quantità di memoria disponibile sulla scheda. Ciò può essere causato dall'utilizzo di troppe librerie o dall'inclusione di codice non necessario. Prova a ottimizzare il codice rimuovendo funzioni o librerie non necessarie.
8. Libreria non trovata
Questo messaggio di errore si verifica quando l'IDE non è in grado di individuare una libreria specifica richiesta per il progetto. Ciò può essere causato dall'installazione non corretta della libreria o dall'utilizzo di una versione obsoleta. Per risolvere questo problema, prova a reinstallare la libreria o ad aggiornarla all'ultima versione.
9. errore di compilazione
Questo messaggio di errore viene visualizzato quando sono presenti errori di sintassi nel codice. Ciò può essere causato da parentesi mancanti, punto e virgola o nomi di funzioni errati. Controllare attentamente il codice per errori di sintassi e correggerli.
10. Errore durante il caricamento dello schizzo
Questo messaggio di errore si verifica quando l'IDE non è in grado di caricare il codice sulla scheda. Ciò può essere causato da un tipo di scheda errato selezionato nell'IDE, da un bootloader rotto o da un cavo USB difettoso. Per risolvere questo problema, assicurarsi che sia selezionato il tipo di scheda corretto e che il cavo USB sia in buone condizioni. Se questo errore persiste, puoi provare a eseguire il flashing di un nuovo bootloader sulla tua scheda.
Più codifica, meno debug
Arduino è una potente piattaforma per la realizzazione di progetti elettronici innovativi. Sebbene sia uno strumento relativamente facile da usare, potresti comunque riscontrare errori e problemi lungo il percorso. Comprendendo gli errori comuni e le loro cause, puoi adottare misure per risolverli e risolverli.