如何學(xué)好AVR單片機(jī)介紹
隨著各IC廠商推出各種高性能的單片機(jī),51單片機(jī)已經(jīng)遠(yuǎn)遠(yuǎn)不能滿足大家對(duì)高性能單片機(jī)的需求。目前很多公司和學(xué)校已經(jīng)開(kāi)始轉(zhuǎn)向AVR單片機(jī)了,相信在未來(lái)幾年,AVR將會(huì)非常興旺,所以學(xué)習(xí)AVR單片機(jī)將會(huì)很有前途。
相比經(jīng)典的51系列來(lái)說(shuō),AVR單片機(jī)突出的優(yōu)點(diǎn)主要有以下幾點(diǎn):
一、速度快。AVR是精簡(jiǎn)指令集單片機(jī),其速度可以達(dá)到1MIPS/秒,理論上是傳統(tǒng)的51的12倍,實(shí)際上在10倍左右。
二、片上資源豐富。MEGA系列片上具備JTAG仿真和下載功能。片內(nèi)含有看門(mén)狗電路、片內(nèi)程序Flash、片內(nèi)數(shù)據(jù)RAM、同步串行接口SPI、異步串口UART、內(nèi)嵌AD轉(zhuǎn)換器、EEPROM、模擬比較器、PWM定時(shí)計(jì)數(shù)器、TWI(IIC)總線接口、硬件乘法器、獨(dú)立振蕩器的實(shí)時(shí)計(jì)數(shù)器RTC、片內(nèi)標(biāo)定的RC振蕩器等片內(nèi)外設(shè),可以滿足各種開(kāi)發(fā)需求。
三、驅(qū)動(dòng)能力強(qiáng)。I/O口可以直接驅(qū)動(dòng)數(shù)碼管、LED、繼電器等器件,節(jié)省很多外圍電路,即節(jié)省開(kāi)發(fā)難度,又降低成本。
四、功耗低。低功耗雖然比不上430單片機(jī),但是在單片機(jī)中也是佼佼者。
五、可選擇型號(hào)種類多。各種不同的型號(hào)可以滿足不同的需求,讓你的項(xiàng)目有很多的選擇余地。
六、性價(jià)比高。在高性能的前提下,并沒(méi)有增加芯片的價(jià)格,價(jià)格可以和51相比,而功能確是51不可以比的。
綜合以上的優(yōu)點(diǎn)和今后的趨勢(shì),學(xué)習(xí)AVR單片機(jī)是很必要的。
下面就我個(gè)人的體會(huì)怎么樣才能更快的學(xué)好AVR單片機(jī)??!很多想學(xué)習(xí)AVR的人都問(wèn)我怎樣才能學(xué)好?下面我就把我自己是如何學(xué)習(xí)AVR單片機(jī),如何開(kāi)始上手,如何開(kāi)始熟練這個(gè)過(guò)程給大家講講。
下面簡(jiǎn)要介紹一下步驟:
一、找本書(shū)大概了解一下AVR單片機(jī)結(jié)構(gòu)、功能。大概了解就行,不用看的很細(xì)。(五天)
二、找學(xué)習(xí)板練習(xí)編寫(xiě)程序,學(xué)單片機(jī)主要是練習(xí)編寫(xiě)程序,遇到不會(huì)的再請(qǐng)教別人或查書(shū)。(四十天)
三、如果你學(xué)習(xí)的是MEGA系列的AVR單片機(jī),你還要學(xué)會(huì)怎么樣設(shè)置熔絲位,讓它更高效、更方便的為你工作。(一天)
四、自己在網(wǎng)上找些小電路類的資料練習(xí)設(shè)計(jì)外圍電路。焊好后自己調(diào)試,熟悉過(guò)程。(十天)
五、自己獨(dú)立設(shè)計(jì)具有個(gè)人風(fēng)格的電路、產(chǎn)品,……你已經(jīng)是高手了。
計(jì)算一下時(shí)間,兩個(gè)月左右你就可以熟練操作AVR單片機(jī)了,至于多長(zhǎng)時(shí)間成為高手,看你的努力程度了。
任何一款單片機(jī)的學(xué)習(xí)都應(yīng)該是和實(shí)踐緊密結(jié)合的過(guò)程,不能長(zhǎng)時(shí)間的停留在書(shū)本上。但是學(xué)習(xí)單片機(jī)也是學(xué)習(xí)知識(shí),所以首先還必須得看書(shū),因?yàn)閺臅?shū)中你需要大概了解一下,單片機(jī)是什么東西?都可以干什么?如何控制它才能達(dá)到我們的目的等等?第一次,第二次你可能看不明白,但這不要緊,因?yàn)檫€缺少實(shí)際的感觀認(rèn)識(shí)??梢园阉?dāng)做小說(shuō)來(lái)看,只要了解個(gè)大概就行。推薦一本書(shū),書(shū)名是《AVR系列單片機(jī)C語(yǔ)言編程與應(yīng)用實(shí)例》,是清華大學(xué)出版社出版的。大概了解一下書(shū)上的內(nèi)容,然后實(shí)踐,這是非常關(guān)鍵的,因?yàn)閷W(xué)單片機(jī)你不實(shí)踐是不可能學(xué)會(huì)的。
關(guān)于實(shí)踐有兩種方法你可以選擇,一種方法:你自己花錢(qián)買(mǎi)一塊單片機(jī)的學(xué)習(xí)板,功能少的花錢(qián)少,入門(mén)過(guò)后就沒(méi)什么用處了。功能多的雖然貴點(diǎn),但是你可以學(xué)習(xí)到更多的東西。好的學(xué)習(xí)板可以當(dāng)作開(kāi)發(fā)板,很多人以為學(xué)習(xí)板和開(kāi)發(fā)板這是一個(gè)東西,其實(shí)不然,學(xué)習(xí)板只能來(lái)簡(jiǎn)單的學(xué)習(xí),開(kāi)發(fā)板呢?上面的東西很專業(yè),程序中的子函數(shù)很獨(dú)立,在你開(kāi)發(fā)的時(shí)候,很多東西拿來(lái)就可以用直接調(diào)用,很方便。所以我個(gè)人建議買(mǎi)個(gè)好點(diǎn)的可以用做開(kāi)發(fā)板的學(xué)習(xí)板。流水燈、數(shù)碼管、獨(dú)立鍵盤(pán)、矩陣鍵盤(pán)、AD或DA(原理一樣)、液晶、蜂鳴器等很基礎(chǔ)的實(shí)驗(yàn),如果你能熟練應(yīng)用,那可以說(shuō)對(duì)于單片機(jī)方面的硬件你已經(jīng)入門(mén)了,剩下的就是自己練習(xí)設(shè)計(jì)電路,不斷的積累經(jīng)驗(yàn)。只要過(guò)了第一關(guān)的入門(mén),后面的路就好走多了。
方法二:你身邊如果有單片機(jī)方面的高手,向他求助,讓他幫你搭個(gè)簡(jiǎn)單的最小系統(tǒng)板。對(duì)于高手來(lái)說(shuō),做個(gè)單片機(jī)的最小系統(tǒng)板只需要幾分鐘的時(shí)間,而對(duì)于初學(xué)者可就難多了,因?yàn)橹挥袑?duì)硬件了解了,才能熟練運(yùn)用,而你還沒(méi)入門(mén)。而如果你身邊沒(méi)有這樣的高手,又找不到可以幫助你的人,那我勸你最好是自己買(mǎi)上一塊,畢竟自己有一塊要方便的多,以后做單片機(jī)類的實(shí)驗(yàn)時(shí)都能用得上,省時(shí)省事,為了學(xué)習(xí),投入一下還是很值得的,因?yàn)橐院笏鼮槟銊?chuàng)造的價(jià)值是無(wú)法比擬的,少買(mǎi)一件衣服,少下兩頓館子,少上網(wǎng)吧,省點(diǎn)錢(qián)學(xué)習(xí)些有用的東西,這才是年輕人該做的事。
有了單片機(jī)學(xué)習(xí)板之后你要多練習(xí),最好是自己有臺(tái)電腦,多研究程序,少玩游戲、少看電影。首先學(xué)會(huì)使用開(kāi)發(fā)軟件,如何編輯、編譯源程序?如何仿真程序?目前使用C語(yǔ)言開(kāi)發(fā)AVR的人占90%,而初學(xué)者大都使用ICCAVR(AVR的C語(yǔ)言環(huán)境)作為編輯、編譯源程序的軟件,用AVR Studio來(lái)進(jìn)行仿真(如果需要這兩個(gè)軟件可以聯(lián)系本文的作者QQ:475661158)。然后從最簡(jiǎn)單的流水燈實(shí)驗(yàn)做起,等你能讓那八個(gè)流水燈按照你的意愿隨意流動(dòng)時(shí)你已經(jīng)入門(mén)了,你會(huì)發(fā)現(xiàn)單片機(jī)是多么有趣的東西啊,太有意思了(當(dāng)你編寫(xiě)的程序按你的意愿實(shí)現(xiàn)時(shí)你會(huì)感到很愜意,慢慢的你會(huì)愛(ài)上電子這行的)。然后讓數(shù)碼管亮起來(lái),這兩項(xiàng)會(huì)了后,你已經(jīng)陷入其中了。就是要這樣練習(xí),在寫(xiě)程序的時(shí)候你肯定會(huì)遇到很多問(wèn)題,而這時(shí)你再去翻書(shū)找,或是請(qǐng)教別人,當(dāng)?shù)玫酱鸢负?,你?huì)印象很深的,記得很牢固。這樣下去,很快你就熟悉AVR單片機(jī)了。
程序練習(xí)的差不多的時(shí)候,你就開(kāi)始動(dòng)手做硬件了,查找相關(guān)資料,自己動(dòng)手做電路,幾個(gè)月下來(lái),你就成為高手了。再簡(jiǎn)單說(shuō)一下C語(yǔ)言和匯編語(yǔ)言。單片機(jī)編程用C語(yǔ)言或匯編語(yǔ)言都可以,但是我建議用C語(yǔ)言比較好,如果原來(lái)有C語(yǔ)言的基礎(chǔ)那學(xué)起來(lái)會(huì)更好,如果沒(méi)有,也可以邊學(xué)單片機(jī)邊學(xué)C語(yǔ)言,C語(yǔ)言也挺簡(jiǎn)單,只是一門(mén)工具而已,我勸你最好學(xué)會(huì),將來(lái)肯定用得著,要不你以后也得學(xué),你一點(diǎn)匯編都不會(huì)根本無(wú)所謂,但你一點(diǎn)C語(yǔ)言都不會(huì)那你將來(lái)會(huì)吃苦頭。匯編寫(xiě)程序代碼效率高,在時(shí)序要求嚴(yán)格的場(chǎng)合下用的多,但相對(duì)開(kāi)發(fā)難度較大,而且很麻煩,尤其是遇到算法稍微復(fù)雜點(diǎn)的問(wèn)題時(shí),用匯編寫(xiě)起代碼來(lái)很容易把自己搞的一塌糊涂。AVR單片機(jī)的主頻可以高達(dá)20MHz,頂200多MHz的51單片機(jī),這樣高頻率的時(shí)鐘,我們采用C語(yǔ)言來(lái)編寫(xiě)代碼就沒(méi)問(wèn)題了。單片機(jī)的程序存儲(chǔ)器(ROM、FLASH)容量也在不斷的提高,足夠裝得下你用C語(yǔ)言寫(xiě)的任何代碼,C語(yǔ)言的資料豐富、移植性非常好,只需要稍微修改就可以移植,所以我勸大家用C語(yǔ)言。
總得來(lái)說(shuō),只要你有信心,做事能堅(jiān)持到底,有不成功不罷休的精神,不管你學(xué)習(xí)沒(méi)學(xué)習(xí)過(guò)單片機(jī),學(xué)好AVR單片機(jī)就是件非常容易的事。
評(píng)論