Jak rozwiązać problem “ avrdude: stk500_recv (): programator nie odpowiada ”?

Za każdym razem, gdy próbuję zaprogramować Arduino UNO Rev.3, widzę następujący błąd

avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x00 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x00 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x00 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x00 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x00 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x00 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x00 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x00 avrdude: stk500_recv(): programmer is not responding avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x00 

Kiedy to podłączam, widzę lampkę zasilania. Nie ma żadnych podłączonych kabli poza USB. Mam inne Arduino UNO, które działa dobrze, gdy przesyłam szkic (używam podstawowego mrugający szkic). Jak mam to rozwiązać? Jaki to może być problem?

Komentarze

  • Upewnij się, że do interfejsu szeregowego nie są podłączone żadne przewody (pin 0 i pin 1)
  • @KiraSan zaktualizował pytanie o więcej informacji (nic nie jest podłączone do 1 lub 0).
  • Myślę, że powinieneś rozważyć użycie Arduino Duo do ponownego wypalenia bootloadera twojego Arduino UNO.
  • Również zanim to zrobisz, upewnij się, że wybrałeś AVR ISP jako programistę i wybrałeś odpowiednią kartę.
  • Ja też utknąłem z tego rodzaju problemem z moją płytą nano ….

Odpowiedź

Po wypróbowaniu wielu sugestii, 2 różne płyty, 3 różne kable na komputerze z WinXP i Win7, W końcu wszystko działa, przechodząc do „Narzędzia -> Procesory -> Stary program ładujący ATmega 328P”

Komentarze

  • Chociaż ta odpowiedź byłaby poprawna dla a Nano, to pytanie dotyczy Uno, więc Twoja odpowiedź jest nie na temat. Mamy już pytanie dotyczące tego problemu Nano: arduino.stackexchange.com/q/51771
  • Dla mnie było odwrotnie: miał aby wybrać nanoatmega328new na PlatformIO. Dzięki stary

Odpowiedź

Miałem ten problem podczas pracy z Arduino IDE i XOD działającym na nim. Co znalazłem; wyglądało na to, że szybkości transmisji były ustawiane inaczej na różnych etapach konfiguracji . Porównałem „ustawienia urządzenia” Windows, ustawienia arduino IDE i ustawienia XOD … i nie są takie same i wydają się zmieniać? … stąd błędy „avrdude: stk500 _ ****!”

Aby zademonstrować

Podłącz płytę Arduino do gniazda USB komputera.

  1. W systemie Windows 7; Panel sterowania \ System i zabezpieczenia \ System \ Menedżer urządzeń … a następnie kliknij dwukrotnie na „Porty (COM & LPT)

    Powinieneś zobaczyć FTDI

    lub

    USB-SERIAL CH340 ( COM7) … dla chińskiego szeregowego chipa com na płycie arduino. Kliknij prawym przyciskiem myszy i zaznacz „Właściwości \ Ustawienia portu” i zanotuj wartość „Bity na sekundę”: np. 57600 … (zapisz to!)

  2. Otwórz arduino IDE i kliknij Plik \ Preferencje i zaznacz opcję; „ Pokaż szczegółowe dane wyjściowe podczas: „upload „. Następnie zamknij ekran „Preferencje”.

  3. Załaduj mały program, który działa. np. Plik \ Przykłady \ 01.Blink

  4. W ustawieniach twojej płyty arduino w Arduino IDE;

    Narzędzia \ Płytka … takie jako Arduino Nano

    Narzędzia \ Procesor … takie jak ATmega328P

    Narzędzia \ Port: na przykład COM7 … upewnij się, że zaznaczono zaznaczenie.

    Narzędzia \ Pobierz informacje o tablicy … pokaże informacje z układu szeregowego arduino ( to dobry znak, że twój kabel USB działa ! )

  5. Na pasku narzędzi IDE wybierz;

    • „Weryfikuj” i wkrótce powinno pokazać się „Gotowe kompilowanie”

    • Kliknij „Prześlij”, a program Blink powinien załadować się do układu arduino.

  6. Teraz jest to interesujące g obserwacja; Komunikat „gadatliwy” na dole ekranu IDE będzie wskazywał, co „ Zastępowanie szybkości transmisji: XXXXX” jest używane! ta liczba obok wartości znalezionej w ustawieniach urządzeń Windows.

  7. Teraz, jeśli jesteś człowiekiem XOD, zostaw arduino IDE działające i uruchom XOD.

  8. Otwórz XOD IDE i otwórz (Wdróż), powiedz program 01-hello i załaduj go na swoją tablicę arduino.

  9. Wybierz „welcome-xod” i wybierz program 01-hello w menu po lewej stronie.

  10. Wybierz „Wdróż \ Prześlij do Arduino …”

  11. wybierz „Model płytki:” i „Port szeregowy:” … np. COM7

  12. Przewiń w górę w sekcji „Wdrożenie” okno i pojawi się kolejna wartość oznaczona „Zastępująca prędkość transmisji: np. 115200”

ZNALAZŁEM, ŻE TE USTAWIENIA SZYBKOŚCI ZMIENIAJĄ SIĘ W NIEWYJAŚNIENIE!

Mam nadzieję, że moje obserwacje rzucą trochę światła na Twój problem o f nieregularne przesyłanie.

Komentarze

  • Dzięki Lionelb! Musiałem przejść do Narzędzia i zmienić Port na COM3 zamiast COM1, który był używany przez port szeregowy w moim systemie. Stało się tak po przeczytaniu rozwiązania i sprawdzeniu Panel sterowania \ System i zabezpieczenia \ System \ Menedżer urządzeń.Nie zdarzyło mi się mieć problemu z liczbą bitów na sekundę, ale to też jest pomocne.
  • Dzięki pomogło. Po File \ Preferences i zaznaczeniu opcji; ' Pokaż szczegółowe dane wyjściowe podczas: ' przesyłania '. Musiałem tylko ustawić liczbę bitów na sekundę w menedżerze urządzeń dla używanego portu com.
  • Aby ponownie załadować program, musiałem zmienić prędkość transmisji na 9600 (po początkowo 57600)

Odpowiedź

Czy już tego próbowałeś? https://stackoverflow.com/a/20735393/5507619

Miałem to problem z Crowduino, uruchomieniem Arduino IDE na OSX. Rozwiązaniem dla mnie było włączenie pełnego wyjścia podczas wysyłania (w panelu preferencji arduino IDE).

Następnie podczas przesyłania możesz zobaczyć, jak avrdude wysyła trzy pakiety avrdude: Send: 0 [30] [20 ] (z odpowiednimi błyskami RX na tablicy) tuż przed avrdude: ser_recv (): programator nie odpowiada błąd.

Sztuczka polega na wciśnięciu przycisku resetowania na płycie bezpośrednio przed wysłaniem tych trzech pakietów . Następnie program zostanie pomyślnie przesłany.

Odpowiedź

Od czasu do czasu napotkałem to również i byłem zaskoczony, gdy wypróbowałem wszystkie zalecane rozwiązania, które mogłem znaleźć. W moim przypadku okazało się, że to kabel, którego używałem.

Odpowiedź

Miałem ten sam problem, jednak Udało mi się rozwiązać w następujący sposób:

  • ponowne uruchomienie komputera
  • lub zmiana kabla, w zasadzie przełączanie między 2 kablami USB (może to być po prostu potrzebne odłącz USB i podłącz go ponownie).

  • lub resetowanie portu COM

    1. zamknięcie Arduino IDE
    2. wyłączenie portu COM
    3. włączenie portu COM
    4. otwarcie Arduino IDE

Odpowiedź

Dla mnie była to kwestia -B 10 zamiast -b xxxx. A więc:

sudo ~/arduino-1.8.12/hardware/tools/avr/bin/avrdude -P /dev/ttyACM0 -B 10 -c arduino -p m328p -C ~/.arduino15/packages/arduino/tools/avrdude/6.3.0-arduino17/etc/avrdude.conf -U eeprom:r:eeprom.hex:r 

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *