개발/아두이노-Arduino

[에러/arduino] avrdude: stk500_recv(): programmer is not responding

어중E 2022. 9. 11. 15:28

[에러/arduino] avrdude: stk500_recv(): programmer is not responding

아두이노 나노를 사용하다가 이런 에러 문구가 발생했습니다. 문구의 뜻으로는 프로그래머가 반응하지 않는다인데 이는 아두이노가 반응하지 않는다는 말입니다. 해결방법으로는 2가지가 있습니다.

 

RX, TX 핀에 연결된 부분 확인

아두이노 보드에는 RX와 TX가 있습니다. 가장 많이 사용하는 아두이노 우노와 나노에는 0번 핀과 1번 핀이 Rx, Tx 역할을 합니다. 이 핀에 선이나 다른 장치들이 연결되어 있으면, 업로드하는 과정이 진행되지 않고, 에러를 띄우게 됩니다. 이 에러가 프로그래머가 반응하지 않는다는 에러입니다. 이 경우에는 연결된 선을 잠깐 제거하고 업로드가 완료되면 다시 연결하는 방법을 진행해보면 업로드를 성공적으로 마칠 수 있습니다.

 

부트로더가 설치되지 않거나 설정이 잘못된 경우

부트로더는 말 그대로 부팅을 진행해주는 프로그램입니다. 기본적으로 아두이노에 설치되어 있으며, 이를 이용하여, 우리가 아두이노 IDE에서 코드를 업로드할 수 있습니다. 부트로더가 설치되었더라도 어떤 이유로 작동이 안 된다면, 다시 설치하면 됩니다. 

 

하지만 잘되던 부트로더가 갑자기 이상해질 가능성은 거의 드물기 때문에, 설정이 잘못된건 아닌지 확인해봐야 합니다.

 

같은 아두이노 보드라도 프로세서의 종류가 여러개인 경우에는 프로세서를 선택해야 합니다. 아두이노 나노의 경우에는 종류에 따라 ATmega328P와 ATmega168이 있습니다. 이때 328P의 경우에는 종류가 2가지로 Old Bootloader가 있습니다. 만일 에러가 발생한다면, 프로세서의 종류를 확인하고, 프로세서가 같다면, Old Bootloader를 선택해보세요. Old Bootloader 였다면, 일반 328P라고 적힌 부분을 선택하여 업로드해봅니다.