Hardware/Arduino

ATMEGA328P-PU에 Arduino UNO 부트로더 쓰기

초인로크 2017. 8. 7. 22:03
반응형

아두이노를 쓰다보면 칩이 고장나는 경우가 있다.


그럴때 ATMEGA328P-PU 칩만 구할 수 있으면 간단하게 교체함으로써 재 사용이 가능하다.


칩을 교환한 뒤에 아두이노를 사용하기 위해서 부트로더가 필요하다.


여기서는 아두이노 2개를 가지고 부트로더를 기록하는 방법에 대해서 정리한다.


1. 화면과 같이 선을 연결해 준다. 위의 기판이 칩이 고장나서 부트로더를 써야하는 기판이고, 아래의 기판이 롬을 준비하여 업로드 하기위한 기판이다. 


위와 아래의 기판은 다음과 같이 연결하였다. (사용한 기판은 둘다 아두이노 호환기판이다.)


 13

 12

 11

 RESET

 5V

 Gnd

 

 |

 |

 |

|

|

|

 아래

 13

12

 11

 10

 

 5V


 Gnd




2. ATMEGA328P-PU를 장착하고 부트로더 기록 준비를 해 준다.

Arduino 홈페이지에 가 보면 "Arduino Uno에서는 리셋과 접지 사이에 10uF 커패시터를 연결해야합니다." 라고 나와있다. 나의 경우는 커페시터 없이 성공했기 때문에 안썼지만, 아래의 참고 링크를 확인하여 커페시터를 준비하길 바란다.

Using an Arduino as an AVR ISP (In-System Programmer)


1. Arduino - File - Examples - 11.ArduinoISP - ArduinoISP 선택


2. 아래와 같은 화면이 뜨고 난 후에 Upload를 실행한다. 업로드가 완성이 되면 화면 왼쪽 아래에 Done uploading.이라는 글을 볼수있다.



3. 부트로더를 쓰기위해 Arduino - Tools - Programmer: "Arduino as ISP" 를 선택한다.



4. Arduino - Tools - Burn Bootloader 를 클릭하면 부트로더 쓰기에 들어간다.



5. 아래와 같이 "Done burning bootloader." 가 뜨면 완성이 된 것이다.



6. Arduino UNO롬이 쓰여진 ATMEGA328P-PU칩들. 앞으로 고장나면 바로바로 교환 해 주면서 쓸 예정이다.

더 자세한 내용을 참고하고 싶은 사람은 아래의 링크를 따라가 보길 바란다.

Using an Arduino as an AVR ISP (In-System Programmer)


반응형