검색결과 리스트
글
아두이노를 가지고 놀다보면, 여러가지 함정에 마주한다. 그리고 당연하게도 수 많은 시간을 빼앗긴다. 누군가 나와 같이 함정에 빠져 허우적 거리지 않길 바라며 적어본다.
아두이노 보드 정리
아두이노 보드 별 칩셋에 대한 정보를 숙지하지 않고 개발하다보면, 분명히 나중에 문제가 된다. 나는 여러가지 보드를 구매해서 사용 중이며, 그것들 위주로 기록한다. 뭐 이외의 보드들도 다 거기서 거기니까 :)
아두이노 보드명 | MCU (마이크로 컨트롤러 유닛) |
아두이노 메가 2560 | Atmega328 시리즈 |
아두이노 나노 | Atmega328 시리즈 |
아두이노 레오나르도 R3 | Atmega32u4 시리즈 |
아두이노 마이크로 (Pro Micro) | Atmega32u4 시리즈 |
크게보면 Atmega328 시리즈와 Atmega32u4 시리즈로 나뉜다. 시리즈라고 표현한 이유는 Atmega328P-AU, Atmega328P-PU 처럼 조금씩 다르기 때문이다. 하지만 기본적인 기능은 같으니 여기서는 무시하자.
Atmega32u4 의 특징이라고 한다면, 기본적으로 HID 를 지원한다. 아두이노로 가상 키보드나 마우스 등을 만들 생각이라면 ATmega32u4 칩을 사용하는 보드를 이용하는것이 정신건강에 이롭겠지?
수 많은 함정들
이것저것 개발을 하면서 꼼꼼히 보지 않으면, 놓치기 쉬운 - 그리고 함정이 되는 - 것들을 몇가지 적어 보겠다.
Arduino Nano 의 Pinout
SCP(Serial Peripheral Interface) 를 이용하여 ICSP 를 할 경우, 핀맵(Pinout)을 확인하는 경우가 허다하다. 그런데 아두이노 나노의 경우, 작은 함정이 있다. 검색을 해 보면 아래와 같이 대부분 나와 있다. 거의 모든 자료가 그렇다.
여기서 SCP 쪽을 유심히 보자.
빨간색으로 박스 친 그림 그대로 해석하면 안된다. 이해가 가는가? 레이아웃 그대로 보면 안된다는 이야기다. 자세히보면 아두이노 나노의 경우 좌하단에 1 이라고 써 있는것을 알 수 있다. 응??
이렇게 1이 우상단으로 가도록 돌려 놓고 봐야 된다. -_-;; 조심하도록 하자.
CSP 로 스케치 업로드 하기
나는 Attiny45 와 Attiny85 를 가지고 놀기 좋아한다. 왜냐면 나는 대부분 거창하게 바퀴가 달린 장난감이나 로봇을 만들지 않기에 때문이다. 소소하게 작은 단추 베터리 넣고, 오랫동안 저전력으로 사용하는 악세서리나 소품을 만든다.
아무튼 Attiny 를 사용할때 아두이노 보드를 ISP 로 만들고, 그것을 통해 Attiny 에 펌웨어도 올리고, 스케치도 업로드 한다.
어느날 새로 구매한 아두이노 나노에 펌웨어를 다시 올려야 할 일이 생겼다. 기존에 만들어둔 아두이노 나노(A라고 하자)를 ISP 프로그래머로 만든 후, 새로 산 아두이노 나노(B라고 하자)와 연결하였다. 그리고 펌웨어를 올렸다. 문제없이 잘 올라갔다. 이후에 스케치 파일을 B에 올리기 위해 업로드 하였으나, 연결에 계속해서 실패하였다. Attiny 에서는 잘 되던 시나리오인데 말이다.
끝내 알아낸 원인은, Attiny 가 특이하게도(?) ICSP 를 통한 스케치 업로드를 지원하기 때문에 문제 없이 진행 되었던 것이다. 이게 기본적인 기능은 아니다. 그렇기 때문에 B에는 ICSP 를 통한 스케치 업로드가 불가능한 것이었다. 나의 익숙함이 함정이 되어 나를 곤경에 빠뜨린 셈이다. 주의하자. Attiny 처럼 칩셋에 스케치를 직접 올리는게 아닌 이상은 PC 와 연결해서 업로드 하도록 하자.
'Hardware' 카테고리의 다른 글
싸울아비 조이스틱, Windows 10 이상에서 동작하게 하기 (2) | 2024.10.27 |
---|---|
타이머 LED 만들기 (0) | 2024.10.17 |
하드웨어 프로그래밍의 기초 (0) | 2024.10.17 |
[ESP8266-01] 아두이노 프로그래밍 (1) | 2022.03.22 |
[ESP8266-01] 최신 Firmware 업그레이드 (11) | 2022.03.20 |
RECENT COMMENT