2010년 7월 23일 금요일

WinAVR + Eclipse + AVR Plug-in Developement Environment Setting



AVR의 Windows버전 컴파일 도구 모음집인 WinAVR을 설치하자.
위의 사이트에 가서 최신의 버전을 다운받자. 지금 테스트 하는 시점의 버전은 20100110이다. 그리고 전에 언급한적 있는 Eclipse의 최신 버전을 다운 로드 받자. 다운 받을 주소
에서 최신버전의 Eclipse IDE for C/C++ Developer를 다운 로드 받자. 테스트하는 현시점의 최신 버전은 코드네임 Helios로 되어 있다. 주의 해야 할 것은 Windows의 버전이 32bits인지 64bits인지 구분해야한다. 여기에서는 32bits의 버전만 가지고 다룰 것이다. 64bits가 잘 동작하는지는 아직 잘 모르겠다. 그럼 위와 같이 설치를 마치게 되면 WinAVR은 C:\WinAVR-20100110에 설치되고 Eclipse는 C:\Eclipse에 설치 될 것이다.
그럼 새로운 프로젝트를 갖는 Workspace를 만들자 경로는 C:\work\AVR로 하고 Eclipse를 실행하자. 물론 workspace는 C:\work\AVR로 설정하는 것을 읻지 말자.


아직 AVR Workspace에는 아루런 프로젝트 정보가 없기 때문에 다음과 같은 Welcome화면만 보여 질 것이다. 우선 무시하고 Workbench 모드로 전환하자.




그럼 다음과 같이 Project Explore에 아무런 설정이 되어 있는 않는 빈 상태의 workbench가 열리게 된다.



Eclipse의 AVR Plug-in을 우선 설치해 보도록 하자. Eclipse 메뉴의 Help->Install New Software를 선택하자. Work with: 항목의 Add 버튼을 클릭하자.



그리고 다음과 같이 AVR Eclipse Plugin을 설치하기 위한 주소를 추가한다.



Work with: 의 주소를 AVR Eclipse Plugin으로 설정하고 CDT Optional Features중에서 AVR Eclipse Plugin만 설치하자. Source는 필요없는 부분이다. 필요 없다기 보단 불필요하게 다운 받을 필요가 없다.


자 그럼 이제 필요한 준비물들은 다 준비가 되었다. AVR Plugin을 이용해서 새로운 프로젝트를 생성하자. File 메뉴의 New -> C Project를 선택하고 다음과 같이 AVR128_MP3라는 프로젝트를 생성하자.


Next를 클릭하고, Debug와 Release 설정을 모두 선택하고 Next를 클릭하자.


프로젝트의 MCU 타입과 Crystal의 주파수를 ATmega128l과 16Mhz로 설정하고 Finish를 클릭하자.



자 이상으로 프로젝트를 생성하는 것은 마무리 되었다. 소스코드와 헤더파일및 데이터 파일은 File->New-> Source FIle 이나 Header FIle을 통해서 얼마든지 추가하고 수정할 수 있다.

이제는 avrdude.exe를 통한 이미지 업로드하는 설정을 하도록하자. Project 메뉴의 Properties항목을 선택하자. 그리고 AVR->AVRDude항목을 선택하자.



그리고 Programmer 탭의 New 버튼을 클릭하고 다음과 같이 설정하자.



그리고 Fuses 탭에 가서 다음과 같이 설정한다.
http://www.engbedded.com/fusecalc/ 에서 Fuse 계산기를 사용하면 내가 원하는 설정을 쉽게 알아 낼 수 있다. 우선은 다음과 같이 설정하자.











Atmega128 Module + USBTinyISP Under WinAVR
  • Atmega128 Module Schematic
  • USBTinyISP Schematic
  • Fuse Setting
    • AVR Part name
      Atmega128-PI
    • 4096 words boot 0xf000~0xffff, app 0x0000~0xefff
      BOOTSZ[1:0] = 00 ;
    • Start-Up time 258 CLK
      KSEL0:SUT[1:0] = 000;
    • 16Mhz Crystal
      CKOPT = 0;
Low : 0xce, High : 0x09, Ext : 0xff

댓글 없음:

댓글 쓰기