1.獲得必須的軟件
請從Atmel官方獲得最新版本的AVR Studio
下載地址參見:http://www.cnblogs.com/proteus/archive/2011/11/09/2242583.html
請從WinAVR官方獲得最新版本的WinAVR
下載地址:http://sourceforge.net/projects/winavr/files/WinAVR/
注意:WinAVR和AVR Studio是2個不同的軟件,前者是開源項目,不屬于Atmel所有,后者是Atmel版權所有的。
2.安裝步驟
1)安裝WinAVR
2)安裝AVR Studio
3)安裝AVR Studio的Service Pack(如果有的話)
3.新建測試工程
1)啟動AVR Studio
2)選擇"New Project"
3)"Project type"里選擇"AVR GCC",單擊"Location"旁的按鈕,選擇工程保存位置(這里假設為C:),避免路徑中有中文,
(注意,確保工程保存位置沒有中文路徑,所以,不能保存在“我的文檔”或者“桌面”之類含中文路徑的)
在"Project name:"里填入工程名test01,把"Create initial file"的鉤去除,把"Create folder"鉤上,
單擊"Next>>"
4)"Debug platform:"里選擇"AVR Simulator","Device:"里選擇"Atmega128",單擊"Finish"
5)菜單File->New File,建立空白文檔,復制以下代碼到該文檔中(注意:最后一個“}”下面還有一個空行):
#include "avr/io.h"
int main(void)
{
while(1);
}
6)菜單File->Save,在“另存為”對話框里選擇工程保存的路徑下工程名命名的文件夾下(這里假設為C:test01),
你會看到已經(jīng)有一個test01.aps文件存在了,那是AVR Studio的工程文件?!拔募崩锾钊搿癿ain.c”,保存。
7)在"AVR GCC"工程管理窗格內(nèi)的"Source Files"上單擊右鍵,右鍵菜單里選擇"Add Existing Source File(s)...",
在"Add Source File"里選擇剛剛建立的main.c文件。會看到工程管理窗格內(nèi)的"Source Files"下多了個main.c文件。
8)菜單Project->Configuration Oprions,在"General"下(默認就是),確認"Use External MakeFile"沒有鉤上,
"Frequency:"填入頻率“8000000”,"Optimiztion"選擇"-00",確認"Create Hex File"已經(jīng)鉤上,
然后單擊確定(請勿修改其它設置)
9)菜單Build->ReBuild All,編譯工程。如果操作正確,應該沒有警告和錯誤。
10)菜單Debug->Start Debugging,順利的話,軟件仿真已經(jīng)啟動。
11)至此,測試工程已成功??梢栽诠こ瘫4婺夸浵驴吹揭粋€default文件夾,打開后有test01.elf(AVR Studio的支持的仿真調(diào)試文件格式之一),test01.hex(燒寫時要用的文件)
成功的顯示:
Build started 9.11.2011 at 16:14:41
avr-gcc -mmcu=atmega128 -Wl,-Map=liaojie.map main.o -o liaojie.elf
avr-objcopy -O ihex -R .eeprom -R .fuse -R .lock -R .signature liaojie.elf liaojie.hex
avr-objcopy -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 --no-change-warnings -O ihex liaojie.elf liaojie.eep || exit 0
avr-objdump -h -S liaojie.elf > liaojie.lss
AVR Memory Usage
----------------
Device: atmega128
Program: 204 bytes (0.2% Full)
(.text + .data + .bootloader)
Data: 0 bytes (0.0% Full)
(.data + .bss + .noinit)
Build succeeded with 0 Warnings...
4.給新手的建議:
如果書中/資料中以命令行方式編譯文件,請?zhí)^這些例子中的命令行操作,改為用AVR Studio新建工程來編譯。
如果有Makefile方面的講解,也請?zhí)^。因為這些講解可能太過于簡略,而難以理解。
1)不要去用WinAVR帶的mfile所產(chǎn)生的Makefile文件,只使用AVR Studio菜單Project->Configuration Oprions來配置工程,(不要鉤上"Use External MakeFile")
2)工程保存路徑中不要有中文名,即只在英文名文件夾下(包括其上各級文件夾也是英文)
3)始終使用Build->ReBuild All,編譯工程
4)新建工程時,工程名不要用Makefile(不論何種大小寫組合)
5)新建工程時,不要鉤上"Create initial file"
6)不要修改"Output File"里的文件名
7)現(xiàn)在,中斷程序是以ISR(...)方式聲明的,書和資料可能落后于WinAVR的更改,請隨時通過開始菜單里WinAVR下的avr-libc Manual [WinAVR]查看目前WinAVR的各種函數(shù)和頭文件說明
5.進一步學習:
當你比較熟悉用AVR Studio完成你的工程編譯過程后,可以考慮學習Makefile