"avrdude : stk500_getsync () : 동기화되지 않음 : resp = 0x00", 일명 Avr이 내 프로그램을 업로드하지 못하게 함


98

요 전날 멋진 프로그램을 만들어서 내 Arduino에 업로드하고 싶었습니다. 업로드 버튼을 클릭 한 후 avr이라는 이름의 친구가 와서 다음과 같이 말했습니다.

avrdude : stk500_getsync () : 동기화되지 않음 : resp = 0x00

모든 내가 원하는 그냥 내 프로그램을 업로드하고 있지만 AVR 나를하지 않습니다. 그는 심지어 이해할 수 없어서 누군가가 그가 말하려는 도대체와 그를 제거하는 방법을 말해 줄 수 있습니까?


즉 :

Arduino에 프로그램을 업로드하려고 할 때마다이 오류 메시지가 나타납니다.

avrdude : stk500_getsync () : 동기화되지 않음 : resp = 0x00

이것은 무엇을 의미하며 어떻게 해결할 수 있습니까?


4
매우 일반적인 오류 메시지, 항상 해결하기
쉬운

12
좋은 제목! 나는 그 오류를 직접 가졌다 ...
TheDoctor

6
제목에 +1 : D ... 당신이 한 것처럼이 친구를 정말 싫어합니다!
David Refoua

arduino 용 드라이버 (cp2102)를 설치하십시오. 그것은 나를 도와주었습니다. 이전 답변에 감사드립니다 ppl :-)

이 2018 년 6 월 게시물이 나를 위해 해결했습니다 (첫 번째 답변) : arduino.stackexchange.com/questions/51729/…
Michael Sims

답변:


62

이것은 컴퓨터와 Arduino 간의 일반적인 연결 오류로 인해 발생하며 여러 가지 다른 특정 문제로 인해 발생할 수 있습니다.

이 오류를 종종 해결할 수있는 쉬운 방법은 다음과 같습니다.

  • USB 케이블을 분리했다가 다시 연결하십시오.
  • 보드의 리셋 버튼을 누릅니다.
  • Arduino IDE를 다시 시작하십시오.
  • 당신이 올바른 보드를 선택해야합니다 Tools ► Board ►당신이 Duemilanove (328)를 사용하는 경우 예를 들어, 이사회는이 마이크로 칩에 어떤 버전이라고해야 대신 Duemilanove 128의를 선택합니다.
  • 에서 올바른 포트를 선택했는지 확인하십시오 Tools ► Serial Port ►. 어느 포트에 있는지 확인하는 한 가지 방법은 다음 단계를 수행하는 것입니다.
    1. USB 케이블을 분리하십시오.
    2. Tools ► Serial Port ►목록에있는 포트로 이동하여 확인하십시오 (예 : COM4 COM5 COM14).
    3. USB 케이블을 다시 연결하십시오.
    4. 로 돌아가서 Tools ► Serial Port ►이전에 없었던 포트가 무엇인지 확인하십시오.
  • 디지털 핀 0과 1에 쉴드를 포함하여 연결된 부품이 없는지 확인하십시오.

그 중 어느 것도 작동하지 않으면 문제를 교체하여 문제를 격리하려고합니다. 같은 arduino에서 다른 컴퓨터를 시도하고 같은 컴퓨터에서 다른 arduino를 시도하고 다른 USB 케이블을 사용해보십시오.

컴퓨터에 문제가있는 경우 :

  • 위의 "쉬운 수정"목록에서 모든 컴퓨터 관련 문제를 다시 확인하십시오.
  • IDE를 다시 설치하십시오.
  • 드라이버를 다시 설치하십시오.

Arduino에 문제가있는 경우 :

  • 위의 "쉬운 수정"목록에서 모든 보드 관련 문제를 다시 확인하십시오.
  • 마이크로 컨트롤러가 올바르게 장착되었는지 확인하십시오.
  • 부트 로더레코딩 해야 할 수도 있습니다 .
  • 근처에 다른 컨트롤러가 있으면 마이크로 컨트롤러를 교체하십시오.
  • 당신은 당신의 Arduino를 벽돌로 만들었을 수 있습니다. 죄송합니다 :(

3
다른 가능한 원인이 있습니다. ATmega가 손상되었거나 ATmega의 부트 로더가 손상되었거나 전원 문제 또는 기타 여러 가지 가능성이있을 수 있습니다. 은 not in sync: resp=0x00정말 메시지를 일반적인 "응답하지 ATMEGA"입니다. ATmega가 응답하지 않는 원인이있을 수 있습니다.
코너 울프

0이나 1로 아무것도 가질 수 없습니까?
Tim

2
@Tim 핀에 물건을 연결할 수 있지만 USB 케이블을 통해 Arduino와 통신하려면 연결을 끊어야합니다.
모자와 사람

몇 년 전에 첫 Duemillanove 에서이 오류가 발생했습니다. 죽은 UART 칩 (또는 USB에서 UART 칩으로의 연결)이었습니다. 매우 실망 스럽습니다. 나는 AVR 프로그래머를 사서 부트 로더를 태웠다. 부트 로더가 사전로드 된 다른 CPU를 구입했습니다. 벤더가 Arduino 애호가들의 세계에 합류 할 수있는 교체품을 보낼 때까지는 아니 었습니다 (이제 2 개의 예비 CPU가 있습니다).
linhartr22

"USB 케이블을 분리했다가 다시 연결하십시오"
Grace Shao

20

또 다른 수정 :

변경 Tools->Processor->Atmega 328PAtmega 328P (Old Bootloader). 이 Processor옵션은에서 특정 보드를 선택할 때만 사용할 수 있습니다 Tools>Board.

이것은 Linux Ubuntu 17.10에서 Arduino IDE 1.8.5를 사용하여 CH340을 사용하는 Arduino Nano에서 작동했습니다. 또한 IDE 1.8.9 이상을 사용하고 오래되거나 복제 된 Nano를 얻는 경우에 발생할 수 있습니다.


3
그게 해결책이었습니다! 새로운 부트 로더는 2 배의 전송 속도 (57600 대신 115200)를 사용합니다.
Suuuehgi

1
당신의 대답은 내 문제를 해결합니다. 감사합니다!
Vladyslav Savchenko

12

불행히도, 그것은 당신이 마이크로 컨트롤러를 태운 것을 의미 할 수도 있습니다. 새 스케치를 업로드하기 직전에 위험한 일이 있었습니까? 이전에로드 된 스케치로 마이크로 컨트롤러가 계속 작동합니까?


10

위 단계가 모두 작동하지 않으면 Avrdude 및 avr-gcc 컴파일러를 다시 설치하십시오. 나는 나의 메가가 이것으로 고통을 시작한 후에 이것을해야했다.

Avrdude와 avr-gcc를 별도로 설치 한 경우 간단히 제거하십시오. 그렇지 않으면 Arduino IDE를 다시 설치해야 할 수도 있습니다. 이 단계는 운영 체제에 따라 다릅니다.


툴체인 사용으로 인해 문제가 발생할 가능성은 거의 없습니다. 이것은 너무 극단적입니다. IMO.
asheeshr

3
이것이 내 문제를 해결할 수있는 유일한 방법입니다
TheDoctor

이 설치 과정은 무엇입니까? arduino 편집기 도구는 압축이 풀 렸습니다. 설치 과정이 없습니다.
코너 울프

9

나는 같은 메시지를 받았다. 문제가 해결 될 때마다 Tools (도구), Ports (포트) 메뉴에서 올바른 포트 (예 : USB)를 선택하여 해결하십시오. 간단한 단계이지만 항상 잊어 버립니다. Arduino를 분리하여 현재 프로그램을 중지하고 컴퓨터에 다시 연결하여 새 프로그램을 업로드하고 오류, 패닉, 저주를 얻은 다음 기억하십시오.


1
이것이 가장 일반적인 해결책이라고 생각합니다.
병아리

9

필자의 경우에는 FTDI 칩의 RTS 핀을 Arduino Pro Mini의 RST 핀으로 이동하는 커패시터에 연결하지 않았습니다. 이 연결을 설치하면 더 이상 오류가 발생하지 않아 코드를 업로드 할 수있었습니다.

Nick Gammon은 이것을 그의 포럼에서 설명합니다 . 커패시터를 어디에 / 어떻게 배치해야하는지에 대한 그림을 추가했습니다. 여기에 이미지 설명을 입력하십시오


att 칩에 직접 USB 프로그래머 연결의 멋진 그림 +1.
raddevus 2016 년

나는 또한 보드에 나쁜 연결이 있었고 모든 것을 뽑고 기본 스케치를 업로드했는데 효과가있었습니다. 이제 올바른 케이블이 아닌 케이블을
찾으십시오

5

나는 똑같은 문제가 있었다. 다른 랩톱에 IDE를 설치하고 해당 랩톱에서 프로그램을 업로드했습니다. 문제 해결됨. 그런 다음 랩톱으로 돌아와 IDE를 제거한 다음 다시 설치합니다. 작동하기 시작했습니다.

그러나 문제의 원인을 찾을 수 없어서 만족하지 못했습니다 ... 그래서 모든 것을 똑같은 방식으로 다시 실행 해 보았습니다 ... 문제를 발견했지만 실제 원인이 될 수 있는지 확실하지 않습니다. .

내 프로젝트에서는 arduino와 MATLAB (GUI) 간의 직렬 통신을 수행해야했습니다. MATLAB (GUI) 직렬 데이터의 출력 (유형)을 보거나 확인하기 위해 HYPERTERMINAL과 VIRTUAL SERIAL PORT EMULATOR를 사용했습니다. 직렬 모니터가 켜져있는 동안 하이퍼 터미널이 실행 중이거나 VSPE가 실행 중일 때마다 프로그램의 업로드 기능이 망가졌습니다. VSPE 또는 HYPERTERMINAL 때문인지 확실하지 않지만 IDE를 다시 설치하면 도움이되었습니다.


2
시리얼 컨트롤 라인 중 하나는 DTR이라고 생각하며 Arduino를 재설정하는 데 사용됩니다. Arduino를 프로그래밍하려고하면 터미널 프로그램이 방해를받을 수 있습니다.
linhartr22

이것은 모든 설정과 추가 라이브러리가 들어있는 Arduino Library 폴더를 삭제 한 경우에만 효과적이었습니다.
Jethro 2016 년

3

Linux Mint를 사용하는 사람들에게는 "Arduino"라는 레이블이있는 레이블 대신 "TTY SO"포트를 선택하면 작동한다는 것을 알았습니다. .

다음에 Arduino를 사용할 때 다시 같은 메시지가 나타나서 "Arduino"포트로 다시 전환하여 그 이후로 계속 작동했습니다.

나는 다른 너희들만큼 기술적으로 지식이 없기 때문에 이것이 왜 효과가 있는지 또는 문제가 무엇인지 전혀 알지 못하지만 그것이 내가 관심있는 전부입니다. 아마도 이것은 누군가에게 유용 할 것입니다.


3

IDE와 드라이버 등을 제거하고 다시 설치 한 다음 관리자로 Arduino IDE를 실행하고 Windows 7로 호환성을 실행하도록 설정했습니다 (현재 10을 사용하고 있습니다).

또한 프로그래머를 AVR ISP로 변경했습니다 (이것은 중요하지 않다고 생각하지만 어쨌든 변경했습니다).

모두가 다시 일하고 있습니다 ... 잘하면, 이것은 다른 사람도 도울 수 있기를 바랍니다.


2

특이한 것이지만 마이크로 컨트롤러를 많이 교체하고 있는데 제대로 장착되지 않았을 때이 오류가 발생했습니다. ATMega328의 고정!


1

컨트롤러 자체가 Arduino의 소켓에 잘못된 방식으로 배치 될 수도 있습니다. 이것은 컨트롤러에 위험 할 수 있지만 (압축 될 수 있음) 제 경우에는 동기화 오류 만 발생하여 코드를 업로드하지 못하게합니다.

따라서 IC의 노치가 올바른 방향인지 확인하십시오 (보드 이미지를 온라인으로 교차 점검 할 수 있음). Uno 컨트롤러의 노치는 보드 가장자리를 향해야합니다.


1

이 오류도 나타났습니다. 헤더에 납땜 한 후 새로운 Arduino Nano 보드를 사용하는 것은 처음이었습니다. 깜박임 스케치만으로 보드에 아무것도 연결되지 않았습니다.

GROUND와 RESET 핀 사이에 작은 납땜이 발견되었습니다. 나는 그것을 고른 다음 확인을 업로드 할 수있었습니다.

나는 당신이 어딘가에 회로에 같은 단락이 있다면 이것이 일어날 수 있다고 생각합니다.


1

새로운 Mini Pro에서도 이와 동일한 오류가 발생했습니다. 대부분의 Arduino와 함께 사전로드 된 기본 깜박임 프로그램이 실행 중이므로 장치가 정상일 것입니다.

그래서 한 번 더 납땜 한 헤더를 검사 한 결과 TX0 핀에 납땜이 충분하지 않은 것으로 나타났습니다. 모든 작품을 다시 판매 한 후.


1

많은 플러그를 뽑고, 포트를 확인하고, IDE를 다시 시작하는 등 Arduino Mega 2560 으로이 결함을 수정하는 것과 다른 점은 Windows USB arduino 드라이버를 제거한 다음 드라이버를 사용하여 다시 설치하고 목록에서 수동으로 선택하는 것입니다.> COM 포트> 아두 이노 http://drivers.softpedia.com/get/Other-DRIVERS-TOOLS/Others/Arduino-Mega-2560-USB-Driver-1110-for-Windows-7-64-bit.shtml 내가있을 수 있습니다 내 우노에서 그것을 테스트 한 다음 메가로 돌아가서 우노와 대화 할 작은 기회가있어 AVRDUDE를 행복하게 만들지 않았습니다.


1

보드에 업로드하는 데 문제가 발생하면 깜박임 예제와 같은 다른 프로그램을 업로드합니다. 이것은 무언가를 재설정하고 내 프로그램을 업로드 할 수 있습니다 (꽤 큰).

그것이 왜 효과가 있는지는 모르겠지만 귀하의 경우에 효과가 있는지 확인하기 위해 이것을 시도해 볼 가치가 있습니다.


어떤 보드와 부트 로더?
Juraj

Arduino Nano, ATMega328P (타사 아님). 하드웨어 버전 : 2, 펌웨어 버전 : 1.16, 장치 서명은 0x1e950f입니다. 부트 로더를 확인하지 않았지만 "전통적인 부트 로더"로 광고되었습니다
Jethro

따라서 귀하의 답변은 구형 Nano 부트 로더에만 해당됩니다
Juraj

감사! 부트 로더를 살펴보고 업그레이드하려고합니다. 이 버그에 대한 정보가 있습니까?
Jethro

1

우노 보드와 비슷한 문제가있었습니다

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x90

많은 방법을 시도했습니다

  • 패킷을 보내기 전에 재설정을 누르십시오
  • 다른 IDE 버전
  • 케이블 교체
  • 컨트롤러 자체 변경
  • 루프백 테스트

그러나 위의 모든 것이 실패했습니다.

나는 Ubuntu 16.04.4 LTS를 사용합니다 4.15.0-33-generic(이 의견을 쓰는 동안). CDC ACM 모듈이로드되지 않았으므로 /dev/ttyACM0선택할 장치가 없습니다 .Arduino IDE -> Tools -> Port

따라서 모듈 이름을 가져 와서로드하십시오

$ lsusb 
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 2341:0043 Arduino SA Uno R3 (CDC ACM)
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


$ sudo modprobe cdc-acm

위의 명령은 필요한 모듈을 삽입합니다. 이제 올바른 포트를 선택하고 코드를 업로드 할 수 있습니다

이것이 나를 위해 일한 다양한 솔루션 중에서 이것이 누군가에게 도움이되기를 바랍니다.


0

보드를 업데이트하여 문제를 해결했습니다 ( "보드 관리자"아래).


Arduino Nano가 있습니까?
per1234

0

오늘 일부 코드에서 동일한 문제에 직면하여 다음과 같이 해결했습니다.

1- 먼저 기본 LED 깜박임 코드를 실행했습니다. 같은 오류가 발생했습니다. 오류가 업로드 중이며 컴파일과 관련이 없음을 확인합니다. 또한 코드가 제대로 컴파일되고 있는지 확인했습니다.

2- 다른 보드를 사용했지만이 PC에서 제대로 작동했습니다. 이것은 컴퓨터와 USB 선이 정상임을 의미합니다.

3- 결함이있는 보드를 다른 PC에 연결했는데 놀랍게도 업로드시 이러한 오류가 없었습니다. 그것은 첫 번째 PC의 드라이버 문제에 대한 힌트를 주었다.

4- 그래서 드라이버를 제거하고 여기 에서 다운로드하여 첫 번째 PC에 다시 설치했습니다

(이 링크에서 드라이버를 설치하는 동안 보드가 PC에 연결되어 있는지 확인하십시오)

그것은 지금 잘 작동했습니다 :-)


0

Arduino Nano avrdude가있는 Linux Mint 17.3 랩톱 에서이 오류가 발생했습니다 : stk500_getsync () : 동기화되지 않음 : resp = 0x00

해결 :

  • 이름에 'arduino'또는 'avr'이있는 모든 항목을 제거했습니다.
  • .arduino 및 .arduino15 디렉토리를 제거했습니다 (이름의 점 참고).
  • 패킷 제거로 버전 1.8.7 제거
  • apt-get 설치 아두 이노 (ver 1.1.0)
  • 간단한 스케치로 테스트 (모든 OK)
  • 패킷 설치로 버전 1.8.7 설치
  • 컴파일되었습니다.
  • 프로세서는 ATmega328p (Old bootloader), 카드는 Arduino Nano, 포트는 / dev / ttyUSB0을 선택했습니다 => IT WORKS!

이 경우 'Old bootloader'가 트릭 인 것 같습니다. 나는 이제 관심이있는 1.1.0과 1.8.7을 모두 가지고 있습니다.


먼저 aguadopd
Juraj
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.