
EasyEDA라는 툴의 사용법을 공부하여 PCB 제작을 하려고 한다.
최대한 작고 간단하고 깔끔하게 나만의 보드를 만드려고 하는데 이 USB잭이 제법 큰 공간을 차지한다.
다른 보드들은 USB잭 없이 프로그램을 업로드 하여 잘만 사용하던데.. 방법을 찾아보았다.
ICSP.. 아두이노 보드에 ICSP라는 핀이 있는것만 알고 이때동안 관심을 주지 않았는데 부트로더 업로드를 해주는 역할과 함께 프로그램 코드도 업로드 할 수 있는 핀이라는 것을 알게 되었다.
이렇게 되면 PCB 부품 배치에서 USB 관련 소자들을 제거하여 더 깔끔하게 PCB를 만들 수 있을거 같다.
대표적인 방법 중 하나로 ISP 소스코드를 프로그래머 보드로 설정한 보드에 업로드한 뒤, 원하는 소스코드를 프로그래머 보드를 통해 타겟 보드에 업로드 하는 방법이다.


USB를 프로그래머 보드에 연결한 뒤, 위와 같이 프로그래머 보드와 타겟 보드를 점퍼선으로 연결시킨다. *실수로 인한 쇼트 주의!

파일 > 예제 > ArduinoISP > ArduinoISP를 선택하여 예제 소스코드를 연다.

알맞은 보드와 포트를 선택한 뒤 업로드!!
여기까지 진행하면 프로그래머 보드 설정은 끝났다.
이제 내가 원하는 소스코드를 프로그래머 보드를 통해 타겟 보드에 업로드하면 된다.

타겟보드에 예제로 Blink 소스코드를 업로드 해보겠다. *바로 원하는 소스코드 업로드도 가능

알맞은 보드와 포트를 선택하고 프로그래머는 Arduino as ISP를 선택한다.
*타겟 보드가 아두이노 나노인 경우 보드는 Arduino Nano를 선택하고 알맞는 Processer를 선택하면 된다.

마지막으로 그냥 업로드가 아닌 스케치 > 프로그래머를 사용하여 업로드를 하게되면 소스코드가 업로드 되어 프로그래머 보드와 타겟 보드가 동일한 동작을 하는 것을 볼 수 있다. *그냥 업로드를 하게되면 오작동
부트로더 업로드 같은 경우에도 바로 위 단계에서 부트로더 굽기를 하면 USB잭으로는 할 수 없는 부트로더 업로드도 할 수 있다.
'공부 > 아두이노' 카테고리의 다른 글
[아두이노] MCP2515를 이용한 자동차 CAN 상태 값 가져오기 (0) | 2024.08.04 |
---|---|
[아두이노] RFID-RC522를 이용한 RFID 태그 인식 (1) | 2024.07.23 |
[아두이노] 풀업 풀다운 저항 회로를 이용하여 입력 신호 플로팅 현상 해결 (0) | 2023.12.14 |
[아두이노] EEPROM 라이브러리를 이용한 비휘발성 메모리 저장 (0) | 2023.12.12 |
[아두이노] PWM 라이브러리를 이용한 MG90 서보모터 제어 (0) | 2023.12.12 |