本文へスキップ

アトメル社のAVRマイコンをつかった電子工作および無線を使った電子工作を紹介します。





ホーム >準備室 >AVRマイコン_AVR Studio

AVRマイコン

AVR Studio 6

1.インストール

開発環境を整えるために「AVR Studio」をダウンロードしてインストールします。「AVR Studio」は登録する必要はありますがフリーです。
ダウンロード
開発環境を整えるために、Atmel社のホームページ(http://www.atmel.com)から「AVR Studio」をダウンロードします。2012年5月よりバージョンアップして「AVR Studio 6」になっています
ダウンロードするときは。氏名、E-mailアドレス等を入力します。
ダウンロードするアドレスはE-mailで送られてきます。
インストール
ダウンロードが済みましたらダウンロードしたファイルをダブルクリックしますとインストールが始まります。
画面の指示通りに進めば何事もなくインストール完了となります。

2.使い方

AVR Studio 6 top画面

(1)起動画面

プログラムを起動しますと以下の画面がしばらく続いた後に初期画面が表示されます。
AVR Studio 起動初期画面

起動初期画面

プロクラムをつくるには最初に新しいプロジェクトをつくります。以下に3つの方法を示します。
方法1.「strat page」内左上の「new project」をクリックする
方法2.[new project]アイコンをクリックする。
方法3.[File]→[new]→[project]の順に選択する。
AVR Studio New Project画面

[New Project]画面

1.Cプログラムを作るときは一番上の「GCC Executable Project」を選択します。
2.プロジェクト名を入力します。
3.プロジェクトを保存する場所がデフォルトと異なる場合は保存するフォルダを選択します。
4.プロジェクト名とソリューション名が異なる場合は入力します。
(一つのソリューションにいくつものプロジェクトをつくることが可能です。)
5.OKをクリックします。
AVR Studio CPU選択画面

CPU選択画面

前図でOKを押すとCPU選択画面となります。
ここではATmega328Pを選択します。
1.[Device Family]タブで[megaAVR,8bit]を選択します。
2.[ATmega328P]を選択します。
3.OKをクリックします。
AVR Studio プログラム入力画面

プログラム入力画面

プログラムを入力します。
プログラムを作成したら以下のいずれかの方法でビルドをします。
方法1.ビルドアイコンをクリックします。
方法2.[build]→[build プロジェクト名]の順に選択します。
AVR Studio ビルド完了画面

ビルド完了画面

ビルドが成功すると[Output]画面の最後に「Build succeeded.」と表示されます。以下に[Output]画面詳細について記載します。
[Output]画面詳細

------ Build started: Project: test01, Configuration: Debug AVR ------
Build started.
Project "test01.cproj" (default targets):
Target "PreBuildEvent" skipped, due to false condition; ('$(PreBuildEvent)'!='') was evaluated as (''!='').
Target "CoreBuild" in file "C:\Program Files (x86)\Atmel\Atmel Studio 6.0\Vs\Compiler.targets" from project "D:\yoshio.nakamura\Documents\Atmel Studio\test\test01\test01.cproj" (target "Build" depends on it):
Using "RunCompilerTask" task from assembly "C:\Program Files (x86)\Atmel\Atmel Studio 6.0\Vs\Compiler.Task.dll".
Task "RunCompilerTask"
C:\Program Files (x86)\Atmel\Atmel Studio 6.0\make\make.exe all
Building file: .././test01.c
Invoking: AVR/GNU C Compiler : (AVR_8_bit_GNU_Toolchain_3.4.0_663) 4.6.2
"C:\Program Files (x86)\Atmel\Atmel Studio 6.0\extensions\Atmel\AVRGCC\3.4.0.65\AVRToolchain\bin\avr-gcc.exe" -funsigned-char -funsigned-bitfields -O1 -fpack-struct -fshort-enums -g2 -Wall -c -std=gnu99 -MD -MP -MF "test01.d" -MT"test01.d" -MT"test01.o" -mmcu=atmega328p -o"test01.o" ".././test01.c"
Finished building: .././test01.c
Building target: test01.elf
Invoking: AVR/GNU Linker : (AVR_8_bit_GNU_Toolchain_3.4.0_663) 4.6.2
"C:\Program Files (x86)\Atmel\Atmel Studio 6.0\extensions\Atmel\AVRGCC\3.4.0.65\AVRToolchain\bin\avr-gcc.exe" -o test01.elf test01.o -Wl,-Map="test01.map" -Wl,--start-group -Wl,-lm -Wl,--end-group -mmcu=atmega328p
Finished building target: test01.elf
"C:\Program Files (x86)\Atmel\Atmel Studio 6.0\extensions\Atmel\AVRGCC\3.4.0.65\AVRToolchain\bin\avr-objcopy.exe" -O ihex -R .eeprom -R .fuse -R .lock -R .signature "test01.elf" "test01.hex"
"C:\Program Files (x86)\Atmel\Atmel Studio 6.0\extensions\Atmel\AVRGCC\3.4.0.65\AVRToolchain\bin\avr-objcopy.exe" -j .eeprom --set-section-flags=.eeprom=alloc,load --change-section-lma .eeprom=0 --no-change-warnings -O ihex "test01.elf" "test01.eep" || exit 0
"C:\Program Files (x86)\Atmel\Atmel Studio 6.0\extensions\Atmel\AVRGCC\3.4.0.65\AVRToolchain\bin\avr-objdump.exe" -h -S "test01.elf" > "test01.lss"
"C:\Program Files (x86)\Atmel\Atmel Studio 6.0\extensions\Atmel\AVRGCC\3.4.0.65\AVRToolchain\bin\avr-size.exe" "test01.elf"
text data bss dec hex filename
172 0 0 172 ac test01.elf
Done executing task "RunCompilerTask".
Using "RunOutputFileVerifyTask" task from assembly "C:\Program Files (x86)\Atmel\Atmel Studio 6.0\Vs\Compiler.Task.dll".
Task "RunOutputFileVerifyTask"
Program Memory Usage : 172 bytes 0.5 % Full
Data Memory Usage : 0 bytes 0.0 % Full
Done executing task "RunOutputFileVerifyTask".
Done building target "CoreBuild" in project "test01.cproj".
Target "PostBuildEvent" skipped, due to false condition; ('$(PostBuildEvent)' != '') was evaluated as ('' != '').
Target "Build" in file "C:\Program Files (x86)\Atmel\Atmel Studio 6.0\Vs\Avr.common.targets" from project "D:\yoshio.nakamura\Documents\Atmel Studio\test\test01\test01.cproj" (entry point):
Done building target "Build" in project "test01.cproj".
Done building project "test01.cproj".

Build succeeded.
========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ==========

プログラマ

AVRISP mkⅡ

AVRISP mkⅡ

アトメル社純正のプログラマです。「AVR Studio」で作成したプログラム(HEXファイル)をマイコンに書き込むものです。
書き込みはAVR Studioから行うことができます。
以下に[AVR Studio]でのプログラムの書き込み方法を示します。
AVRISP mkⅡピン配置

AVRISP mkⅡとマイコンの接続

AVRISP mkⅡから出ているコネクタは左図に示す配置となっています。
AVR Studioからのプログラム書込

AVR Studioからのプログラムの書き込み

プログラマでCPUに送るには以下の方法によります。
方法1.[Device Programming]アイコンをクリックします。
方法2.[Tool]→[Device Programming]を選択します。
AVR Studio Device Programing画面

[Device Programming]画面

1.DeviceでCPUの形名を選択します。(例としてATmega328Pとします。)
2.[Apply]をクリックします。
3.書き込むプログラムを選択するために[Memories]をクリックします。
AVR Studioプログラムの書き込み

プログラムの書き込み

1.書き込むプログラム(HEXファイル)を選択します。
2.[Program]をクリックします。そうすると、CPUのFlashをまず消去して、その後プログラムを書き込みベリファイまで行います。
3.これで書き込み完了です。。