좋은 아이디어 중 여기에 대한 답변에 부두 연설이 있습니다. 무슨 일이 일어나고 있는지 좀 더 현실적으로 만들고 좋은 것들을 요약 해 봅시다.
기본적으로 이러한 상황이 발생하면 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 사이에는 단락이없는 경우
Rx
와 Tx
(보통 핀 1
및 0
)는;
- 보드 아래에 금속 요소가 있거나 구성 요소의 다리 사이에 작은 비트가없는 경우 (FTDI, ATmega 칩 또는 기타);
- ATmega 칩의 전원이 꺼져 있지 않은 경우 (GND / V CC 바로 가기 또는 컷 또는 V CC 입력이 종료되었습니다…);
- Arduino 의
1
및 0
핀이 일부 차폐 또는 맞춤형 설계에 의해 사용 /!\
되지 않는 경우 ( 독립적 인 USB 처리 기능이 있으므로 Leonardo 에는 적용되지 않음 );
- USB to UART 변환기에 문제가없는 경우 (
FTDI
오래된 Duemilanove 또는 최신 Arduino Unos의 ATmega16U2);
- 경우 생성 ATmega328의 칩은 튀김 또는 잘못 설치된다;
- 부트 로더를 덮어 쓰거나 실패한 경우;
- 부트 로더에 들어가기 위해 올바른 전송 속도가 적용되는 경우;
- 대상 마이크로 컨트롤러 및 보드에 대한 올바른 설정이 설정된 경우
일반적으로 avrdude -v -v -v -v
실패한 단계를 많이 찾는 데 도움 이 될 수 있습니다. 전혀 USB 연결을 할 수 없는지 (케이블 고장, USB / UART, PCB…) 또는 부트 로더 문제입니다.
업데이트 : 온보드 ATmega를 켜고 다른 방향으로 장착하려고했습니다. 이제 업로드하는 데 아무런 문제가 없지만 나중에는 아무 일도 일어나지 않습니다. 온보드 LED도 깜박이지 않는 것 같습니다.
ATmega의 위치를 반대로 바꾸어도 작동하지 않으면 전원 공급 장치를 디지털 핀에 올려 놓아 칩이 손상 될 수 있습니다.