Arduino ICSP

  1. ICSP핀을 사용하여 AVR 및 Arduino 프로그래밍
  2. 두 개 이상의 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 ICSP

첫 번째 단계는 프로그래머 아두이노를 ISP로 설정하는 것이다. 이렇게하려면 Arduino IDE의 도구 탭으로 이동하여programmer를 Arduino로ISP로 설정합니다. Arduino 예제 섹션에있는 예제 코드를 ArduinoISP로 사용하는 다음 단계입니다. 이 예제 코드에서는 다양한 매개 변수를 설정하는 과정을 안내하는 많은 주석을 볼 수 있습니다. 이 코드는 프로세스의 작동을 확인하는 데 사용되는 3 개의 LED도 지원합니다. 예를 들어 중간 LED는 프로그래밍 오류가 있음을 나타냅니다. 다음 단계는부트 로더를 굽는 것입니다. 이렇게하려면도구탭으로 이동하여부트 로더굽기를 선택합니다. bootloader용으로 예약 된 메모리 양 및 재설정 비활성화와 같은bootloader의 다른 매개 변수를 설정할 수 있습니다. 따라서이 작업을 수행하기 전에 Arduino 보드의 문서를 읽으십시오. 이 방법을 사용하여 다른 AVR 마이크로 컨트롤러를 프로그래밍 할 수도 있습니다. 일부 프로젝트에서는 보드가 필요하지 않기 때문입니다. 대신 PIC 마이크로 컨트롤러와 같은 마이크로 컨트롤러 만 있으면됩니다.

두 개 이상의 Arduino 보드 간 통신을 위해ICSP핀 사용

하나 이상의 Arduino 보드가 필요한 프로젝트를 만들고 있고 서로 통신하는 데 필요하거나 마스터 Arduino 보드로 일부 Arduino 보드를 제어하려는 경우. 이 경우ICSP핀을 사용하여 통신 할 수 있습니다.