이 매뉴얼은 JK전자(JK Electronics) 에 의해서 번역, 수정, 작성 되었고 소유권 또한
JK전자(JK Electronics)
의 것입니다. 소유권자의 허가를 받지 않고 무단으로 수정, 삭제하거나 배포 할 수 없습니다.



 

ICCAVR 7.x 컴파일러 설정및 프로그래밍 가이드


 
* Update history

- 2011.11.15 : 초기 Release


 
1. ICCAVR 7.x 컴파일러 설정및 프로그래밍 가이드
1.1 프로젝트 만들기
1.2 컴파일 환경 변수 설정
1.3 컴파일
1.4 컴파일한 Hex파일 다운로드

2. AVR Studio 4.x 컴파일러 설정및 프로그래밍 가이드


 

1. AVR Studio 4.x 컴파일러 설정및 프로그래밍 가이드

1.1 프로젝트 만들기

(1) ICCAVR 실행 후 "Project/New" 로 프로젝트 파일 만들기

Rabbit

- Project 파일이 저장될 디렉토리와 프로젝트 파일 이름을 입력하고 "저장" 버튼을 선택 합니다.
- "led_iccavr" 이라는 프로젝트 폴더를 새로 생성한 다음 "led_iccavr" 폴더에 저장 하시기 바랍니다.

Rabbit

- Rabbit 라이브러리 파일들을 프로젝트에 추가 합니다.

Rabbit

- 빈 프로젝트에 Rabbit 라이브러리 파일들(우선 .c 파일들)을 추가 합니다.
- LED ON만 할 것이기 때문에 led.c 파일만 선택 합니다.

Rabbit

- ".h" 파일들을 추가 합니다.

Rabbit

Rabbit

1.2 컴파일 환경 변수 설정

(1) F_CPU 변수 정의
F_CPU 변수는 "hw_config.h" 파일에서 설정 할 수 있습니다.

Rabbit

F_CPU값은 ATMEGA128칩에 삽입되어 있는 Crystal의 갑에 따라서 변경해 주어야 합니다.
AVR Rabbit개발보드의 경우 3.3V로 동작하는 경우네는 "7.3728MHz" Crystal(F_CPU=7372800UL)을 사용하고,
5V로 동작하는 경우에는 "16MHz" Crystal(F_CPU=16000000UL)을 사용하고 있습니다. F_CPU값이 잘못 설정되어
동작하는 경우에는 LED On/Off 등의 GPIO컨트롤 등에는 이상이 없으나 UART Baudrate 등의 설정이 되지않아
통신시 Gabage데이터가 발생 합니다. 참고로 ATMEGA128A-AU 칩의 경우 3.3V동작시 최대 동작 속도가 8MHz이고
5V동작시 16MHz 입니다. Rabbit 개발보드에서 3.3V 동작시 8MHz로 동작시키지 않고 7.3728MHz로 동작시키는 이유는
UART Baudrate 계산시 115200bps로 통신 설정을 하기 위해서 입니다. 8MHz로 동작 하는경우 115200 bps 속도에서
에러율이 높아서 통신이 되지 않습니다.


(2) Compier Options 설정

Rabbit

- "Include Paths" 설정 : "..\lib\" 로 설정 합니다. 이 부분은 프로젝트파일의 위치에 따라서 달라질 수 있습니다.

Rabbit

- "Target" / "Device Configuration" 설정

Rabbit

- main 함수를 추가 할 소스 파일 추가

Rabbit

Rabbit

- 컴파일에 필요한 모든 파일들이 추가된 화면 입니다.

Rabbit



1.4 컴파일

- 아래와 같이 코드를 입력하고, "F9" 버튼을 눌러서 컴파일을 합니다.

Rabbit


"bsp_led_gpio_init()" 함수등은 lec.c 파일에 정의 되어 있는 내용 입니다.
컴파일이 완료된 후 Targt개발보드에 다운로드 하는 방법은 아래 URL링크의 내용을 참조하시기 바랍니다.}


(1) ICCAVR 7.x 에서 다운로드 방법(새창)

ICCAVR 7.x 에서 JTAG ICE500 Mini 제품을 이용해서 다운로드 하는 방법을 설명 합니다. ICCAVR 7.x 에서는
소스 디버깅은 지원되지 않습니다.


2. AVR Studio 4.x 컴파일러 설정및 프로그래밍 가이드(새창)