- 1. Doska Arduino nebola rozpoznaná
- 2. Doska nie je synchronizovaná
- 3. Kód sa nespustí pri obnovení napájania
- 4. Neplatná chyba podpisu zariadenia
- 5. Chyba Launch4j
- 6. Sériový port sa už používa
- 7: Nahrávanie náčrtu bolo úspešné, ale nič sa nestalo
- 8. Nespokojná chyba odkazu
- 9. Skica je príliš veľká
- 10. java.lang.StackOverflowError
Začínať s Arduinom ako začiatočník môže byť pre ľudí bez elektronického pozadia dosť náročné, narazili by ste na chyby, z ktorých niektoré môžu mať jednoduché riešenia, ale ich vyriešenie vám môže trvať celé dni. Aby som to trochu uľahčil, vytvoril som zoznam 10 najpopulárnejších chýb Arduina spolu s ich možnými riešeniami.
1. Doska Arduino nebola rozpoznaná
Týka sa to situácie, keď doska Arduino pripojená k počítaču počítač nerozpozná. Keď sa to stane, doska zvyčajne nie je uvedená v zozname portov IDE Arduino a niekedy je označená ako USB2.0 v správcovi zariadení.
Riešenie
To sa stane, keď použijete určité lacné klony Arduino, ktoré namiesto čipu FTDI (FT232RL) a iných štandardných dosiek Arduino používajú čip prevodníka USB na sériový port CH340g. Ovládače pre USB na sériové čipy používané štandardnými doskami Arduino sú vždy zabalené spolu so súborom nastavenia Arduino IDE, takže pri inštalácii IDE sa ovládače automaticky nainštalujú do vášho počítača. Aby ste mohli používať tieto dosky Arduino založené na prevodníku USB na sériový port CH340g, budete si musieť stiahnuť a nainštalovať ovládač čipu. Ovládač je možné stiahnuť z tohto odkazu. Inštalácia je taká jednoduchá ako kliknutie na tlačidlo inštalácie v rozhraní nastavenia uvedenom nižšie.
Po vykonaní tohto kroku by ste teraz mali byť schopní vyhľadať port, ku ktorému je doska pripojená, v Arduino IDE.
2. Doska nie je synchronizovaná
Zvyčajne, keď k tomu dôjde, nebudete môcť nahrať kód (Aj keď IDE občas zobrazí „hotové nahrávanie“) na dosku Arduino a IDE zobrazí chybový kód; „ Avrdude: stk500_getsync (): nie je synchronizované: resp = 0x00 “.
Riešenie
Synchronizácia: resp = 0x00 je všeobecný reakcia, ktorá sa premieta do " ATmega čipu nefunguje " na Arduino. Ak sa to stane, môže sa stať veľa vecí, ktoré sa môžu mýliť. Tu je niekoľko krokov, ktoré možno podniknúť na odstránenie tejto chyby.
1. Uistite sa, že na Arduine nie je nič pripojené k digitálnym pinom 0 a 1 (vrátane štítov).
2. Zaistite, aby bol v ponuke nástrojov vybraný správny port a doska.
3. Niekoľkokrát stlačte tlačidlo reset na Arduine a znova nahrajte kód.
4. Odpojte a znova pripojte Arduino k počítaču.
5. Reštartujte IDE Arduino.
Ak niečo z toho nefunguje, môže byť načase vyskúšať s počítačom použiť inú dosku Arduino alebo „chybnú“ dosku Arduino s iným počítačom. To by vám malo pomôcť zistiť, ktoré z nich sú pôvodcom problému. Ak zistíte, že sa jedná o problém s počítačom, znovu nainštalujte Arduino IDE. Ak je však zdrojom problému „chybná“ doska Arduino, konečným riešením bude flash karty s firmvérom Arduino. Ak nič z vyššie uvedeného nefunguje, môže byť čas na zmenu dosky Arduino.
3. Kód sa nespustí pri obnovení napájania
Týka sa to prípadov, keď Arduino nespustí načítaný náčrt, keď je zapnutý, a vo väčšine prípadov sa vráti späť na blikajúci náčrt spojený s bootloaderom.
Riešenie
Rovnako ako ďalšie liečené problémy, aj toto môže spôsobiť veľa vecí.
Ak doska visí a nič nerobí, mali by ste skontrolovať svoj kód, aby ste sa uistili, že neposielate sériové údaje na dosku hneď, ako sa objaví. Keď je Arduino zapnuté, bootloader v prvých sekundách počúva, ako mu počítač pošle nový náčrt na nahranie na dosku. Ak nedostanete nový náčrt, bootloader po chvíli vyprší a spustí posledný náčrt nahraný na nástenku. Ak váš kód odosiela sériové dáta počas prvých pár minút, bootloader nevyprší čas a posledný náčrt nahraný na dosku sa nespustí.
Ak je odosielanie sériových údajov hneď po zapnutí dosky dôležitou súčasťou vášho projektu, možno budete musieť nájsť spôsob, ako oneskorenie zabrániť sériovým dátam v ich príchode okamžite, keď sa Arduino objaví. Ak vykonanie úprav ovplyvní úlohu, ktorú má projekt vykonať, možno budete musieť nahrať svoju skicu na dosku pomocou externého programátora, pretože bootloader je možné ich obísť.
Ak doska nevisí, ale vráti sa k náčrtu blikania Arduina (LED na kolíku 13 každú chvíľu bliká), priamym riešením bude flashovanie dosky s bootloaderom Arduino, pretože tá na tabuli mohla byť poškodená.
4. Neplatná chyba podpisu zariadenia
Táto chyba sa zobrazí, keď dôjde k pokusu o nahranie kódu na dosku, ktorá sa líši od tej, ktorá bola vybraná v zozname nástrojov> doska na IDE Arduino. Táto chyba sa zvyčajne vyskytuje v dôsledku toho, že sa podpis zariadenia na cieľovej doske líši od podpisu zariadenia vybraného v IDE.
Riešenie
Riešenie tejto chyby je také jednoduché, ako je zabezpečenie výberu správnej dosky na IDE Arduino. Ak to nefunguje, bude pravdepodobne potrebné prebliknúť mikrokontrolér najnovšou verziou bootloaderu Arduino.
5. Chyba Launch4j
Arduino IDE pred načítaním niekedy chvíľu trvá a keď sa načíta, ak na čokoľvek kliknete, zobrazí chybu Launch4J, ako je uvedené vyššie. Launch4j je nástroj používaný na zabalenie Java aplikácií (pohárov) do natívneho spustiteľného súboru systému Windows, ktorý umožňuje ich použitie ako bežného programu Windows.
Samotné IDE Arduino je napísané v jazyku JAVA a táto chyba sa vyskytuje z dôvodu nekompatibility knižnice Java Run Time Environment (JRE) dodávanej s Arduino IDE.
Riešenie
Zo skúseností možno túto chybu odstrániť tak jednoduchým spôsobom, ako je vypnutie pripojenia Bluetooth alebo WiFi vášho počítača. Úplnejším a trvalejším riešením je však nahradenie JRE v balíku Arduino nedávnou verziou.
6. Sériový port sa už používa
Toto je pravdepodobne jedna z najjednoduchších chýb na vyriešenie. Spravidla sa to stane, keď sa pokúsite nahrať kód do Arduina, keď je otvorený sériový monitor (to už nie je problém, ak používate posledné verzie IDE), alebo keď sa pokúsite spustiť sériový monitor, keď Arduino hovorí s iným softvérom alebo zariadením cez sériový port. V zásade k nemu dôjde, keď sa pokúsite použiť sériový port Arduino na dve rôzne veci súčasne.
Riešenie
Rovnako ako IDE navrhol, zatvorte každý ďalší softvér / nástroj (vrátane sériového monitora / plotru), ktorý možno používa port com. Ak si nie ste istí konkrétnym softvérom, odpojte Arduino. Kým ho znova zapojíte, malo by byť pripravené na použitie.
7: Nahrávanie náčrtu bolo úspešné, ale nič sa nestalo
Táto chyba je podobná niektorým z ďalších vyššie už spracovaných chýb. Pri tejto chybe navrhne Arduino IDE, že sa kód úspešne načítal, ale doska nič nerobí.
Riešenie
- Uistite sa, že doska vybraná v IDE je rovnaká ako cieľová doska.
- Môže to byť dôsledkom toho, že veľkosť náčrtu je väčšia ako kapacita dosky. Skontrolujte veľkosť náčrtu a na zmenšenie veľkosti použite niektorú z metód uvedených vyššie.
- Nakoniec by táto chyba mohla nastať pri použití hlučného napájacieho zdroja. Zaistite, aby bol napájací zdroj dostatočne stabilný.
8. Nespokojná chyba odkazu
Toto je pravdepodobne jediná zriedkavá chyba, ktorá sa dostala na tento zoznam. K tomu dôjde, ak máte vo svojom počítači starú verziu komunikačnej knižnice, pravdepodobne z predchádzajúcej inštalácie.
Riešenie
Ak chcete vyriešiť túto chybu, hľadať comm.jar alebo jcl.jar v /System/Library/Frameworks/JavaVM.framework/ alebo v adresároch na vašom PC je CLASSPATH alebo PATH prostredia premenných.
9. Skica je príliš veľká
Táto chyba nastane, ak je váš kód väčší ako flash pamäť konkrétnej dosky Arduino. Napríklad veľkosť flash pamäte Arduino Uno je 32 kB, 2 kB už využíva bootloader Arduino. Ak by ste mali nahrať kód s veľkosťou vyššou ako 32 kB, Arduino zobrazí toto varovanie.
Riešenie
Ako už bolo spomenuté vyššie, k tomu dôjde, keď je váš náčrt väčší ako flash pamäť konkrétnej dosky, ktorú používate, aby ste to vyriešili, musíte teda nájsť spôsoby, ako znížiť množstvo miesta, ktoré váš kód zaberá. Niektoré z tipov na dosiahnutie tohto cieľa zahŕňajú;
- Ak je to možné, namiesto float použite celočíselné dátové typy.
- Ak je to možné, pri deklarácii premenných použite kvalifikátor „const“.
- Zahrňte iba potrebné knižnice. Pokiaľ je to možné, použite odľahčené verzie najdôležitejších knižníc.
- Vylepšenie kódu vo všeobecnosti. Vyvíjajte algoritmy, vďaka ktorým bude váš kód kratší a všeobecne ľahký.
Radikálnejším riešením bude presun projektu na inú dosku, napríklad Arduino Mega, ktorá má v porovnaní s Uno väčšiu flash pamäť.
10. java.lang.StackOverflowError
Pri spracovaní náčrtu používa Arduino na spracovanie niekoľko regulárnych výrazov a niekedy je zmätený, keď narazí na určité chyby súvisiace s reťazcami, napríklad na chýbajúce úvodzovky.
Riešenie
Táto chyba je vyriešená tým, že sa druhýkrát pozriete na kód, najmä na časti, kde sa používajú sekvenčné reťazce. Zaistite, aby boli ponuky úplné, správne použité spätné lomky atď.
Počet chýb, ktoré sa dajú zmestiť do jedného tutoriálu, je obmedzený, a preto sa tu zastavíme. Tento zoznam však obsahuje niektoré z najbežnejších chýb, ktorým začiatočníci čelia pri používaní Arduin o. Bojujete s konkrétnou chybou, neváhajte a napíšte komentár, dúfajme, že sa nám to spolu podarí vyriešiť.
Nabudúce.