반응형

 

며칠 전에 아두이노 방식으로 LED를 깜박이게 하는 예제를 작성해보고는 예전 방식과 얼마나 차이가 나는지 궁금해서 Atmel Studio 혹은 AVR Studio를 설치하고는 똑같이 동작하는 예제를 작성해서 동작시켜 보았습니다.

 

필요한 것

http://www.atmel.com/microsite/atmel_studio6/ 에서 현재 최신버전인 Atmel Studio 6.2(build 1153) 다운로드. 소스코드를 컴파일해서 hex파일 만들 때 사용할 IDE입니다.

http://russemotto.com/xloader/ 에서 XLoader 다운로드. 현재 버전은 1.00. hex파일을 아두이노에 업로드 시켜줍니다.

Arduino UNO R3에서 사용중인 Atmel MCU 모델 확인 - ATmega328

http://arduino.cc/en/uploads/Main/Arduino_Uno_Rev3-schematic.pdf 회로도에서 아두이노의 13번핀은 AVR MCU상의 PB5에 해당됩니다.

 

 

메뉴에서 File-New-Project를 클릭해하면 새로운 프로젝트 생성하기 위한 창이 뜹니다. 왼쪽에 있는 Installed Templates에서 C/C++을 선택하고 중앙에서 GCC C Executable Project를 선택해주고 아랫쪽에 있는 빈칸에 Name, Location, Solution name을 적어주고 ok를 클릭해주었습니다.

 

Arduino UNO R3에서 사용중인 ATmega328을 선택하고 OK를 클릭해줍니다.

 

잠시 후 소스코드를 입력할 수 있는 편집기로 화면이 바뀌면서 기본적인 코드가 입력된 상태가 됩니다.

 

아래와 같은 코드를 입력해줍니다. 앞에서 아두이노와 마찬가지로 1초 간격으로 LED가 깜박이게 됩니다.

메뉴에서 Build-Build Solution를 선택해주면 Blink\Blink\Debug 위치에 Blink.hex파일이 생성됨.

 

이제 아두이노를 컴퓨터와 연결하고 XLoader 프로그램 실행해줍니다. 제대로 아두이노가 인식이 되어야 COM port가 불러와집니다. Hex파일에는 좀전에 생성한 hex파일을 선택해주고 디바이스는 현재 연결한 아두이노 Uno로 잡혀있었습니다. 이대로 두고 Upload를 클릭하면 보드로 펌웨어가 업로드됩니다.

 

정상적으로 LED가 깜박이는 것을 보며 동작하는구나 싶었지만 한번 더 확인해보려고 코드를 약간 수정했습니다. 꺼지지 않고 계속 LED가 켜지게 바꾸어봤는데 정상적으로 똑같이 잘 동작했습니다.

 

 

ps. 이미 아두이노의 13번핀에 보드상의 LED가 연결되어 있지만 같은 핀에 하나 더 연결해봤습니다.

반응형

포스트 작성시에는 문제 없었지만 이후 문제가 생길 수 있습니다.
질문을 남겨주면 가능한 빨리 답변드립니다.

여러분의 응원으로 좋은 컨텐츠가 만들어집니다.
지금 본 내용이 도움이 되었다면 유튜브 구독 부탁드립니다. 감사합니다 ~~

유튜브 구독하기


제가 쓴 책도 한번 검토해보세요 ^^

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기

댓글을 달아 주세요

">