codevisionavr 설치와 기본...

13
CodevisionAVR 설치와 기본 사용법 민경학 ( [email protected]) 인하대학교 IT 공과대학 전자공학과 멀티미디어연구실(하이테크센터 916 ) 2008.9.7.001

Upload: ledung

Post on 24-Sep-2018

234 views

Category:

Documents


0 download

TRANSCRIPT

 

 

 

CodevisionAVR 설치와 

기본 사용법  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

민경학 ( [email protected]

인하대학교 IT 공과대학 전자공학과  

멀티미디어연구실(하이테크센터 916 호) 

2008.9.7.001 

인하대학교 전자공학과

WWW.INHAELEC.COM   2 CLUB.CYWORLD.COM/INHAEPT 

들어가며… 

AVR 에서 쓸 수 있는 컴파일러 종류에는 CodeVisionAVR,  AVR Edit,  IAR,  

AVRStudio 등이 있습니다. CodeVisionAVR 과 IAR 은 상용이고 AVR Edit 과 AVR Studio 는 

gcc 기반이기 때문에 무료로 컴파일 할 수 있는 장점이 있습니다. 어느 컴파일러가 

좋다 나쁘다 의 구분을 하기에는 무리가 있으며, 각각의  컴파일러는 장점과 단점이 

존재합니다. 우리는 여기에서 통합 개발환경을 지원하는 CodeVisionAVR 의 기본적인 

설치법과 초기 프로젝트 생성법, ToastProg 를 이용한 전송 방법등을 알아 보겠습니다. 

 

 

                       

WWW.ICLUB.CY

1. 다운Codev

에 방문

지불하

현재 최

코드의 

다음과 

 

 

NHAELEC.COYWORLD.COM

운로드 및visionAVR 의 제

문하여 무료버

고 Commercia

최신버전은 2.0

길이가 제한

같은 순서로

<HP

OM M/INHAEPT

및 설치제작사인 HP 

전인 Evaluati

al version 을 구

03.6 입니다. 

한(2KB)되어 있

로 최신버전을

P InfoTech 사

inforTech 사의

ion version 을

구매하여 다운

Evaluation ve

있다는 점이며,

다운로드하여

홈페이지 초

의 홈페이지 (

을 다운로드 받

운로드 받을 수

ersion 과 Com

, 기타 성능상

여 쓰실 수 있

초기화면, Prod

인하대학

(http://www.

받거나  일정금

수 있습니다. 

mmercial versi

상의 제한은 없

있습니다. 

ducts 클릭>

학교 전자공학

hpinfotech.co

금액을 

2008 년 9 월

on 의 차이점

없습니다. 

학과

 3 

om/) 

 

은 

 

인하대학교 전자공학과

WWW.INHAELEC.COM   4 CLUB.CYWORLD.COM/INHAEPT 

 

 

WWW.ICLUB.CY

 

다운로

설치를 종

아이콘을

 

 

 

 

 

 

NHAELEC.COYWORLD.COM

로드 후, 설치는

종료하면 바탕

을 더블클릭하

OM M/INHAEPT

는 기본옵션으

탕화면에 Cod

하면  프로그램

 

으로 진행하며

evisionAVR Ev

램이 실행됩니

며 계속 <다음

valuation  아이

니다. 

 

인하대학

>버튼을 눌러

이콘이 생성됩

학교 전자공학

러 설치합니다

됩니다. 이 

학과

 5 

 

다. 

인하대학교 전자공학과

WWW.INHAELEC.COM   6 CLUB.CYWORLD.COM/INHAEPT 

 

2. 프로젝트 생성 

 프로그램을 구동시키면 다음과 같은 화면을 보실 수 있습니다. 

 <최초 구동화면> 

 

 

위의 화면에서 <File>  ‐ <New>  순서로 클릭을 하면 File Type 을 고르는 화면이 

나타납니다. File Type 은  Project 로 선택합니다. 

  

인하대학교 전자공학과

WWW.INHAELEC.COM   7 CLUB.CYWORLD.COM/INHAEPT 

< OK>를 클릭하면 아래와 같은  화면이 나타나는데 이는  CodeWizardAVR 을 사용할 

것인지에 대한 화면입니다. 이 CodeWizardAVR 은 사용자가 매우 손쉽게 초기화 및 

기타 설정을 해줄 수 있는 기능으로써, CodeVisionAVR 이 가지고 있는 매우 간편하고 

강력한 기능 중 하나입니다. 우리는 wizard 를 사용할 것이므로 Yes 를 클릭합니다. 

  

Yes 를 클릭하면 다음과 같은 설정화면이 나타납니다 

  

인하대학교 전자공학과

WWW.INHAELEC.COM   8 CLUB.CYWORLD.COM/INHAEPT 

위의 설정 중 중요한 항목이 Chip 과 Clock 입니다. 우리는 ATMEGA128 을 이용하고 

Clock 는 16Mhz 를 이용할 것이므로 위와 같이 설정합니다. 초기 설정은 Chip과 

Clock만 정확히 맞춰 주고 저장 후 종료를 해줘도 상관이 없습니다. 다만 여기에서 좀 

더 간편하게 설정을 할 수 있으며, 자신이 원하는 부분에 대해 직접 설정해 주면 해당 

소스코드가 자동으로 C 파일 내에 생성이 되는 방식입니다. 기본적인 포트제어부터 

DS1302(Real‐Time Clock)등에 이르기까지 많은 기능을 클릭 몇 번으로 손쉽게 초기화 

할 수 있다. 코딩 중 레지스터를 직접적으로 제어하는 것 보다 효율적이고 정확합니다. 

다른 메뉴에 대해서는 진도에 따라 다시 설명하는 것으로 하겠습니다.  

설정을 마치고  Flie ⇒ Generate, Save and Exit 를 클릭 합니다. 

 

 

Source File 의 이름을 설정합니다. 알맞은 이름으로 생성합니다. 여기서는 test 로 

생성하겠습니다. 확장자는 입력하지 않아도 자동으로 입력됩니다.  

 

프로젝트 이름 또한 입력합니다. 혼동을 피하기 위해서 앞서 작성한 Source File 의 

이름과 동일하게 합니다. 

인하대학교 전자공학과

WWW.INHAELEC.COM   9 CLUB.CYWORLD.COM/INHAEPT 

 

WizardAvr 로 작성한 내용을 저장하는 화면입니다. 파일명을 동일하게 합니다. 

주의할 점은 파일명을 다르게 했을 경우에는 혼동이 올 수 있으므로 위의 3 개 

파일명을 동일하게 하여 작성하도록 합니다. 

 

설정에 의하여 소스코드가 생성된 화면입니다. 우리가 wizard 를 이용해서 설정한 

내용이 자동으로 소스코드가 생성되어 입력되어 있습니다. 화면 하단으로 스크롤 

하면 while 문이 있는데 여기에 // Place your code here 라는 주석이 있습니다, 

여기에서부터 코딩을 시작하면 됩니다. 보통 코딩시 초기화는 무한루프(while(1))바로 

위에서 작성하도록 하고, 실제 동작을 위한 내용은 무한루프 안에서 하도록 합니다.  

WWW.ICLUB.CY

3. 컴파 코드를 작

구 버전(

신 버전(

컴파일(빌

만약 이상

NHAELEC.COYWORLD.COM

파일 작성하고 나서

1.xx 버전) : <

2.xx 버전) : <

빌딩)을 한 후

상이 있다면 다

OM M/INHAEPT

서 다음과 같이

Project> ‐ <M

Project> ‐ <Bu

후 이상이 없으

<Buildin

다음과 같이 E

<Buildin

이 컴파일을 합

Make>  (단축키

uild>또는 <Bu

으면 아래와 같

ng(Complie)에

Error 메시지와

ng (Complie)에

합니다. 

키 SHIFT+F9)

uild all>  (단축

같은 결과가 출

에 성공한 화면

와 함께 Error

에 실패한 화면

인하대학

축키 SHIFT+F9

출력됩니다.

면> 

의 위치를 출

면> 

학교 전자공학

 

또는 CTRL+F9

 

출력해줍니다.

학과

10 

9) 

 

인하대학교 전자공학과

WWW.INHAELEC.COM   11 CLUB.CYWORLD.COM/INHAEPT 

4. 프로그래밍 (퓨즈비트 설정) CodeVisionAVR 은 USB 포트를 이용한 USB‐ISP Programmer 를 이용한 자동 전송도 

지원하지만 우리가 1 학기에 이용했던 ToastProg 를 이용한 전송도 지원하므로 우리는 

ToastProg 를 이용해서 전송하도록 하겠습니다. 기본적인 전송방법은 AT89S52 를 

전송할 때와 동일하지만 전송에 앞서 중요한 작업이 있습니다. 

ATMEGA128 은 퓨즈비트라는 것을 설정해 주어야 하는데, 퓨즈비트에 대해서 간단히 

설명하자면, CHIP 의 상태를 설정하는 것으로써 잘못 설정한다면 CHIP 에 다시 

프로그래밍을 할 수 없는 LOCK 상태가 될 수 도 있으므로 주의해서 프로그래밍 해야 

합니다. 퓨즈비트는 초기 1회만 설정 해주면 됩니다. 

ToastProg 를 실행시킨후 <Command> ‐ <Configuration & Security bits> 를 클릭하거나 

오른쪽과 같은 Secur 버튼을 클릭하여 아래와 같이 설정 한 후 <Write> 버튼을 

눌러  프로그래밍 합니다. CKOPT 에만 체크하도록 합니다. 

 

<퓨즈비트 설정화면, CKOPT 에 만 체크 합니다> 

 

이후 전송방법은 AT89S52때와 동일한 순서로 진행합니다. 앞서 만들어진 HEX 

파일이 저장된 경로를 찾아서 프로그래밍 합니다. ATMEGA128 은 EEPROM 을 가지고 

있으므로 EEPROM 프로그래밍 또한 같은 방법으로 프로그래밍 합니다. 

<참고> 

인하대학교 전자공학과

WWW.INHAELEC.COM   12 CLUB.CYWORLD.COM/INHAEPT 

정상적인 프로그래밍 시간은 5초 이내 입니다. ToastProg 프로그램 자체의 결함으로 

가끔 10 초 이상 긴 시간 동안 프로그래밍이 된다면 이는 프로그래밍에 실패한 것이니 

다시 프로그래밍을 하도록 합니다. 

 

<생성된 HEX file 을 선택하는 화면> 

인하대학교 전자공학과

WWW.INHAELEC.COM   13 CLUB.CYWORLD.COM/INHAEPT 

 

<정상적으로 프로그래밍이 성공된 화면>