Arduino ICSP
이 튜토리얼에서는 Arduino에있는ICSP
핀의 사용에 대해 설명합니다. ICSP는 ISP(in-circuit serial programmer)의 약자다.
ICSP
핀을 사용하여 AVR 및 Arduino 프로그래밍
Arduino는 마이크로 컨트롤러, 프로그래머 및 일부 안전 구성 요소가있는 보드입니다. Arduino 팀 자체에서 제공하는 모든 Arduino에는 부트 로더
가 있습니다.이 장치는 PC와 통신하고 마더 보드에있는 BIOS와 같은 작업을 수행하도록 마이크로 컨트롤러에 지침을 제공합니다. 부트 로더
는 사전 프로그래밍되어 있으며 마이크로 컨트롤러의 플래시 메모리 안에 있습니다. Arduino를 PC에 연결할 때부트 로더
는 스케치가 마이크로 컨트롤러에 업로드 될 때까지 기다립니다. 스케치가 제공되지 않으면부트 로더
는 마이크로 컨트롤러 플래시 메모리 내부에 이미 존재하는 스케치를 실행합니다. 때때로이부트 로더
가 충돌하고 Arduino가 PC와 통신 할 수 없습니다. 이 경우 또는부트 로더
를 프로그래밍하거나 다른 마이크로 컨트롤러를 프로그래밍하려는 경우 다른 Arduino 보드를 사용하여이를 수행 할 수 있습니다. 먼저, Arduino 보드에서ICSP
핀이 어디에 있는지 확인해야합니다. Arduino 보드의 핀 구성을 확인할 수 있습니다. 예를 들어, Arduino UNO의부트 로더
를 다른 Arduino UNO로 프로그래밍하려는 경우. 그림과 같이 두 개의 Arduino UNO를 연결합니다.
첫 번째 단계는 프로그래머 Arduino를 ISP로 설정하는 것이다. 이렇게하려면 Arduino IDE의 도구 탭으로 이동하여programmer
를 Arduino로ISP
로 설정합니다. Arduino 예제 섹션에있는 예제 코드를 ArduinoISP
로 사용하는 다음 단계입니다. 이 예제 코드에서는 다양한 매개 변수를 설정하는 과정을 안내하는 많은 주석을 볼 수 있습니다. 이 코드는 프로세스의 작동을 확인하는 데 사용되는 3 개의 LED도 지원합니다. 예를 들어 중간 LED는 프로그래밍 오류가 있음을 나타냅니다. 다음 단계는부트 로더
를 굽는 것입니다. 이렇게하려면도구
탭으로 이동하여부트 로더
굽기를 선택합니다. bootloader
용으로 예약 된 메모리 양 및 재설정 비활성화와 같은bootloader
의 다른 매개 변수를 설정할 수 있습니다. 따라서이 작업을 수행하기 전에 Arduino 보드의 문서를 읽으십시오. 이 방법을 사용하여 다른 AVR 마이크로 컨트롤러를 프로그래밍 할 수도 있습니다. 일부 프로젝트에서는 보드가 필요하지 않기 때문입니다. 대신 PIC 마이크로 컨트롤러와 같은 마이크로 컨트롤러 만 있으면됩니다.
두 개 이상의 Arduino 보드 간 통신을 위해ICSP
핀 사용
하나 이상의 Arduino 보드가 필요한 프로젝트를 만들고 있고 서로 통신하는 데 필요하거나 마스터 Arduino 보드로 일부 Arduino 보드를 제어하려는 경우. 이 경우ICSP
핀을 사용하여 통신 할 수 있습니다.