Työskentely Arduinon kanssa voi olla innostava kokemus. Kyky muuttaa luovista ideoistasi toimiva prototyyppi on todella tyydyttävä tunne.
Vaikka Arduino IDE on uskomattoman käyttäjäystävällinen ohjelmistopaketti koodaukseen, on kuitenkin tavallista kohdata virheitä ja bugeja, jotka voivat olla turhauttavia. Ehkä koodisi ei käänny, luonnos ei lataudu tai sarjamonitorisi sylkee hölynpölyä. Oli ongelma mikä tahansa, se voi olla turhauttavaa ja demotivoivaa, varsinkin jos olet uusi Arduino-alustalla.
Olemme koonneet luettelon vianetsintäideoista, jotka voivat auttaa sinua saamaan projektisi käyntiin nopeasti.
Mitkä ovat yleisimmät virheet Arduinon käytössä?
Virheet voivat vaihdella yksinkertaisista syntaksivirheistä monimutkaisempiin laitteistoongelmiin. Laitteistovirheet eivät ole kovin yleisiä Arduinoa käytettäessä. Nämä virheet voivat olla erityisen turhauttavia, koska ne vaativat usein laitteistokomponenttien fyysistä tarkastusta diagnosointiin ja korjaamiseen. Toisaalta ohjelmisto-ongelmat ovat melko yleisiä.
Tässä on joitain yleisiä virheitä, joita saatat kohdata käyttäessäsi Arduino IDE: tä.
1. Sarjaporttia ei löydy
Tämä virhesanoma osoittaa, että tietokone ei pysty tunnistamaan Arduino-korttia. Tämä voi johtua useista ongelmista, kuten viallisesta USB-kaapelista, väärästä COM-portin asetuksesta tai vaurioituneesta levystä. Voit ratkaista tämän ongelman yhdistämällä kortin uudelleen tai muuttamalla IDE: n COM-porttiasetusta.
Jotkut halvemmat Arduino-kloonit käyttävät CH340 USB-sarjamuunninsirua virallisten Arduino-levyjen käyttämän tavallisen FTDI (FT232RL) -sirun sijaan. Huomaa, että niitä on Arduino-kloonien käytön edut ja haitat projekteissasi. Toisin kuin tavalliset Arduino-levyt, CH340-sirun ajurit eivät sisälly IDE-asennustiedostoon.
Jos haluat käyttää CH340-pohjaista Arduino-levyä, sinun on ladattava ja asennettava sirun ohjain erikseen. Lisätietoja on oppaassa CH340-ajurien asentamiseen SparkFun verkkosivusto.
2. Ohjelmoija ei vastaa
Näet tämän virheilmoituksen sarjanäytössä, kun yrität ladata luonnoksesi:
avrdude: stk500_recv(): ohjelmoija Onei vastaamalla
Voit korjata tämän virheen seuraamalla useita vianetsintävaiheita:
- Varmista, että oikeat kortti- ja porttiasetukset on valittu.
- Varmista, että USB-kaapeli on kytketty oikein sekä Arduino-levyyn että tietokoneeseen.
- Tarkista, onko levyn laiteohjelmisto ajan tasalla. Joskus vanhentunut laiteohjelmisto voi aiheuttaa viestintäongelmia tietokoneen kanssa.
- Yritä nollata Arduino-kortti tai käynnistää se irrottamalla ja kytkemällä uudelleen USB-kaapeli.
Jos nämä eivät auta, yritä ladata luonnos toisesta tietokoneesta tai käyttää toista USB-kaapelia.
3. Lupa kielletty
Jos kohtaat tämän virheen yrittäessäsi ladata luonnosta Arduinoon, se tarkoittaa, että IDE: llä ei ole oikeutta lukea/kirjoittaa sarjaporttiin. Tämä tapahtuu enimmäkseen Ubuntu-käyttäjille.
Näet tämän virheilmoituksen sarjanäytössä:
avrdude: ser_open(): laitetta ei voi avata "/dev/ttyACM0": Ei tällaista tiedostoa tai hakemistoa
Korjaa tämä kirjoittamalla seuraava komento terminaaliin:
sudo chmod a+rw /dev/ttyACM0
Tämä antaa kaikille käyttäjille mahdollisuuden lukea tiedostosta ja kirjoittaa siihen /dev/ttyACM0 sarjaporttilaite. Muista, että tietyn laitteen nimi voi vaihdella järjestelmäkokoonpanon mukaan. Jos käytät Windowsia, yritä suorittaa Arduino IDE järjestelmänvalvojatilassa.
4. Aikakatkaisu kommunikointi ohjelmoijan kanssa
Arduino IDE: n aikakatkaisuvirhe voi tapahtua, kun IDE ei pysty kommunikoimaan Arduino-levyn kanssa tietyn aikarajan kuluessa.
avrdude: stk500v2_ReceiveMessage(): timeouttavrdude: stk500v2_getsync(): aikakatkaisu kommunikoi kanssa programravrdude: stk500v2_command(): epäonnistunut surkeasti tosuorittaa komento 0x11avrdude: stk500v2_disable(): epäonnistunutto jätä ohjelmointi tila
Tämä virhesanoma ilmenee, kun Arduino-levy ei vastaanota tietoja tietokoneelta tietyn ajan kuluessa. Se on melko yleistä kiinalaisilla klooneilla. Tämä voi johtua hitaasta tai epäluotettavasta yhteydestä, viallisesta USB-kaapelista tai virheellisistä baudinopeusasetuksista.
On kaksi mahdollista ratkaisua:
- Asenna Arduino-käynnistyslatain uudelleen ennen luonnoksen lataamista.
- Pidä nollauspainiketta painettuna koodin kääntämisen aikana ja vapauta se sekunnin murto-osa ennen kuin koodi alkaa ladata.
Vaikka kumpikaan näistä ei ole ihanteellinen, voit kokeilla laitteistopohjaisempaa korjausta yllä olevasta video-opetusohjelmasta. Jos se ei auta, sinun on aika ostaa uusi taulu.
5. Virheellinen laitteen allekirjoitus
Näet tämän virheilmoituksen sarjanäytössä:
Avrdude: Jep! Virheellinen Device SignatureDouble-tarkistaa yhteyksiä ja yritä uudelleen, taikäyttää -F to ohittaa tämä tarkistus.
Tämä virhe ilmenee, kun koodi ladataan eri levylle kuin Arduino IDE: ssä valittu. Se johtuu yleensä laitteen allekirjoituksen epäsuhtaisuudesta. Voit ratkaista tämän valitsemalla oikean levyn IDE: stä tai päivittämällä uusimman Arduino-käynnistyslataimen levylle.
6. Board Not in Sync
Yleensä kun tämä virhe ilmenee, Arduino-levy ei pysty vastaanottamaan ladattua koodia (vaikka IDE ilmoittaisi "Lataus valmis"), ja IDE näyttää tämän virhesanoman:
avrdude: stk500_getsync(): ei synkronoitu: resp=0x00
Tässä on joitain vianetsintävaiheita, jotka voivat auttaa poistamaan virheen:
- Varmista, että Arduinon digitaalisiin nastoihin 0 ja 1 ei ole kytketty laitteita, mukaan lukien suojat.
- Tarkista, että oikea COM-portti ja -kortti on valittu Työkalut IDE: n valikko.
- Paina Arduino-levyn nollauspainiketta useita kertoja ja yritä sitten ladata koodi uudelleen.
- Irrota Arduino tietokoneesta ja liitä se uudelleen.
Virheilmoitus synkronointi: resp = 0x00 on yleinen vastaus, joka tyypillisesti osoittaa ongelman Arduino-levyn ATmega-sirun kanssa.
7. Luonnos liian suuri
Tämä virhesanoma tulee näkyviin, kun koodin koko ylittää kortilla käytettävissä olevan muistin määrän. Tämä voi johtua liian monen kirjaston käytöstä tai tarpeettoman koodin lisäämisestä. Yritä optimoida koodi poistamalla tarpeettomat funktiot tai kirjastot.
8. Kirjastoa ei löydy
Tämä virhesanoma ilmenee, kun IDE ei löydä tiettyä projektiin tarvittavaa kirjastoa. Tämä voi johtua siitä, että kirjastoa ei ole asennettu oikein tai käytät vanhentunutta versiota. Voit ratkaista tämän ongelman asentamalla kirjaston uudelleen tai päivittämällä sen uusimpaan versioon.
9. Kokoonpanovirhe
Tämä virhesanoma tulee näkyviin, kun koodissa on syntaksivirheitä. Tämä voi johtua puuttuvista suluista, puolipisteistä tai virheellisistä funktionimistä. Tarkista huolellisesti koodin syntaksivirheet ja korjaa ne.
10. Virhe luonnosta ladattaessa
Tämä virhesanoma ilmenee, kun IDE ei pysty lataamaan koodia levylle. Tämä voi johtua IDE: ssä valitusta väärästä korttityypistä, rikkinäisestä käynnistyslataimesta tai viallisesta USB-kaapelista. Voit ratkaista tämän ongelman varmistamalla, että oikea korttityyppi on valittuna ja että USB-kaapeli on hyvässä kunnossa. Jos tämä virhe jatkuu, voit yrittää päivittää levyllesi uuden käynnistyslataimen.
Enemmän koodausta, vähemmän virheenkorjausta
Arduino on tehokas alusta innovatiivisten elektroniikkaprojektien rakentamiseen. Vaikka se on suhteellisen helppokäyttöinen työkalu, saatat silti kohdata virheitä ja ongelmia matkan varrella. Ymmärtämällä yleiset virheet ja niiden syyt voit ryhtyä toimiin niiden vianmääritykseen ja niiden ratkaisemiseen.