AVR學(xué)習(xí)心得(一)
昨天拿到了EasyAVR M128開發(fā)板 SK開發(fā)板,很是高興。它花了我500個(gè)大洋,我希望我學(xué)會(huì)它后能給我找工作帶來(lái)更多的機(jī)會(huì),也希望通過(guò)對(duì)AVR單片機(jī)的學(xué)習(xí),打好學(xué)習(xí)ARM的基礎(chǔ),為將來(lái)的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。不過(guò)我對(duì)EMC做的不多,只是用153做了一個(gè)非常小的東西,但我認(rèn)為我還是學(xué)會(huì)了EMC。這種單片機(jī)的特點(diǎn)是非常便宜,而美中不足的是它只能編一次程序,所以給學(xué)習(xí)帶來(lái)了很大的不便。AVR就是我學(xué)習(xí)的第三種單片機(jī)……
通過(guò)前段時(shí)間對(duì)AVR的了解我選擇了ICC+AVRstudio作為我的開發(fā)環(huán)境。ICC用作C編譯軟件(Vsita系統(tǒng)要V7.0以上版本),AVRstudio作為JTAG+ISP軟件。
1.ICC軟件界面如下:
2.AVRstudio軟件界面如下:
軟件使用說(shuō)明:
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ū)添加如下程序代碼,
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文件
如果你沒(méi)有自己寫AVR程序,你可以使用本站的新手入門第一個(gè)程序。AVR_first,實(shí)現(xiàn)紅綠燈不斷閃爍的例子。
程序啟動(dòng)時(shí)候的樣子如下圖:
程序啟動(dòng)界面:
打開main.cof文件
工程文件存為main_cof.aps方便下次打開
選擇相關(guān)硬件配置
(端口的選擇參見(jiàn)下圖) 使用JTAG&SIP默認(rèn)會(huì)是COM3。
端口的選擇(說(shuō)明:這個(gè)畫面可以在:右擊我的電腦>--管理>--設(shè)備管理器里面找到。)
端口頻率設(shè)置
運(yùn)行程序 直接運(yùn)行你可以看到紅綠燈閃動(dòng)的效果。{點(diǎn)擊看大圖}
你還可以通過(guò)Debug里面的命令進(jìn)行在線調(diào)試。 好了,現(xiàn)在你已經(jīng)進(jìn)入AVR的精彩世界了。
評(píng)論