Czytelnicy tacy jak ty pomagają wspierać MUO. Kiedy dokonujesz zakupu za pomocą linków na naszej stronie, możemy otrzymać prowizję partnerską. Czytaj więcej.

Praca z Arduino może być ekscytującym doświadczeniem. Możliwość przekształcenia kreatywnych pomysłów w działający prototyp to naprawdę satysfakcjonujące uczucie.

Jednak chociaż Arduino IDE jest niezwykle przyjaznym dla użytkownika pakietem oprogramowania do kodowania, często napotyka się błędy i błędy, które mogą być frustrujące. Może twój kod się nie skompiluje, twój szkic nie zostanie przesłany lub twój monitor szeregowy wypluwa bełkot. Niezależnie od tego, jaki jest problem, może być frustrujący i demotywujący, zwłaszcza jeśli dopiero zaczynasz przygodę z platformą Arduino.

Podsumowaliśmy listę pomysłów na rozwiązanie problemów, które mogą pomóc w szybkim uruchomieniu projektu.

Jakie są najczęstsze błędy podczas korzystania z Arduino?

Błędy mogą obejmować zarówno proste błędy składniowe, jak i bardziej złożone problemy ze sprzętem. Błędy sprzętowe nie są zbyt częste podczas korzystania z Arduino. Te błędy mogą być szczególnie frustrujące, ponieważ często wymagają fizycznej kontroli komponentów sprzętowych w celu zdiagnozowania i naprawy. Z drugiej strony problemy z oprogramowaniem są dość powszechne.

Oto kilka typowych błędów, które możesz napotkać podczas korzystania z Arduino IDE.

1. Nie znaleziono portu szeregowego

Ten komunikat o błędzie wskazuje, że komputer nie może wykryć płyty Arduino. Może to być spowodowane różnymi problemami, takimi jak wadliwy kabel USB, nieprawidłowe ustawienie portu COM lub uszkodzona płyta. Aby rozwiązać ten problem, spróbuj ponownie podłączyć płytę lub zmienić ustawienie portu COM w IDE.

Niektóre tańsze klony Arduino wykorzystują układ konwertera CH340 USB na szeregowy zamiast standardowego układu FTDI (FT232RL) używanego przez oficjalne płyty Arduino. Zauważ, że istnieją plusy i minusy używania klonów Arduino w projektach. W przeciwieństwie do standardowych płyt Arduino, sterowniki układu CH340 nie są zawarte w pliku instalacyjnym IDE.

Aby korzystać z płyty Arduino opartej na CH340, należy oddzielnie pobrać i zainstalować sterownik dla układu. Aby uzyskać więcej informacji, zapoznaj się z instrukcją instalacji sterowników CH340 na komputerze SparkFun strona internetowa.

2. Programista nie odpowiada

Podczas próby przesłania szkicu zobaczysz ten komunikat o błędzie na monitorze szeregowym:

avrdude: stk500_recv(): programista Jestnie odpowiadać

Aby naprawić ten błąd, możesz wykonać kilka kroków rozwiązywania problemów:

  • Upewnij się, że wybrano prawidłowe ustawienia karty i portu.
  • Upewnij się, że kabel USB jest prawidłowo podłączony zarówno do płyty Arduino, jak i do komputera.
  • Sprawdź, czy oprogramowanie układowe płyty jest aktualne. Czasami przestarzałe oprogramowanie układowe może powodować problemy z komunikacją z komputerem.
  • Spróbuj zresetować płytkę Arduino lub włączyć ją i wyłączyć, odłączając i ponownie podłączając kabel USB.

Jeśli to nie zadziała, spróbuj przesłać szkic z innego komputera lub użyć innego kabla USB.

3. Odmowa pozwolenia

Jeśli napotkasz ten błąd podczas próby przesłania szkicu do Arduino, oznacza to, że IDE nie ma uprawnień do odczytu/zapisu na porcie szeregowym. Dzieje się tak głównie w przypadku użytkowników Ubuntu.

Zobaczysz ten komunikat o błędzie na monitorze szeregowym:

avrdude: ser_open(): nie można otworzyć urządzenia „/dev/ttyACM0”: Brak takiego pliku lub katalogu

Aby to naprawić, wpisz następujące polecenie w terminalu:

sudo chmod a+rw /dev/ttyACM0

Umożliwi to wszystkim użytkownikom odczytywanie i zapisywanie w pliku /dev/ttyACM0 urządzenie portu szeregowego. Należy pamiętać, że konkretna nazwa urządzenia może się różnić w zależności od konfiguracji systemu. Jeśli korzystasz z systemu Windows, spróbuj uruchomić Arduino IDE w trybie administratora.

4. Przekroczono limit czasu komunikacji z programatorem

Błąd limitu czasu w Arduino IDE może wystąpić, gdy IDE nie może komunikować się z płytą Arduino w określonym limicie czasu.

avrdude: stk500v2_ReceiveMessage(): przekroczenie limitu czasuavrdude: stk500v2_getsync(): przekroczenie limitu czasu komunikacji z programistavrdude: stk500v2_command(): przegrany marnie Dowykonać Komenda 0x11avrdude: stk500v2_disable(): przegranyDo zostaw programowanie tryb

Ten komunikat o błędzie pojawia się, gdy płyta Arduino nie odbiera danych z komputera w określonym przedziale czasowym. Jest to dość powszechne w przypadku chińskich klonów. Może to być spowodowane wolnym lub zawodnym połączeniem, wadliwym kablem USB lub nieprawidłowymi ustawieniami szybkości transmisji.

Możliwe są dwa rozwiązania:

  • Zainstaluj program ładujący Arduino ponownie przed przesłaniem szkicu.
  • Przytrzymaj przycisk resetowania podczas kompilacji kodu i zwolnij go na ułamek sekundy przed rozpoczęciem przesyłania kodu.

Chociaż żadne z nich nie jest idealne, możesz wypróbować poprawkę bardziej sprzętową z powyższego samouczka wideo. Jeśli to nie zadziała, czas kupić nową tablicę.

5. Nieprawidłowy podpis urządzenia

Zobaczysz ten komunikat o błędzie na monitorze szeregowym:

Avrdude: Tak! Nieprawidłowy podpis urządzeniaDouble-sprawdzać znajomości I Spróbuj ponownie, Lubużywać -F Do zastąp tę kontrolę.

Ten błąd występuje podczas przesyłania kodu na inną płytkę niż wybrana w Arduino IDE. Zwykle jest to spowodowane niezgodnością sygnatury urządzenia. Aby rozwiązać ten problem, wybierz odpowiednią kartę w środowisku IDE lub sflashuj najnowszy program ładujący Arduino na płycie.

6. Tablica nie jest zsynchronizowana

Ogólnie rzecz biorąc, gdy wystąpi ten błąd, płyta Arduino nie będzie w stanie odebrać przesłanego kodu (nawet jeśli IDE wskaże „Gotowe przesyłanie”), a IDE wyświetli następujący komunikat o błędzie:

avrdude: stk500_getsync(): brak synchronizacji: odp=0x00

Oto kilka kroków rozwiązywania problemów, które mogą pomóc w usunięciu błędu:

  • Sprawdź, czy do pinów cyfrowych 0 i 1 Arduino nie są podłączone żadne urządzenia, w tym osłony.
  • Sprawdź, czy w programie wybrano właściwy port COM i kartę Narzędzia menu IDE.
  • Naciśnij kilka razy przycisk resetowania na płycie Arduino, a następnie spróbuj ponownie przesłać kod.
  • Odłącz Arduino od komputera i podłącz ponownie.

Komunikat o błędzie synchronizacja: odp. = 0x00 to ogólna odpowiedź, która zwykle wskazuje na problem z układem ATmega na płycie Arduino.

7. Szkic za duży

Ten komunikat o błędzie pojawia się, gdy rozmiar kodu przekracza ilość dostępnej pamięci na płycie. Może to być spowodowane użyciem zbyt wielu bibliotek lub dodaniem niepotrzebnego kodu. Spróbuj zoptymalizować kod, usuwając niepotrzebne funkcje lub biblioteki.

8. Nie znaleziono biblioteki

Ten komunikat o błędzie pojawia się, gdy IDE nie może zlokalizować określonej biblioteki wymaganej dla projektu. Może to być spowodowane nieprawidłowym zainstalowaniem biblioteki lub użyciem przestarzałej wersji. Aby rozwiązać ten problem, spróbuj ponownie zainstalować bibliotekę lub zaktualizować ją do najnowszej wersji.

9. błąd kompilacji

Ten komunikat o błędzie pojawia się, gdy w kodzie występują błędy składniowe. Może to być spowodowane brakującymi nawiasami, średnikami lub nieprawidłowymi nazwami funkcji. Dokładnie sprawdź kod pod kątem błędów składniowych i popraw je.

10. Błąd podczas przesyłania szkicu

Ten komunikat o błędzie pojawia się, gdy IDE nie może przesłać kodu do tablicy. Może to być spowodowane nieprawidłowym typem płyty wybranej w IDE, uszkodzonym bootloaderem lub wadliwym kablem USB. Aby rozwiązać ten problem, upewnij się, że wybrano właściwy typ karty i że kabel USB jest w dobrym stanie. Jeśli ten błąd będzie się powtarzał, możesz spróbować sflashować nowy program ładujący na swojej płycie.

Więcej kodowania, mniej debugowania

Arduino to potężna platforma do tworzenia innowacyjnych projektów elektronicznych. Chociaż jest to stosunkowo łatwe w użyciu narzędzie, po drodze możesz napotkać błędy i problemy. Znając typowe błędy i ich przyczyny, możesz podjąć kroki w celu rozwiązania problemów i ich przezwyciężenia.