이글의 전부 또는 일부, 사진, 소스프로그램 등은 저작자의 동의 없이는 상업적인 사용을 금지합니다. 또한, 비상업적인 목적이라하더라도 출처를 밝히지 않고 게시하는 것은 금지합니다.

 

 

1편 하드웨어 작업에 이어 2편 소프트웨어 작업을 진행합니다.

 

cp2102 칩의 제작사인 silabs 홈페이지에서 cp2102 드라이버를 받아서 설치합니다.

드라이버를 다운 받을 수 있는 URL을 링크합니다. 현재 최신 버전은 6.7.3입니다.

http://www.silabs.com/products/mcu/Pages/USBtoUARTBridgeVCPDrivers.aspx

 

드라이버를 설치하는 방법을 자세히 설명하는 것은 주제와 멀어지는 것 같아서 생략합니다. 다운로드 받은 파일은 압축 파일이므로 적당한 폴더에 풀어 놓고 자신의 OS가 32비트면 파일명에 x86 들어 있는 것을, 64비트면 파일명에 x64가 들어 있는 exe 파일을 실행합니다. 이후 화면에 지시하는 바에 따라 드라이버를 설치합니다.

 

드라이버를 설치한 후에 ATmega32 보드를 PC와 연결하고 장치관리자를 엽니다.

장치관리자를 연 후에 [포트(COM & LPT)] 항목을 열어 현재 연결된 포트를 확인합니다.

 

 

 

위의 사진의 경우 COM6가 ATmega32 보드에 할당된 포트입니다. 이 포트 번호는 나중에 스케치와 연결할 때에 사용해야 하므로 잘 기억하여야 합니다.

 

 

스케치를 실행합니다. 현재 사용하고 있는 스케치는 버전 1.6.13.입니다. 향후 스케치가 업데이트 되면서 방법은 바뀔 수 있습니다.

 

스케치의 [파일] 메뉴에서 [환경설정(Ctrl+commer)]을 선택합니다.

 

 

 

 

보드 매니저를 추가하기 위해서 위 사진에 빨간색으로 표시한 버튼을 누릅니다.

 

 

 

 

 

위 사진에 빨간색으로 칠한 부분을 클릭합니다.

 

 

 

 

 

 

위의 사진과 같이 github.com의 비공식적 아두이노 지원 화면이 나오면 Ctrl+F를 눌려서 MegaCore를 찾습니다.

 

 

 

위의에 파랗게 선택된 url을 마우스로 드래그하여 선택한 후에 Ctrl+C로 복사합니다.

스케치로 돌아가서 [추가적인 보드매니저 URLs]에 Ctrl+V로 붙여 넣기 한 후에 [확인] 버튼을 누릅니다.

 

 

URL이 추가된 것을 확인하고 [OK] 버튼을 누릅니다.

 

 

[툴] 메뉴의 [보드] 항목으로 가서 [보드매니저]를 클릭합니다.

 아래로 스크롤하면 맨 아래에 위 사진과 같이 MegaCore by MCUdude 항목이 나타납니다. 위 빨간 네모 부분을 클릭하면 설치 버튼이 나타납니다. [설치] 버튼을 눌러서 설치합니다.

 

 

설치가 끝난 후에 [툴] 메뉴의 [보드] 항목 위로 마우스를 가져가면 다음과 같이 보드들이 나옵니다.

 

 

맨 아래 쪽에 MegaCore 항목과 그 아래로 ATmega2561, ATmega2560, ATmega1281, ATmega1280, ATmega640, ATmega128, ATmega64 등의 AVR들이 나옵니다. 이 중에서 ATmega128를 선택합니다. 만일 MegaCore가 보이지 않는다면 아래로 가는 화살표 위로 마우스를 가져가면 아래로 스크롤 되면서 나타날 것입니다.

 

이외에도 [Clock], [BOD] 등을 가지고 있는 AVR 보드에 맞게 설정합니다. [포트]는 장치관리자에서 지정 받은 포트로 지정합니다. (위의 경우는 COM6)

 

 

스케치의 툴 메뉴에 있는 부트로더 굽기에서 부트로더를 구울 수 있어야 하는 것 같은데, 에러가 발생하면서 안됩니다. 공식 arduino가 아니라서 그런지, AVRISP mkii가 복제품이라서 그런지, 방법을 몰라서 그런지 모르겠습니다. 하여간 현재로서는 스케치에서는 굽지를 못합니다.

 

 

Windows 10 64bit 운영체제 하에서 AVRISP mkii 복제품을 이용하여 AVR studio 4.19로 부트로더를 굽는 방법을 설명합니다.

 

AVR Studio를 실행합니다.

 

 

위 사진에 빨간색으로 표시한 버튼을 눌러 프로그래머 선택 화면을 부릅니다.

가지고 있는 프로그래머를 선택한 후에 [Connect] 버튼을 누릅니다.

 

 

 

Device로 ATmega128을 선택하고 [Read Signature] 버튼을 눌러서 Signature matches seleted device 메시지가 나오는지 확인합니다.

 

 

 

[Fuses] 탭을 누른 후에 파란색 네모에있는 숫자와 같이 입력하고 [Program] 버튼을 누릅니다.

 

 

 

 

[Program] 탭을 누른 후에 [...] 버튼을 눌러 부트로더 파일을 선택하고, [Program] 버튼을 눌러 부트로더를 기록합니다. 부트로더 파일이 있는 곳은 다음의 사진을 참조하십시오.

 

Windows 10의 경우 파일이 있는 폴더는 다음과 같습니다.

C:\Users\사용자명\AppData\Local\Arduino15\packages\MightyCore\hardware\avr\1.0.7\bootloaders\optiboot_flash\atmega32

 

위 폴더에 있는 여러 개의 부트로더 중에서 만물상 ATmega32 보드는 16MHz로 동작하므로 optiboot_flash_atmega32_115200_16000000L.hex 파일을 선택합니다.

 

만일 AppData 폴더가 보이지 않는다면 탐색기 옵션에서 숨김 파일, 폴더 및 드라이브를 표시하도록 변경해야 합니다.

 

이와 같이하여 atmega128로 아두이노를 만들었습니다.

 

이제 atmega128 아두이노로 간단한 예제 Blink를 실행해 보겠습니다.

 

블로그 이미지

엠쿠스

Microprocessor(STM32, AVR)로 무엇인가를 만들어 보고자 학습 중입니다.

,