SlideShare a Scribd company logo
1 of 13
Download to read offline
X[deca] AVR study
Konkuk University. Department of Electronic Engineering
v0.1 by08기 김정목
v0.2 by11기 정성호
Page § 2
Contents
Contents
1 프로젝트 생성
2
Board의 Frequency에 맞게
Toolchain 설정
3 Atmega Board에 프로그래밍
Page § 3
프로젝트 생성(1/4)
1. AVR Studio 실행 후 위와 같이 첫 화면이 생성됨
2. 새로운 Project를 생성하기 위해서 New Project 클릭 (빨간 테두리)
3. 기존의 Project를 열려면 Open 클릭 또는 아래의 목록에서 선택 (파란 테두리)
4. 최근의 Project를 열려면 Recent Projects에서 원하는 Project 선택 (초록 테두리)
Page § 4
프로젝트 생성(2/4)
1. C/C++탭에서 GCC C Executable Project 선택
2. Project name 입력 (단, 영어 사용)
3. 저장경로(Location) 지정
- 저장경로에 반드시 영어만 사용 한글이 있을 경우 Compile 시에 Make file 오류 발생
- ex) C:UsersDocuments에이브이알_스터디 <= Make file error!
Page § 5
프로젝트 생성(3/4)
1. Device Family에서 사용할 MCU가 속한 분류를 선택한다.
- 이번 Study에서 Atmega128을 사용하기 때문에, megaAVR,8-bit 선택
2. 세미나에서 사용하는 ATmega128을 찾아 선택
3. OK
Page § 6
프로젝트 생성(4/4)
1. 오른쪽 window에 정의한 project name과 동일한 source file(*.c) 생성 된 것 확인
2. 왼쪽 window에서 code 작성
Page § 7
Board의 Frequency에 맞게 Toolchain 설정
1. Board에서 사용하는 Crystal의 Frequency에 맞게 Defined symbols를 지정해줘야함.
2. 메뉴에서 빨간색 네모 부분 클릭
3. Toolcheain 탭에서 AVR/GNU C Compiler -> Symbols에서
4. Add Definde symbols 클릭 (파란색 네모)
5. F_CPU=16000000 을 적는다 -> OK (초록색 네모)
- 사용할 Atmega128 Board가 16 Mhz (= 16000000 Hz, 1M = 10^6) crystal 사용
Page § 8
Atmega Board에 프로그래밍(1/6)
1. Source file에 code 작성
Page § 9
Atmega Board에 프로그래밍(2/6)
1. Source file에 code 작성 후 Build
2. Build -> Build(F7)
- 또는 단축 아이콘 중에 위 그림의 노란 테두리 모양의 아이콘을 누른다.
3. Build가 성공하면 아래의 Message 창에 오른쪽 그림과 같은 message가 뜸
- Build가 성공하면 *.hex file이 생성된다.
Page § 10
Atmega Board에 프로그래밍(3/6)
1. Tools -> Add target -> Atmega가 연결된 PORT를 target으로 추가해준다.
2. 연결된 포트 찾는 방법 (오른쪽 사진 두 장)
- 내 컴퓨터 우 클릭 -> 속성 -> 장치관리자 -> 포트
- Silicon Labs Cp210x USB to UART Bridge옆에 괄호 안의 COM* 을 확인한다.
Page § 11
Atmega Board에 프로그래밍(4/6)
1. Tools -> Device Proframming 에 들어간다.
2. Add target에서 추가해준 Tool과 사용하는 Device와 Interface를 선택하고 Apply
3. Device signature 에서 Read한 후 경고 창에서 Yes
Page § 12
Atmega Board에 프로그래밍(5/6)
1. Memories 탭으로 들어간다.
2. Atmega에 Program이 되 있는 것을 지울 때는 Erase now (파란 테두리)
3. Flash tab에서 elf file 선택 (자동으로 선택이 되어 있다)
- 일반적으로 elf file은 project 폴더 내의 debug 폴더 내에 위치한다.
Page § 13
Atmega Board에 프로그래밍(6/6)
1. Program
- Program 버튼을 누르면 elf file이 Board의 atmega chip에 download 된다.
2. Switch를 ISP 방향으로 해둔다.
- UART 방향으로 되어 있으면 download가 안 된다.
Program을 누르면 작성한 code가 board에 download 된다.
이 때 switch가 ISP 방향으로 되어 있는지 확인한다.

More Related Content

Viewers also liked

2013 MCU( 마이크로컨트롤러 ) 수업자료 1
2013 MCU( 마이크로컨트롤러 ) 수업자료 12013 MCU( 마이크로컨트롤러 ) 수업자료 1
2013 MCU( 마이크로컨트롤러 ) 수업자료 1진우 김
 
AVR 기초와 응용 강의노트(최한호)
AVR 기초와 응용 강의노트(최한호)AVR 기초와 응용 강의노트(최한호)
AVR 기초와 응용 강의노트(최한호)활 김
 
02. led switch
02. led switch02. led switch
02. led switch성호 정
 
노동진 Mega splatting
노동진 Mega splatting노동진 Mega splatting
노동진 Mega splattingdrandom
 
이디스커버리와 EDRM
이디스커버리와 EDRM이디스커버리와 EDRM
이디스커버리와 EDRMPark Youngsoo
 
Relay and AVR Atmel Atmega 16
Relay and AVR Atmel Atmega 16Relay and AVR Atmel Atmega 16
Relay and AVR Atmel Atmega 16Robo India
 
허봉춘씨의 파란만장한 IoT 보드 만들기
허봉춘씨의 파란만장한 IoT 보드 만들기허봉춘씨의 파란만장한 IoT 보드 만들기
허봉춘씨의 파란만장한 IoT 보드 만들기Bongjun Hur
 
UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)
UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)
UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)Billy Choi
 
X[deca] 9월 개강총회
X[deca] 9월 개강총회X[deca] 9월 개강총회
X[deca] 9월 개강총회성호 정
 
버스도착알람시스템 구현하기 - IoT 기기
버스도착알람시스템 구현하기 - IoT 기기버스도착알람시스템 구현하기 - IoT 기기
버스도착알람시스템 구현하기 - IoT 기기Bongjun Hur
 
IoTivity 오픈소스 기술
IoTivity 오픈소스 기술IoTivity 오픈소스 기술
IoTivity 오픈소스 기술Wonsuk Lee
 
[KOTRA] Beyond eyes
[KOTRA] Beyond eyes  [KOTRA] Beyond eyes
[KOTRA] Beyond eyes startupkorea
 
Apache spark 소개 및 실습
Apache spark 소개 및 실습Apache spark 소개 및 실습
Apache spark 소개 및 실습동현 강
 
게임 프로그래밍 기초 공부법
게임 프로그래밍 기초 공부법게임 프로그래밍 기초 공부법
게임 프로그래밍 기초 공부법Chris Ohk
 
Launching a Rocketship Off Someone Else's Back
Launching a Rocketship Off Someone Else's BackLaunching a Rocketship Off Someone Else's Back
Launching a Rocketship Off Someone Else's Backjoshelman
 
Scaling LinkedIn - A Brief History
Scaling LinkedIn - A Brief HistoryScaling LinkedIn - A Brief History
Scaling LinkedIn - A Brief HistoryJosh Clemm
 
The Tester Role & Scrum
The Tester Role & ScrumThe Tester Role & Scrum
The Tester Role & ScrumJohan Hoberg
 

Viewers also liked (18)

2013 MCU( 마이크로컨트롤러 ) 수업자료 1
2013 MCU( 마이크로컨트롤러 ) 수업자료 12013 MCU( 마이크로컨트롤러 ) 수업자료 1
2013 MCU( 마이크로컨트롤러 ) 수업자료 1
 
AVR 기초와 응용 강의노트(최한호)
AVR 기초와 응용 강의노트(최한호)AVR 기초와 응용 강의노트(최한호)
AVR 기초와 응용 강의노트(최한호)
 
02. led switch
02. led switch02. led switch
02. led switch
 
노동진 Mega splatting
노동진 Mega splatting노동진 Mega splatting
노동진 Mega splatting
 
이디스커버리와 EDRM
이디스커버리와 EDRM이디스커버리와 EDRM
이디스커버리와 EDRM
 
Relay and AVR Atmel Atmega 16
Relay and AVR Atmel Atmega 16Relay and AVR Atmel Atmega 16
Relay and AVR Atmel Atmega 16
 
허봉춘씨의 파란만장한 IoT 보드 만들기
허봉춘씨의 파란만장한 IoT 보드 만들기허봉춘씨의 파란만장한 IoT 보드 만들기
허봉춘씨의 파란만장한 IoT 보드 만들기
 
UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)
UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)
UI/UX의 변화와 방향성 사색 (차세대 인터페이스 및 터치리스 UI를 위한 인터랙션 개발기술 세미나)
 
X[deca] 9월 개강총회
X[deca] 9월 개강총회X[deca] 9월 개강총회
X[deca] 9월 개강총회
 
버스도착알람시스템 구현하기 - IoT 기기
버스도착알람시스템 구현하기 - IoT 기기버스도착알람시스템 구현하기 - IoT 기기
버스도착알람시스템 구현하기 - IoT 기기
 
IoTivity 오픈소스 기술
IoTivity 오픈소스 기술IoTivity 오픈소스 기술
IoTivity 오픈소스 기술
 
[KOTRA] Beyond eyes
[KOTRA] Beyond eyes  [KOTRA] Beyond eyes
[KOTRA] Beyond eyes
 
Apache spark 소개 및 실습
Apache spark 소개 및 실습Apache spark 소개 및 실습
Apache spark 소개 및 실습
 
게임 프로그래밍 기초 공부법
게임 프로그래밍 기초 공부법게임 프로그래밍 기초 공부법
게임 프로그래밍 기초 공부법
 
The Programmer
The ProgrammerThe Programmer
The Programmer
 
Launching a Rocketship Off Someone Else's Back
Launching a Rocketship Off Someone Else's BackLaunching a Rocketship Off Someone Else's Back
Launching a Rocketship Off Someone Else's Back
 
Scaling LinkedIn - A Brief History
Scaling LinkedIn - A Brief HistoryScaling LinkedIn - A Brief History
Scaling LinkedIn - A Brief History
 
The Tester Role & Scrum
The Tester Role & ScrumThe Tester Role & Scrum
The Tester Role & Scrum
 

Similar to 01. avr studio 6.2 사용법

Jupyter Notebook to Personal device
Jupyter Notebook to Personal deviceJupyter Notebook to Personal device
Jupyter Notebook to Personal deviceyonseilibrary
 
02.개발환경 실습교재
02.개발환경 실습교재02.개발환경 실습교재
02.개발환경 실습교재Hankyo
 
나의 첫 윈도우/맥 애플리케이션 개발하기
나의 첫 윈도우/맥 애플리케이션 개발하기나의 첫 윈도우/맥 애플리케이션 개발하기
나의 첫 윈도우/맥 애플리케이션 개발하기Devgear
 
C#강좌
C#강좌C#강좌
C#강좌e12g
 
ModelSim 기초 매뉴얼
ModelSim 기초 매뉴얼ModelSim 기초 매뉴얼
ModelSim 기초 매뉴얼Jihyun Lee
 
[스마일팟화분키트]엠블록 설치가이드
[스마일팟화분키트]엠블록 설치가이드[스마일팟화분키트]엠블록 설치가이드
[스마일팟화분키트]엠블록 설치가이드kocoafab
 
피지컬 컴퓨팅 도구
피지컬 컴퓨팅 도구피지컬 컴퓨팅 도구
피지컬 컴퓨팅 도구Kisoon Eom
 
1. 개발환경 셋팅
1. 개발환경 셋팅1. 개발환경 셋팅
1. 개발환경 셋팅Jongmini
 
강좌 03 개발환경 구축
강좌 03 개발환경 구축강좌 03 개발환경 구축
강좌 03 개발환경 구축chcbaram
 
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템Park JoongSoo
 
ASP.NET Core 3.0과 Blazor를 활용한 새로운 WEB 개발(그리고 Try.NET)
ASP.NET Core 3.0과 Blazor를 활용한 새로운 WEB 개발(그리고 Try.NET)ASP.NET Core 3.0과 Blazor를 활용한 새로운 WEB 개발(그리고 Try.NET)
ASP.NET Core 3.0과 Blazor를 활용한 새로운 WEB 개발(그리고 Try.NET)SangHoon Han
 
OpenCR 아두이노 펌웨어개발
OpenCR 아두이노 펌웨어개발OpenCR 아두이노 펌웨어개발
OpenCR 아두이노 펌웨어개발chcbaram
 
Windows Phone 설치준비서 V1.0
Windows Phone 설치준비서 V1.0Windows Phone 설치준비서 V1.0
Windows Phone 설치준비서 V1.0Seo Jinho
 
빌드관리 및 디버깅 (2010년 자료)
빌드관리 및 디버깅 (2010년 자료)빌드관리 및 디버깅 (2010년 자료)
빌드관리 및 디버깅 (2010년 자료)YEONG-CHEON YOU
 
Google Protocol buffer
Google Protocol bufferGoogle Protocol buffer
Google Protocol bufferknight1128
 
Sencha touch2-sdk-tools-window
Sencha touch2-sdk-tools-windowSencha touch2-sdk-tools-window
Sencha touch2-sdk-tools-windowByoung Do Ahn
 
코드 생성을 사용해 개발 속도 높이기 NDC2011
코드 생성을 사용해 개발 속도 높이기 NDC2011코드 생성을 사용해 개발 속도 높이기 NDC2011
코드 생성을 사용해 개발 속도 높이기 NDC2011Esun Kim
 
Cortex M3에서 Wi-Fi 사용하기
Cortex M3에서 Wi-Fi 사용하기Cortex M3에서 Wi-Fi 사용하기
Cortex M3에서 Wi-Fi 사용하기동은 곽
 

Similar to 01. avr studio 6.2 사용법 (20)

Jupyter Notebook to Personal device
Jupyter Notebook to Personal deviceJupyter Notebook to Personal device
Jupyter Notebook to Personal device
 
02.개발환경 실습교재
02.개발환경 실습교재02.개발환경 실습교재
02.개발환경 실습교재
 
나의 첫 윈도우/맥 애플리케이션 개발하기
나의 첫 윈도우/맥 애플리케이션 개발하기나의 첫 윈도우/맥 애플리케이션 개발하기
나의 첫 윈도우/맥 애플리케이션 개발하기
 
C#강좌
C#강좌C#강좌
C#강좌
 
ModelSim 기초 매뉴얼
ModelSim 기초 매뉴얼ModelSim 기초 매뉴얼
ModelSim 기초 매뉴얼
 
[스마일팟화분키트]엠블록 설치가이드
[스마일팟화분키트]엠블록 설치가이드[스마일팟화분키트]엠블록 설치가이드
[스마일팟화분키트]엠블록 설치가이드
 
Maker 오해와 진실
Maker 오해와 진실Maker 오해와 진실
Maker 오해와 진실
 
피지컬 컴퓨팅 도구
피지컬 컴퓨팅 도구피지컬 컴퓨팅 도구
피지컬 컴퓨팅 도구
 
1. 개발환경 셋팅
1. 개발환경 셋팅1. 개발환경 셋팅
1. 개발환경 셋팅
 
강좌 03 개발환경 구축
강좌 03 개발환경 구축강좌 03 개발환경 구축
강좌 03 개발환경 구축
 
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
 
ASP.NET Core 3.0과 Blazor를 활용한 새로운 WEB 개발(그리고 Try.NET)
ASP.NET Core 3.0과 Blazor를 활용한 새로운 WEB 개발(그리고 Try.NET)ASP.NET Core 3.0과 Blazor를 활용한 새로운 WEB 개발(그리고 Try.NET)
ASP.NET Core 3.0과 Blazor를 활용한 새로운 WEB 개발(그리고 Try.NET)
 
OpenCR 아두이노 펌웨어개발
OpenCR 아두이노 펌웨어개발OpenCR 아두이노 펌웨어개발
OpenCR 아두이노 펌웨어개발
 
Windows Phone 설치준비서 V1.0
Windows Phone 설치준비서 V1.0Windows Phone 설치준비서 V1.0
Windows Phone 설치준비서 V1.0
 
빌드관리 및 디버깅 (2010년 자료)
빌드관리 및 디버깅 (2010년 자료)빌드관리 및 디버깅 (2010년 자료)
빌드관리 및 디버깅 (2010년 자료)
 
Google Protocol buffer
Google Protocol bufferGoogle Protocol buffer
Google Protocol buffer
 
Sencha touch2-sdk-tools-window
Sencha touch2-sdk-tools-windowSencha touch2-sdk-tools-window
Sencha touch2-sdk-tools-window
 
Electron forge
Electron forgeElectron forge
Electron forge
 
코드 생성을 사용해 개발 속도 높이기 NDC2011
코드 생성을 사용해 개발 속도 높이기 NDC2011코드 생성을 사용해 개발 속도 높이기 NDC2011
코드 생성을 사용해 개발 속도 높이기 NDC2011
 
Cortex M3에서 Wi-Fi 사용하기
Cortex M3에서 Wi-Fi 사용하기Cortex M3에서 Wi-Fi 사용하기
Cortex M3에서 Wi-Fi 사용하기
 

Recently uploaded

JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개JMP Korea
 
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?Jay Park
 
공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화JMP Korea
 
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석JMP Korea
 
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement MethodologyJMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement MethodologyJMP Korea
 
JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례JMP Korea
 
데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법JMP Korea
 
JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!JMP Korea
 

Recently uploaded (8)

JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
JMP 기능의 확장 및 내재화의 핵심 JMP-Python 소개
 
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
(독서광) 인간이 초대한 대형 참사 - 대형 참사가 일어날 때까지 사람들은 무엇을 하고 있었는가?
 
공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화공학 관점에서 바라본 JMP 머신러닝 최적화
공학 관점에서 바라본 JMP 머신러닝 최적화
 
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
실험 설계의 평가 방법: Custom Design을 중심으로 반응인자 최적화 및 Criteria 해석
 
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement MethodologyJMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
JMP를 활용한 전자/반도체 산업 Yield Enhancement Methodology
 
JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례JMP를 활용한 가속열화 분석 사례
JMP를 활용한 가속열화 분석 사례
 
데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법데이터 분석 문제 해결을 위한 나의 JMP 활용법
데이터 분석 문제 해결을 위한 나의 JMP 활용법
 
JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!JMP가 걸어온 여정, 새로운 도약 JMP 18!
JMP가 걸어온 여정, 새로운 도약 JMP 18!
 

01. avr studio 6.2 사용법

  • 1. X[deca] AVR study Konkuk University. Department of Electronic Engineering v0.1 by08기 김정목 v0.2 by11기 정성호
  • 2. Page § 2 Contents Contents 1 프로젝트 생성 2 Board의 Frequency에 맞게 Toolchain 설정 3 Atmega Board에 프로그래밍
  • 3. Page § 3 프로젝트 생성(1/4) 1. AVR Studio 실행 후 위와 같이 첫 화면이 생성됨 2. 새로운 Project를 생성하기 위해서 New Project 클릭 (빨간 테두리) 3. 기존의 Project를 열려면 Open 클릭 또는 아래의 목록에서 선택 (파란 테두리) 4. 최근의 Project를 열려면 Recent Projects에서 원하는 Project 선택 (초록 테두리)
  • 4. Page § 4 프로젝트 생성(2/4) 1. C/C++탭에서 GCC C Executable Project 선택 2. Project name 입력 (단, 영어 사용) 3. 저장경로(Location) 지정 - 저장경로에 반드시 영어만 사용 한글이 있을 경우 Compile 시에 Make file 오류 발생 - ex) C:UsersDocuments에이브이알_스터디 <= Make file error!
  • 5. Page § 5 프로젝트 생성(3/4) 1. Device Family에서 사용할 MCU가 속한 분류를 선택한다. - 이번 Study에서 Atmega128을 사용하기 때문에, megaAVR,8-bit 선택 2. 세미나에서 사용하는 ATmega128을 찾아 선택 3. OK
  • 6. Page § 6 프로젝트 생성(4/4) 1. 오른쪽 window에 정의한 project name과 동일한 source file(*.c) 생성 된 것 확인 2. 왼쪽 window에서 code 작성
  • 7. Page § 7 Board의 Frequency에 맞게 Toolchain 설정 1. Board에서 사용하는 Crystal의 Frequency에 맞게 Defined symbols를 지정해줘야함. 2. 메뉴에서 빨간색 네모 부분 클릭 3. Toolcheain 탭에서 AVR/GNU C Compiler -> Symbols에서 4. Add Definde symbols 클릭 (파란색 네모) 5. F_CPU=16000000 을 적는다 -> OK (초록색 네모) - 사용할 Atmega128 Board가 16 Mhz (= 16000000 Hz, 1M = 10^6) crystal 사용
  • 8. Page § 8 Atmega Board에 프로그래밍(1/6) 1. Source file에 code 작성
  • 9. Page § 9 Atmega Board에 프로그래밍(2/6) 1. Source file에 code 작성 후 Build 2. Build -> Build(F7) - 또는 단축 아이콘 중에 위 그림의 노란 테두리 모양의 아이콘을 누른다. 3. Build가 성공하면 아래의 Message 창에 오른쪽 그림과 같은 message가 뜸 - Build가 성공하면 *.hex file이 생성된다.
  • 10. Page § 10 Atmega Board에 프로그래밍(3/6) 1. Tools -> Add target -> Atmega가 연결된 PORT를 target으로 추가해준다. 2. 연결된 포트 찾는 방법 (오른쪽 사진 두 장) - 내 컴퓨터 우 클릭 -> 속성 -> 장치관리자 -> 포트 - Silicon Labs Cp210x USB to UART Bridge옆에 괄호 안의 COM* 을 확인한다.
  • 11. Page § 11 Atmega Board에 프로그래밍(4/6) 1. Tools -> Device Proframming 에 들어간다. 2. Add target에서 추가해준 Tool과 사용하는 Device와 Interface를 선택하고 Apply 3. Device signature 에서 Read한 후 경고 창에서 Yes
  • 12. Page § 12 Atmega Board에 프로그래밍(5/6) 1. Memories 탭으로 들어간다. 2. Atmega에 Program이 되 있는 것을 지울 때는 Erase now (파란 테두리) 3. Flash tab에서 elf file 선택 (자동으로 선택이 되어 있다) - 일반적으로 elf file은 project 폴더 내의 debug 폴더 내에 위치한다.
  • 13. Page § 13 Atmega Board에 프로그래밍(6/6) 1. Program - Program 버튼을 누르면 elf file이 Board의 atmega chip에 download 된다. 2. Switch를 ISP 방향으로 해둔다. - UART 방향으로 되어 있으면 download가 안 된다. Program을 누르면 작성한 code가 board에 download 된다. 이 때 switch가 ISP 방향으로 되어 있는지 확인한다.