Lucrul cu Arduino poate fi o experiență emoționantă. Capacitatea de a vă transforma ideile creative într-un prototip funcțional este un sentiment cu adevărat satisfăcător.
Cu toate acestea, în timp ce Arduino IDE este un pachet software incredibil de ușor de utilizat pentru codare, este obișnuit să întâlniți erori și erori care pot fi frustrante. Poate că codul dvs. nu se va compila, schița dvs. nu se va încărca sau monitorul dvs. serial scuipă farfurie. Oricare ar fi problema, poate fi frustrantă și demotivantă, mai ales dacă sunteți nou pe platforma Arduino.
Am rezumat o listă de idei de depanare care vă pot ajuta să vă puneți în funcțiune proiectul rapid.
Care sunt cele mai frecvente erori în timpul utilizării Arduino?
Erorile pot varia de la simple erori de sintaxă la probleme hardware mai complexe. Erorile de hardware nu sunt foarte frecvente atunci când utilizați Arduino. Aceste erori pot fi deosebit de frustrante, deoarece necesită adesea o inspecție fizică a componentelor hardware pentru a le diagnostica și remedia. Pe de altă parte, problemele software sunt destul de frecvente.
Iată câteva erori comune pe care le puteți întâlni când utilizați IDE-ul Arduino.
1. Port serial nu a fost găsit
Acest mesaj de eroare indică faptul că computerul nu poate detecta placa Arduino. Acest lucru poate fi cauzat de o varietate de probleme, cum ar fi un cablu USB defect, o setare incorectă a portului COM sau o placă deteriorată. Pentru a rezolva această problemă, încercați să reconectați placa sau să schimbați setarea portului COM din IDE.
Unele clone Arduino mai ieftine folosesc cipul de convertor CH340 USB la Serial în loc de cipul standard FTDI (FT232RL) folosit de plăcile oficiale Arduino. Rețineți că există avantajele și dezavantajele utilizării clonelor Arduino în proiectele dvs. Spre deosebire de plăcile standard Arduino, driverele pentru cipul CH340 nu sunt incluse în fișierul de configurare IDE.
Pentru a utiliza o placă Arduino bazată pe CH340, trebuie să descărcați și să instalați driverul pentru cip separat. Pentru mai multe informații, consultați ghidul de instalare a driverelor CH340 pe SparkFun site-ul web.
2. Programatorul nu răspunde
Veți vedea acest mesaj de eroare pe monitorul serial când încercați să încărcați schița:
avrdude: stk500_recv(): programator estenu răspunzând
Pentru a remedia această eroare, există mai mulți pași de depanare pe care îi puteți urma:
- Asigurați-vă că sunt selectate setările corecte ale plăcii și portului.
- Asigurați-vă că cablul USB este introdus corect atât în placa Arduino, cât și în computer.
- Verificați dacă firmware-ul plăcii este actualizat. Uneori, firmware-ul învechit poate cauza probleme de comunicare cu computerul.
- Încercați să resetați placa Arduino sau să o reconectați prin deconectarea și reconectarea cablului USB.
Dacă acestea nu funcționează, încercați să încărcați schița de pe un alt computer sau folosind un alt cablu USB.
3. Acces refuzat
Dacă întâmpinați această eroare când încercați să încărcați o schiță pe Arduino, aceasta indică faptul că IDE-ul nu are permisiunea de a citi/scrie pe portul serial. Acest lucru se întâmplă mai ales pentru utilizatorii Ubuntu.
Veți vedea acest mesaj de eroare pe monitorul serial:
avrdude: ser_open(): nu se poate deschide dispozitivul „/dev/ttyACM0”: nu există un astfel de fișier sau director
Pentru a remedia acest lucru, tastați următoarea comandă în terminal:
sudo chmod a+rw /dev/ttyACM0
Acest lucru va permite tuturor utilizatorilor să citească și să scrie în /dev/ttyACM0 dispozitiv cu port serial. Rețineți că numele dispozitivului specific poate varia în funcție de configurația sistemului dvs. Dacă sunteți pe Windows, încercați să rulați Arduino IDE în modul administrator.
4. Timeout Comunicarea cu programatorul
O eroare de timeout în Arduino IDE poate apărea atunci când IDE-ul nu poate comunica cu placa Arduino într-o limită de timp specificată.
avrdude: stk500v2_ReceiveMessage(): timeoutavrdude: stk500v2_getsync(): timeout comunicare cu programravrdude: stk500v2_command(): a eșuat mizerabil laa executa comanda 0x11avrdude: stk500v2_disable(): a eșuatla părăsiți programarea modul
Acest mesaj de eroare apare atunci când placa Arduino nu primește date de la computer într-un interval de timp specificat. Este destul de comun cu clonele chinezești. Acest lucru poate fi cauzat de o conexiune lentă sau nesigură, un cablu USB defect sau setări incorecte ale vitezei de transmisie.
Există două soluții posibile:
- Instalați bootloader-ul Arduino din nou înainte de a încărca schița.
- Țineți apăsat butonul de resetare în timp ce codul se compila și eliberați-l cu o fracțiune de secundă înainte ca codul să înceapă încărcarea.
Deși niciuna dintre acestea nu este ideală, puteți încerca o remediere mai bazată pe hardware din tutorialul video de mai sus. Dacă asta nu funcționează, este timpul să cumpărați o nouă placă.
5. Semnătură nevalidă a dispozitivului
Veți vedea acest mesaj de eroare pe monitorul serial:
Avrdude: Da! Semnătura dispozitiv nevalidăDouble-Verifica conexiuni și încearcă din nou, sauutilizare -F la treceți peste această verificare.
Această eroare apare la încărcarea codului pe o altă placă decât cea selectată în Arduino IDE. De obicei, este cauzată de o nepotrivire a semnăturii dispozitivului. Pentru a rezolva acest lucru, selectați placa corectă în IDE sau introduceți cel mai recent bootloader Arduino pe placă.
6. Placa nu este sincronizată
În general, atunci când apare această eroare, placa Arduino nu va putea primi codul încărcat (chiar dacă IDE-ul indică „Încărcare terminată”), iar IDE-ul va afișa acest mesaj de eroare:
avrdude: stk500_getsync(): nu este sincronizat: resp=0x00
Iată câțiva pași de depanare care pot ajuta la eliminarea erorii:
- Verificați dacă nu există dispozitive, inclusiv scuturi, conectate la pinii digitali 0 și 1 de pe Arduino.
- Verificați dacă portul COM și placa corecte au fost selectate în Instrumente meniul IDE-ului.
- Apăsați butonul de resetare de pe placa Arduino de mai multe ori, apoi încercați să încărcați din nou codul.
- Deconectați Arduino de la PC și reconectați-l.
Mesajul de eroare sincronizare: resp = 0x00 este un răspuns general care indică de obicei o problemă cu cipul ATmega de pe placa Arduino.
7. Schiță prea mare
Acest mesaj de eroare apare atunci când dimensiunea codului depășește cantitatea de memorie disponibilă pe placă. Acest lucru poate fi cauzat de utilizarea prea multor biblioteci sau de includerea unui cod inutil. Încercați să optimizați codul eliminând funcțiile sau bibliotecile inutile.
8. Biblioteca nu a fost găsită
Acest mesaj de eroare apare atunci când IDE-ul nu poate localiza o anumită bibliotecă necesară pentru proiect. Acest lucru poate fi cauzat de neinstalarea corectă a bibliotecii sau de utilizarea unei versiuni învechite. Pentru a rezolva această problemă, încercați să reinstalați biblioteca sau să o actualizați la cea mai recentă versiune.
9. Eroare de compilare
Acest mesaj de eroare apare atunci când există erori de sintaxă în cod. Acest lucru poate fi cauzat de lipsa parantezelor, punctului și virgulă sau numelor incorecte ale funcțiilor. Verificați cu atenție codul pentru erori de sintaxă și corectați-le.
10. Eroare la încărcarea schiței
Acest mesaj de eroare apare atunci când IDE-ul nu poate încărca codul pe placă. Acest lucru poate fi cauzat de un tip incorect de placă selectat în IDE, un bootloader rupt sau un cablu USB defect. Pentru a rezolva această problemă, asigurați-vă că este selectat tipul corect de placă și că cablul USB este în stare bună. Dacă această eroare persistă, puteți încerca să flashați un nou bootloader pe placa dvs.
Mai multă codare, mai puțină depanare
Arduino este o platformă puternică pentru construirea de proiecte electronice inovatoare. Deși este un instrument relativ ușor de utilizat, este posibil să întâmpinați în continuare erori și probleme pe parcurs. Înțelegând erorile comune și cauzele acestora, puteți lua măsuri pentru a le depana și a le depăși.