[arduino] Arduino 스케치 업로드 문제-avrdude : stk500_recv () : 프로그래머가 응답하지 않습니다

ATmega328 과 함께 Arduino Duemilanove가 있습니다. Ubuntu 12.04 (Precise Pangolin)에서 작업 중이며 Arduino IDE 버전은 1.0입니다. 최근에는 깜박임과 같은 몇 가지 샘플 스케치를 업로드하려고했습니다. 그러나 내 시도가 작동하지 않으며 시도 할 때마다 동일한 오류가 발생합니다.

avrdude : stk500_recv () : 프로그래머가 응답하지 않습니다.

/dev/ttyUSB0메뉴 도구직렬 포트 에서 활성화했습니다 . 또한 목록에서 올바른 보드 (ATmega328가 포함 된 Duemilanove)를 선택했습니다. 그러나 문제를 해결할 수 없습니다. 온라인에서도 검색했지만이 문제에 대한 다른 응답은 저에게 효과가없는 것 같습니다. 이 문제가 발생하는 이유와 해결 방법은 무엇입니까?

또한 온보드 ATmega를 켜고 다른 방향으로 장착하려고 시도했습니다. 이제 업로드하는 데 아무런 문제가 없지만 나중에는 아무 일도 일어나지 않습니다. 온보드 LED도 깜박이지 않는 것 같습니다.



답변

OS X에서 Arduino IDE를 실행하는 Crowduino 에서이 문제가 발생했습니다. Arduino IDE 환경 설정 창에서 업로드하는 동안 자세한 출력을 켜는 것이 해결책이었습니다.

그런 다음 업로드 할 때 오류 직전에 AVRDUDE가 3 개의 패킷 avrdude: Send: 0 [30] [20](보드에서 해당 RX 플래시와 함께)을 보내는 것을 볼 수 있습니다 avrdude: ser_recv(): programmer is not responding.

이 3 가지 패킷이 전송되기 직전에 보드의 리셋 버튼을 누르는 것이 요령입니다. 그러면 프로그램이 성공적으로 업로드됩니다.


답변

Tx / Rx 핀에 입력이 없는지 확인하십시오. 그런 다음 작동합니다.


답변

나는 같은 문제가 있었다 – 이것이 내가이 질문을 찾은 이유이다.

프로세서를 “ATmego328P”에서 “ATmego328P (Old Bootloader)”로 변경해야했습니다.

적어도 저에게는 문제가 해결되었습니다.

여기에 이미지 설명을 입력하십시오


답변

좋은 아이디어 중 여기에 대한 답변에 부두 연설이 있습니다. 무슨 일이 일어나고 있는지 좀 더 현실적으로 만들고 좋은 것들을 요약 해 봅시다.

기본적으로 이러한 상황이 발생하면 AVRDUDE 에 대해 상세 모드를 사용하여 발생하는 상황을 더 잘 파악하는 것이 좋습니다. 그렇게하려면 환경 설정으로 들어가서 상세 모드 상자 만 선택하면됩니다. Arduino IDE에서 벗어나 콘솔을 시작하여 AVRDUDE의 출력을보다 편하게 읽을 수 있도록하는 것이 좋습니다 upload. 버튼 을 클릭하면됩니다 .

-v명령 호출 에 3 또는 4 를 넣는 것이 여기서 중요합니다 . Arduino의 설치 방법에 전적으로 의존하는 매개 변수로 구성된 AVRDUDE 명령의 모양은 다음과 같습니다.

avrdude -v -v -v -v -C /path/to/avrdude.conf -patmega328 -P/dev/usbport -U flash:w:/path/to/firmware.hex

올바른 명령 줄을 사용하는 좋은 방법은 자세한 정보가 활성화 된 경우 Arduino IDE 출력 로그의 자세한 출력에서 ​​해당 명령 줄을 복사하는 것입니다.

당신이 얻을 때 avrdude: stk500_recv(): programmer is not responding, 그것은 기본적으로 깜박임이 실제로 시작 되기 전에 문제가 발생했음을 의미 합니다.

기본적으로 확인해야합니다 (하드웨어에서 소프트웨어, 로우 레벨에서 하이 레벨까지).

  • 케이블 및 / 또는 커넥터에 마이크로 컷이없는 경우;
  • 납땜 지점이 단락되지 않는 경우 (즉, 금속성 물체에 닿는 경우) 다음을 의미합니다.
    • PCB 사이에는 단락이없는 경우 RxTx(보통 핀 10)는;
    • 보드 아래에 금속 요소가 있거나 구성 요소의 다리 사이에 작은 비트가없는 경우 (FTDI, ATmega 칩 또는 기타);
  • ATmega 칩의 전원이 꺼져 있지 않은 경우 (GND / V CC 바로 가기 또는 컷 또는 V CC 입력이 종료되었습니다…);
  • Arduino 의 10핀이 일부 차폐 또는 맞춤형 설계에 의해 사용 /!\되지 않는 경우 ( 독립적 인 USB 처리 기능이 있으므로 Leonardo 에는 적용되지 않음 );
  • USB to UART 변환기에 문제가없는 경우 ( FTDI오래된 Duemilanove 또는 최신 Arduino Unos의 ATmega16U2);
  • 경우 생성 ATmega328의 칩은 튀김 또는 잘못 설치된다;
  • 부트 로더를 덮어 쓰거나 실패한 경우;
  • 부트 로더에 들어가기 위해 올바른 전송 속도가 적용되는 경우;
  • 대상 마이크로 컨트롤러 및 보드에 대한 올바른 설정이 설정된 경우

일반적으로 avrdude -v -v -v -v실패한 단계를 많이 찾는 데 도움 이 될 수 있습니다. 전혀 USB 연결을 할 수 없는지 (케이블 고장, USB / UART, PCB…) 또는 부트 로더 문제입니다.

업데이트 : 온보드 ATmega를 켜고 다른 방향으로 장착하려고했습니다. 이제 업로드하는 데 아무런 문제가 없지만 나중에는 아무 일도 일어나지 않습니다. 온보드 LED도 깜박이지 않는 것 같습니다.

ATmega의 위치를 ​​반대로 바꾸어도 작동하지 않으면 전원 공급 장치를 디지털 핀에 올려 놓아 칩이 손상 될 수 있습니다.


답변

보드가 올바르게 선택되었는지 확인하십시오. 메뉴 도구-> 보드를 클릭하고 올바른 보드가 선택되었는지 확인하십시오.


답변

핀 0 및 1에 점퍼 와이어가 연결되어 있는지 확인할 수 있습니다. 이러한 핀은 직렬 통신에 사용되며 플러그 된 와이어는 코드가 보드에 업로드되지 않도록 할 수 있습니다.

아무것도 연결되어 있지 않으면 AVRDUDE 의 버그 일 수 있으며 업데이트 할 수 있습니다.


답변

나는이 문제도 만났고 USB 직렬 드라이버를 다시 설치하여 문제를 해결했습니다. Pls 참조 : http://arduino.cc/en/Guide/Howtohttp://www.ftdichip.com/Drivers/VCP.htm