新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > AVR學(xué)習(xí)心得(一)

AVR學(xué)習(xí)心得(一)

作者: 時(shí)間:2016-11-10 來源:網(wǎng)絡(luò) 收藏
AVR開發(fā)軟件的應(yīng)用

昨天拿到了EasyAVR M128開發(fā)板 SK開發(fā)板,很是高興。它花了我500個(gè)大洋,我希望我學(xué)會(huì)它后能給我找工作帶來更多的機(jī)會(huì),也希望通過對(duì)AVR單片機(jī)的學(xué)習(xí),打好學(xué)習(xí)ARM的基礎(chǔ),為將來的ARM學(xué)習(xí)鋪平道路……

本文引用地址:http://m.butianyuan.cn/article/201611/317322.htm

今天我向著我人生中的又一大目標(biāo)進(jìn)發(fā)了,這是我學(xué)習(xí)的第三種單片機(jī)。51是第一種,我以前的所有時(shí)間和注意范圍都放在了這種古老個(gè)又充滿生機(jī)的單片機(jī)上,帶著新的夢(mèng)想我學(xué)習(xí)了第二種單片機(jī)——EMC。不過我對(duì)EMC做的不多,只是用153做了一個(gè)非常小的東西,但我認(rèn)為我還是學(xué)會(huì)了EMC。這種單片機(jī)的特點(diǎn)是非常便宜,而美中不足的是它只能編一次程序,所以給學(xué)習(xí)帶來了很大的不便。AVR就是我學(xué)習(xí)的第三種單片機(jī)……

通過前段時(shí)間對(duì)AVR的了解我選擇了ICC+AVRstudio作為我的開發(fā)環(huán)境。ICC用作C編譯軟件(Vsita系統(tǒng)要V7.0以上版本),AVRstudio作為JTAG+ISP軟件。

1.ICC軟件界面如下:

2.AVRstudio軟件界面如下:

軟件使用說明:

1.ICC軟件:

第一步:運(yùn)行iccavr,運(yùn)行project>>new,新建一個(gè)工程,保存為main.prj,保存在新文件夾avr_first下。

第二步:運(yùn)行Tools>>Application Builder建立工程的工具。

看到如下圖的設(shè)置界面。

icc建立avr工程屬性設(shè)置

將Targat CPU 改為M16,因?yàn)槲覀兪褂玫男酒莔ega16

將Xtal speed 改為1.0000 ,我們使用內(nèi)部晶振,內(nèi)部晶振頻率為1Mhz。

切換到Ports選項(xiàng),作如下圖所示的更改。

Ports選項(xiàng)

意思是使用單片機(jī)的端口A,使用0和1兩個(gè)腳輸出高電平,因?yàn)槲覀兯枚O管是低電平驅(qū)動(dòng)的。

其他項(xiàng)不做更改,點(diǎn)OK完成。

第三步:File>>Save as保存到你剛才第一步建立的工程的文件夾中。注意:保存的文件名必須輸入后綴名,形式如main.c。

第四步:右鍵>>add to project

你將看到如下效果:工程建立完成

第五步:在編輯區(qū)添加如下程序代碼,

CODE:


void Delay(void)
{
unsigned char i,j;
for(i=200;i>0;i--)
{
for(j=200;j>0;j--)
;
}
}

void main(void)
{

init_devices(); //初始化

while(1)
{
PORTA = 0x02; //1腳為高,0腳為低,0腳燈亮
Delay(); //延時(shí)
PORTA = 0x01; //0腳為高,1腳為低,1腳燈亮
Delay(); //延時(shí)
}
}

其中Delay為延時(shí)程序,main為主程序,保存程序。

第六步:Project>>options,將Device configuration改為ATmega16,其他不變,點(diǎn)擊ok,如下圖

編譯器環(huán)境配置

第七步:Project>>rebuild all或者直接使用快捷鍵 shift +f9 ,編譯工程。

成功即可看到下圖所示的樣子。

編譯完成

在狀態(tài)區(qū)看到這樣的代碼:

D:Program Filesiccbinimakew -f main.mak
iccavr -c -ID:PROGRA~1iccinclude -e -DATMEGA -DATMega16 -l -g -Mavr_enhanced D:桌面avr_firstmain.c
iccavr -o main -LD:PROGRA~1icclib -g -ucrtatmega.o -bfunc_lit:0x54.0x4000 -dram_end:0x45f -bdata:0x60.0x45f -dhwstk_size:16 -beeprom:1.512 -fihx_coff -S2 @main.lk -lcatmega
Device 0% full.
Done.

第八步:此時(shí)打開第一步建立工程的文件夾,可以看到如下文件。

文件列表

至此,在ICC AVR下的工作完成,請(qǐng)繼續(xù)下一步,ICCavr生成程序文件解釋。

2.AVRstudio軟件:

第一部:硬件連接。

第二步:使用AVRstudio打開*.cof文件

如果你沒有自己寫AVR程序,你可以使用本站的新手入門第一個(gè)程序。AVR_first,實(shí)現(xiàn)紅綠燈不斷閃爍的例子。

程序啟動(dòng)時(shí)候的樣子如下圖:

程序啟動(dòng)界面:

打開main.cof文件

工程文件存為main_cof.aps方便下次打開

選擇相關(guān)硬件配置

(端口的選擇參見下圖) 使用JTAG&SIP默認(rèn)會(huì)是COM3。

端口的選擇(說明:這個(gè)畫面可以在:右擊我的電腦>--管理>--設(shè)備管理器里面找到。)

端口頻率設(shè)置

運(yùn)行程序 直接運(yùn)行你可以看到紅綠燈閃動(dòng)的效果。{點(diǎn)擊看大圖}

你還可以通過Debug里面的命令進(jìn)行在線調(diào)試。 好了,現(xiàn)在你已經(jīng)進(jìn)入AVR的精彩世界了。



關(guān)鍵詞: AVR學(xué)習(xí)心

評(píng)論


技術(shù)專區(qū)

關(guān)閉