ICCAVR6.31AC語(yǔ)言編譯器的安裝在電腦中放入配套光盤(pán),打開(kāi)ICCAVR6.31A安裝文件后進(jìn)入安裝界面(左圖))安裝目錄可使用默認(rèn)方式,將其安裝在C盤(pán)的icc文件夾中(右圖)。安裝完成后,需進(jìn)行注冊(cè)才能得到無(wú)時(shí)間限制的完全版軟件。注冊(cè)方式如下:
1.打開(kāi)ICCAVR6.31A編譯器界面,單擊菜單欄Help→RegistSOFt→ware(左圖),系統(tǒng)會(huì)提示關(guān)掉計(jì)算機(jī)的防病毒程序,單擊Continue按鈕進(jìn)入注冊(cè)界面(右圖)o2.選中并復(fù)制EMailUnLOCkCode欄右側(cè)框內(nèi)的7組數(shù)值。
3.打開(kāi)注冊(cè)器,粘貼剛才復(fù)制的數(shù)值(下圖)。
4.點(diǎn)擊得到解鎖碼(下圖)。復(fù)制該解鎖碼。
5.在ICCAVR6.31A編譯器的注冊(cè)界面的Paste(~V)theunlockcodefromImagecraft`semail欄中,粘貼入解鎖碼(左圖),單擊License按鈕后再單擊OK完成注冊(cè)(右圖)。
注冊(cè)完成后的ICCAVR6.31A啟動(dòng)界面如下圖所示,主要由菜單欄、工具欄、源文件編輯窗口、工程窗口和編譯輸出窗口五部分組成。
AVRStudio集成開(kāi)發(fā)環(huán)境的安裝打開(kāi)配套光盤(pán)內(nèi)的AVRStudio安裝文件,雙擊Setup.exe文件,按照提示步驟進(jìn)行安裝。安裝結(jié)束后,會(huì)出現(xiàn)一個(gè)關(guān)于安裝USB驅(qū)動(dòng)的界面,由于我們這里不用USB驅(qū)動(dòng)的器件,只需點(diǎn)擊CANcel關(guān)閉即可。
安裝完成后的AVRStudio啟動(dòng)界面下圖所示。
PonyProg2000下載軟件的安裝Prog2000軟件主要用于AVR片機(jī)及PIC單片機(jī)的程序下載,在Windows95/98/ME/NT/2000/XP等操作系統(tǒng)上使用。雙擊配套光內(nèi)的PonyProgV206f軟件進(jìn)行安裝,安裝過(guò)程中只需按照提示,單擊Next按鈕,逐步進(jìn)行即可。安裝完成后,還可以進(jìn)行漢化,選中漢化程序包中的PonyProg2000文件(注意不要打開(kāi)),然后復(fù)制,隨后打開(kāi)C:\ProgramFiles\PonyProg2000文件夾,直接點(diǎn)擊粘貼。當(dāng)彈出對(duì)話框提示是否需替換時(shí),點(diǎn)確定,原文件即為中文版。下圖為PonyProg2000的啟動(dòng)界面。
我們講座中的AVR單片機(jī)開(kāi)發(fā)程為:1.設(shè)置ICCAVR:2.建立一工程項(xiàng)目;3.輸入C源文件;4.向工程項(xiàng)目中添加源文件;5.編譯文,編譯通過(guò)后生成COFF/HEX文件;6,在AVRStudio集成開(kāi)發(fā)環(huán)境打開(kāi)COFF文件,使用JTAG仿真行實(shí)時(shí)在線仿真或進(jìn)行軟件模擬仿真;7.使用PonyProg2000軟件將HEX文件下載到單片機(jī)中;8.應(yīng)用。
AVR入門(mén)程序
接下來(lái)我們做的第一個(gè)AVR程序是控制AVR單片機(jī)綜合試驗(yàn)板上的8個(gè)LED,讓它們亮、滅進(jìn)行閃爍。
1.設(shè)置ICCAVR通過(guò)ICCAVR編譯連接工程之前,需要對(duì)編譯器屬性進(jìn)行設(shè)置,設(shè)置好的某些屬性可保留起來(lái)作為新建工程的默認(rèn)屬性。
打開(kāi)ICCAVR軟件界面,選擇Project→OpTIon進(jìn)入屬性設(shè)置對(duì)話窗。共有Paths、Compiler、Target、ConfigSalvo四個(gè)屬性標(biāo)簽頁(yè)。1).Paths標(biāo)簽頁(yè)(下圖):在屬性中設(shè)置編譯器的頭文件目錄(In-cludePath{s):)和庫(kù)文件目錄(Li-braryPath:)。我們使用系統(tǒng)默認(rèn)的頭文件目錄和庫(kù)文件目錄。
由于我們不使用匯編語(yǔ)言進(jìn)行開(kāi)發(fā),因此匯編語(yǔ)言頭文件路徑(AsmIncludePath(s):)空著不填。
輸出文件目錄(OutputDirec-tory:)空著不填,則輸出文件自動(dòng)存放在工程目錄中,否則存放在用戶填寫(xiě)的路徑下。
2).Compiler標(biāo)簽頁(yè)(下圖):StrictANSICCheckings選中表示進(jìn)行嚴(yán)格的C語(yǔ)法檢查。
AcceptExtensions(C++com-ments,binaryconstants)選中表示接受C++風(fēng)格的程序注釋。
Intsizeenum(forbackwordcompaTIbility)選中表示可以向下兼容程序。
0pTImizaTIons欄可以選擇默認(rèn)設(shè)置(Default)或使能代碼壓縮功能(Enablecodecompression),對(duì)程序的編譯進(jìn)行優(yōu)化。
OutputFormat欄選擇格式輸出。COFF格式的文件用于程序的仿真調(diào)試,HEX格式的文件可燒寫(xiě)入單片機(jī)。
AVRStudioVersion(COFF)欄中選擇Studio4.06andabove。
3).Target標(biāo)簽頁(yè)(下圖):在DeviceConfiguration下拉列表中,選擇我們所使用的單片機(jī)芯片型號(hào),這里我們選擇ATMegal6。其它栗用默認(rèn)設(shè)置。
4).ConfigSalvo標(biāo)簽頁(yè):采用系統(tǒng)默認(rèn)的為不帶實(shí)時(shí)操作系統(tǒng)(DonotuseSalVOConfigu-rator)。
完成設(shè)置后,單擊OK即完成ICCAVR的屬性設(shè)置。如果我們?cè)陂_(kāi)發(fā)下一個(gè)工程項(xiàng)目時(shí),使用這些已經(jīng)做好的屬性設(shè)置)則不必再次進(jìn)行屬性設(shè)置了。
2.建立一個(gè)工程項(xiàng)目在我的文檔中新建一個(gè)acl的文件夾。在IC-CAVR軟件界面中,單擊Project,在彈出的下拉菜單選中New選項(xiàng),屏幕顯示為圖16。在出現(xiàn)的SaveNewProiectAs對(duì)話框中,選擇工程項(xiàng)目存放的路徑(存放在剛才新建的ac1文件夾中)并輸入新建工程項(xiàng)目的名稱(這里我們?nèi)∶鸻cl),單擊保存按鈕,系統(tǒng)自動(dòng)初始化成3個(gè)空文件夾Files、Headers、Docu-ments,如右圖所示。
3.輸入C源文件單擊File菜單,在下拉菜單中選擇New,隨后在出現(xiàn)的Untitled-0文本文件編輯窗口中輸入以下的源程序。
# include《 iom1 6v. h》
void delay(void )
}
unsigned int i, j;
for(i=0;i《1000;i++)
{
for(j= 0; j《 500; i++)
}
}
//========
void main(void)
{
DDRB= Oxff;
PORTB= Oxff;
while(1)
{
PORTB= Ox00;
delay();
PORTB= Oxff;
delay();
}
}
程序輸入完成后,選擇File,在下拉菜單中選中Saveas,保存在Ac1文件夾中,源文件名為ac1.c,保存后可看到源文件名由Untitled-0變?yōu)閍cl.c。
4.向工程項(xiàng)目中添加源文件選中工程項(xiàng)目區(qū)的File文件夾右擊。在出現(xiàn)的下拉窗口中選擇AddFiles,如圖右所示。在添加文件窗口中選擇acl.c源文件,鼠標(biāo)單擊打開(kāi)按鈕,這時(shí)acl.c文件便加入到工程項(xiàng)目中(下圖)。
5.編譯文件選擇主菜單欄中的Project)在下拉菜單中選中MakeProject,這時(shí)編譯輸出窗口出現(xiàn)源程序的編譯信息,如下圖所示。如果編譯出錯(cuò),會(huì)在編譯輸出窗口中顯示出來(lái)。用戶可以在源程序編輯窗口重新輸入、修改源程序文件,并再次編譯,直到編譯通過(guò)井生成用戶所需的文件。
6.軟件模擬仿真打開(kāi)AVRStudio集成開(kāi)發(fā)環(huán)境,這時(shí)出現(xiàn)一個(gè)歡迎進(jìn)入AVRStudio的界面(下左圖)。
單擊Open按鈕,選中acl,cof文件后點(diǎn)擊打開(kāi),出現(xiàn)生成AVRStudio工程項(xiàng)目文件的界面后點(diǎn)保存,然后出現(xiàn)選擇仿真平臺(tái)的界面(下圖)。
這里我們進(jìn)行軟件模擬仿真,DebugPlatform欄中選擇AVRSimulator,Device欄選擇At-megal6芯片(左圖)。點(diǎn)擊Finish后進(jìn)入仿真界面(右圖)。
在主菜單中打開(kāi)Debug,從Debug的下拉菜單中可看到常用的仿真快捷鍵,這里我們選擇F1O(StepOver)進(jìn)行調(diào)試。
選擇Debug-AVRSimulatorOptions,出現(xiàn)下圖所示的仿真選項(xiàng),我們將Frequency一項(xiàng)中的仿真頻率改為8.OOMHz,使其與試驗(yàn)板的實(shí)際工作頻率相符。
在左側(cè)WorksPACe窗口中,存放著ATMeagl6的各種寄存器的狀態(tài)值,我們將I/0ATMEGAl6前的加號(hào)展開(kāi),再將PORTB前的加號(hào)展開(kāi),將PORTB輸出口打開(kāi)(下圖)。
鼠標(biāo)在程序的光標(biāo)箭頭上點(diǎn)一下,隨后按動(dòng)F1O,可發(fā)現(xiàn)PORTB口的各寄存器會(huì)發(fā)生變化,DDRB全部為黑色(OxFF),說(shuō)明方向寄存器的設(shè)置為輸出方式,而隨著繼續(xù)按動(dòng)F1O,PORTB與PINB則一會(huì)變黑(OxFF),一會(huì)兒變白(0xO0)。將Workspace窗口中的Processor前的加號(hào)展開(kāi),老下面有個(gè)StopWatch項(xiàng),該項(xiàng)就是AVRStudio在選定時(shí)鐘頻率下計(jì)算出的運(yùn)行時(shí)間(下圖)。我們可發(fā)現(xiàn),PORTB輸出低電平到電平的時(shí)間間隔約0.439秒,反復(fù)循環(huán)。仿真調(diào)試通過(guò)后,關(guān)閉AVRStudio開(kāi)發(fā)環(huán)境。
7.將HEX文件下載到單片機(jī)中將并口下載器插電腦的并口,下載線的另一端插AVR單片機(jī)綜合試驗(yàn)板的ISP口將試驗(yàn)板上標(biāo)示PBO-PB7的雙排針上8個(gè)短路塊拔下,插到標(biāo)有LED的雙排針上,使PB口與LED接通。試驗(yàn)板通電工作,注意,5V穩(wěn)壓電源接DC5V插座;若使用9V以上電源時(shí),插9~l5V的插座。插錯(cuò)電源會(huì)損壞芯片!
一次使用PonyProg2000下載序時(shí))需對(duì)PonyProg2000進(jìn)行設(shè)置,選擇合適的下載接口方式,并對(duì)端口進(jìn)行校正。PonyProg2000支持串口及并口下載,這里我們采用井口SPI方式下載程序。
雙擊桌面上的PonyProg2000快捷圖標(biāo)運(yùn)行軟件(下圖),出現(xiàn)小馬頭圖標(biāo)后點(diǎn)確認(rèn)。
程序下載前先進(jìn)行端口設(shè)置及校正。選擇設(shè)置→接口設(shè)置,出現(xiàn)下圖對(duì)話框。如果我們的電腦使用的操作系統(tǒng)是Windows95/98/ME,單擊并行,選擇AvrISPAPI,并選擇LPT1;如果我們的電腦使用的操作系統(tǒng)是WindowsNT/2000/XP,則單擊并行,選擇AvrISPI/0,并選擇LPT1。
然后選擇設(shè)置→校正,對(duì)端口進(jìn)行校正,出現(xiàn)下圖的窗口。
單擊Yes開(kāi)始校正,校正完成后會(huì)有提示(下圖),點(diǎn)OK即可。
選擇器件→AVRmicro→At→megal6(下圖)。
選擇文件→打開(kāi)程序(FLASH)文件,文件類型選*HEX,裝載編程文件(下圖)。
選擇命令→擦除,先擦除器件(下圖)。
選擇命令→SecurityandCon-figurationBits.。。,按圖36配置熔絲位。單擊寫(xiě)入,寫(xiě)入熔絲位配置。
選擇命令→寫(xiě)入所有,開(kāi)始下載燒寫(xiě)文件(下圖)。
在下載文件時(shí),ISP旁的發(fā)光二極管DO會(huì)點(diǎn)亮。
8.應(yīng)用下載燒寫(xiě)完成時(shí),我們即可看到PB口驅(qū)動(dòng)的8個(gè)發(fā)光二極管開(kāi)始閃亮,周期約0.8s,即點(diǎn)亮0.4s、熄滅0.4s,反復(fù)進(jìn)行。