第1章AVR單片機概述_第1頁
第1章AVR單片機概述_第2頁
第1章AVR單片機概述_第3頁
第1章AVR單片機概述_第4頁
已閱讀5頁,還剩14頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、第1章 AVR單片機概述第1章 AVR單片機概述AVR單片機是Atmel公司于20世紀90年代中后期開發(fā)出的一種8位單片機。這種單片機采用RISC內(nèi)核,具有使用靈活、高性能、低功耗等特點。此外,在某些情況下,AVR處理器甚至可以獨自成為一種片上系統(tǒng),完成極其復雜的功能。目前,該型號單片機已經(jīng)展示出極其強大的生命力,在國防、工業(yè)、農(nóng)業(yè)、企業(yè)管理、交通運輸、日常生活等各個領(lǐng)域得到了廣泛應(yīng)用。本章主要介紹AVR單片機的發(fā)展歷史及其主要應(yīng)用,圍繞ATmega128(L)單片機,分析其結(jié)構(gòu)、主要特點、性能封裝和引腳定義。1.1 AVR與51單片機單片機嵌入式系統(tǒng)的硬件基本構(gòu)成分為兩大部分:單片微控制器芯

2、片和外圍的接口電路。其中,單片微控制器是構(gòu)成單片機嵌入式系統(tǒng)的核心。為了強調(diào)其控制屬性,也可以把單片機稱為微控制器MCU。在國際上,“微控制器”的叫法似乎更通用一些,而我國比較習慣使用“單片機”這一名稱。單片機因?qū)⒂嬎銠C的主要組成部分集成在一個芯片上而得名,具體地說就是把中央處理單元CPU、隨機存儲器RAM、只讀存儲器ROM、中斷系統(tǒng)、定時器/計數(shù)器以及I/O接口電路等主要微型機部件集成在一塊芯片上。因此,一片芯片構(gòu)成了一個基本的微型計算機系統(tǒng)。由于單片機芯片的微小體積,極低的成本和面向控制的設(shè)計,使得它作為智能控制的核心器件被廣泛地應(yīng)用于嵌入到工業(yè)控制、智能儀器儀表、家用電器、電子通信產(chǎn)品等

3、各個領(lǐng)域中的電子設(shè)備和電子產(chǎn)品中??梢哉f由單片機為核心構(gòu)成的單片機嵌入式系統(tǒng)已成為現(xiàn)代電子系統(tǒng)中最重要的組成部分。早期的單片機都是8位或4位的,其中最成功的是Intel的8031,因為其簡單可靠而性能不錯獲得了很大的好評。此后,在8031上發(fā)展出了MCS-51系列單片機系統(tǒng)?;谶@一系統(tǒng)的單片機系統(tǒng)直到現(xiàn)在還在廣泛使用。隨著工業(yè)控制領(lǐng)域要求的提高,開始出現(xiàn)了16位單片機,但因為性價比不理想并未得到很廣泛的應(yīng)用。20世紀90年代后隨著消費電子產(chǎn)品的大發(fā)展,單片機技術(shù)得到了巨大的提高。隨著Intel i960系列特別是后來的ARM系列的廣泛應(yīng)用,32位單片機迅速取代16位單片機的高端地位,并且進入

4、主流市場。而傳統(tǒng)的8位單片機的性能也得到了飛速提高,因此,8位單片機將在未來很長時間里繼續(xù)發(fā)展。目前,高校單片機教學中大都以MCS-51為首選機型進行講解,MCS-51單片機作為目前最具代表性的主流機型。然而,隨著單片機的應(yīng)用進入SOC時代,其不足和缺陷也顯而易見。這些缺陷和不足表現(xiàn)在以下幾個方面:(1)片上資源不夠豐富。(2)系統(tǒng)開發(fā)調(diào)試不足。² 連接問題:設(shè)計系統(tǒng)的PCB板時要考慮在線仿真器與其的連接,否則無法進行總線調(diào)試。² 時序限制:指目標系統(tǒng)在設(shè)計時要求在處理器、目標內(nèi)存或目標系統(tǒng)中的其他存儲器映射FO設(shè)備之間有非常陡的時序邊緣,使用在線仿真器就可能會產(chǎn)生問題。&

5、#178; 在線調(diào)試時工作頻率受限:在仿真調(diào)試中的工作頻率不高于20MHz。(3)功耗問題的限制。MCS-51是5V供電的,功耗較大,難以滿足許多系統(tǒng)低功耗的要求。AVR單片機是美國Atmel公司設(shè)計的,AVR單片機對原51單片機內(nèi)核進行了較大改造,采用精簡指令集RISC(Reduced Instruction Set CPU)的AVR結(jié)構(gòu),廢除了原51單片機中的機器周期,由原來12個時鐘執(zhí)行一條指令改進為一個時鐘執(zhí)行一條單周期指令,大多數(shù)指令執(zhí)行所需的時鐘周期數(shù)與指令的字節(jié)數(shù)相同,使得AVR單片機的運行速度大大 提高。AVR單片機的設(shè)計者除了改造51內(nèi)核外,還將Flash、E2PROM、A/

6、D、RTC、Watchdog、定時器、I2C、SPI、PWM和片內(nèi)振蕩器等集合為一體,可以真正做到單片。AVR單片機兼容51指令集,能夠沿用過去開發(fā)的51應(yīng)用程序,使得一直用51單片機教學的高校和從事51單片機開發(fā)應(yīng)用者可以繼往開來。AVR技術(shù)創(chuàng)新主要體現(xiàn)在以下幾個方面:² 高性能,采用精簡指令集CPU(RISC)和哈佛(Harvard)結(jié)構(gòu)的流水線技術(shù),擁有32個通用工作寄存器。² 片內(nèi)集成了非易失性程序和數(shù)據(jù)存儲器以及工作存儲器。² 豐富的外設(shè),如I2C、SPI、E2PROM、RTC、看門狗定時器、A/D轉(zhuǎn)換器、PWM和片內(nèi)振蕩器等。² 寬工作電壓:

7、1.86V之間。² 低功耗,具有6種休眠模式,能夠從低功耗模式迅速喚醒。² 編譯好的目標文件可通過在線編程(ISP)直接寫入程序存儲器,實現(xiàn)芯片在系統(tǒng)編程調(diào)試,無須購買昂貴的仿真器和編程器,從而節(jié)省了系統(tǒng)開發(fā)成本。² 輸入/輸出口資源豐富,設(shè)計靈活,驅(qū)動力強。² 具有多復位源、多中斷源方式。² 串口通信不占用定時器,采用獨特的波特率發(fā)生器。² 保密性強,F(xiàn)lash程序存儲器具有保密鎖死功能。由于AVR單片機具有上述這些優(yōu)點,給用戶帶來了前所未有的好處。越來越多的設(shè)計人員把目光轉(zhuǎn)向AVR單片機,把AVR單片機作為8位單片機的最佳選擇,從

8、而使AVR單片機進入大批量的應(yīng)用領(lǐng)域。ATmega系列單片機屬于AVR中的高檔產(chǎn)品,它具有AVR單片機所具有的特點,并在此基礎(chǔ)上增加了更多的接口功能,提供更充足的程序和數(shù)據(jù)存儲器,而且在省電性能、穩(wěn)定性、抗干擾性以及靈活性方面考慮得更加周全和完善。本書采用ATmega128單片機,它屬于ATmega系列單片機的一個子集(ATmega32/64/128),指令系統(tǒng)完全兼容,所以學會了ATmega128的應(yīng)用,掌握其他的ATmega系列單片機就會輕車熟路。隨著單片機技術(shù)的發(fā)展,ATmega系列單片機已成為MCS-51的升級替代產(chǎn)品,必然會成為經(jīng)典單片機教學的方向。1.2 AVR單片機及其發(fā)展Atm

9、el公司把8051內(nèi)核與其擅長的Flash存儲器技術(shù)相結(jié)合,是國際上最早推出片內(nèi)集成可重復擦寫1000次以上Flash程序存儲器、采用低功耗CMOS工藝的8051兼容單片機的生產(chǎn)商之一。8051結(jié)構(gòu)的單片機采用復雜指令系統(tǒng)CISC(Complex Instruction Set Computer)體系。由于CISC結(jié)構(gòu)存在指令數(shù)多,CPU利用效率低,執(zhí)行速度慢等缺陷,已不能滿足和適應(yīng)設(shè)計中高檔電子產(chǎn)品和嵌入式系統(tǒng)應(yīng)用的需要。Atmel公司發(fā)揮其Flash存儲器技術(shù)的特長,于1997年研發(fā)和推出了全新配置采用精簡指令集RISC(Reduced Instruction Set CPU)結(jié)構(gòu)的新型單

10、片機,簡稱AVR單片機。1.2.1 AVR單片機簡介AVR單片機是1997年由Atmel公司挪威設(shè)計中心利用Atmel公司的Flash新技術(shù)研發(fā)出的RISC精簡指令集的高速8位單片機。其中,A與V分別代表兩位充滿工作激情與靈感的挪威年輕研發(fā)者姓名的第一個字母,R代表該芯片為RISC架構(gòu),因此,該系列單片機簡稱AVR。 Atmel公司的AVR單片機有3個系列的產(chǎn)品。為滿足不同的需求和應(yīng)用,Atmel公司對AVR單片機的內(nèi)部資源進行了相應(yīng)的擴展和刪減,推出了tinyAVR、low power AVR和megaAVR,分別對應(yīng)低、中、高3個不同檔次數(shù)十種型號的產(chǎn)品,如表1-1所示。表1-1 AVR單

11、片機分類8位AVR單片機RISC結(jié)構(gòu)存儲器配備(Bytes)系列封裝FlashSRAME2PROMtinyAVR832pin12Kup to 128up to 128low power AVR844pin18Kup to 1Kup to 512megaAVR2864pin8128Kup to 4Kup to 4K3個系列的所有型號單片機,其內(nèi)核都是相同的AVR內(nèi)核,它們的指令系統(tǒng)兼容。只是在內(nèi)部資源的配備(存儲器容量的大小等)以及片內(nèi)集成的外圍接口的數(shù)量和功能上有所不同。不同型號的AVR單片機也不一樣,引腳數(shù)從8到64腳,價格從幾元到幾十元,可以滿足不同場合、不同應(yīng)用的需求,用戶可以根據(jù)需要選

12、擇。這3個系列單片機的選型表讀者可從網(wǎng)上下載。自2002年以來,Atmel公司對AVR單片機產(chǎn)品線進行了調(diào)整,逐步停止了性能重疊的中檔low power AVR單片機中AT90s系列的生產(chǎn),而用性能更加優(yōu)越的mega系列代替。例如,停止AT90S4414、AT90S8515等芯片的生產(chǎn),用ATmega8515替代AT90S8515,用ATmega8535替代AT90S8535,用ATmega8替代AT90S4433等。由于mega系列單片機的性能更加完美,使用更加方便,功能更加強大,因此,Atmel公司今后將以mega系列作為AVR 單片機的主流產(chǎn)品,逐步減少和停止中檔AVR單片機(AT90S

13、XXXX)的生產(chǎn)。目前tinyAVR和mega系列的單片機已成為AVR的主流。tinyAVR系列的AVR內(nèi)部的資源相對少一些,引腳也少。適合應(yīng)用在家用電器、簡單的控制方面的應(yīng)用,如空調(diào)、冰箱、微波爐、煙霧報警器等。mega系列單片機的性能不僅優(yōu)越,同時也有非常好的性能價格比。引腳數(shù)最少(28個引腳)的ATmega8,在我國國內(nèi)市場上的價格不超過15元人民幣,卻有1K的SRAM、8KB的Flash、512個字節(jié)的E2PROM,兩個8位和一個16位共3個超強功能的定時器/計數(shù)器,以及USART、SPI、8路10位ADC、WDT、RTC、ISP、IAP、TWI(I2C)、片內(nèi)高精度RC振蕩器等多種功

14、能的接口和特性。ATmega128是目前常用的AVR單片機中配置全、功能強的一款。在片內(nèi)集成了4KB的RAM、128KB的Flash、4KB的E2PROM,支持64KB空間的外部并行擴展,兩個8位和兩個16位共4個超強功能的定時器/計數(shù)器,以及2路USART、SPI、多路10位ADC、WDT、RTC、ISP、IAP、TWI(I2C)、片內(nèi)高精度RC振蕩器等多種功能的接口和特性,適合在中高檔電子產(chǎn)品中應(yīng)用。1.2.2 AVR單片機的特點自從Atmel公司推出AVR單片機以來,產(chǎn)品受到越來越多單片機開發(fā)者的關(guān)注,主要因為AVR單片機具有以下特點:² 可多次擦寫。AVR程序存儲器為可擦寫1

15、000次的Flash構(gòu)成,并具有可擦寫10000次以上的E2PROM,因此可低價快速完成產(chǎn)品的商品化,可多次更改程序而不必浪費單片機或電路板,大大提高了產(chǎn)品的質(zhì)量和競爭力。² 執(zhí)行周期短。作為高速單片機,AVR處理器可以達到一個時鐘周期執(zhí)行一條指令,絕大部分指令都為單周期指令。而PIC單片機要4個時鐘周期執(zhí)行一條指令,MSC-51執(zhí)行一條指令要12個時鐘周期。此外,AVR處理器支持多種外部時鐘源,高端AVR處理器最高可達到16MHz。² 高度保密。可多次燒寫的Flash且具有多重密碼保護鎖定(LOCK)功能,因此可低價快速完成產(chǎn)品商品化,且可多次更改程序(產(chǎn)品升級),方便了

16、系統(tǒng)調(diào)試,而且不必浪費IC或電路板,大大提高了產(chǎn)品質(zhì)量及競爭力。² I/O口功能強、驅(qū)動能力大。AVR器件引腳從8腳到64腳再到100腳,還有各種不同封裝供選擇。詳細的選型信息可以參考相關(guān)網(wǎng)站,AVR單片機的輸入/輸出口是真正的輸入/輸出口,能正確反映I/O口輸入/輸出的真實情況。AVR單片機的I/O口有輸入/輸出、三態(tài)高阻輸入,也可設(shè)定內(nèi)部上拉電阻作輸入端的功能,以適應(yīng)各種應(yīng)用的需要(多功能I/O口)。在工業(yè)級產(chǎn)品中,支持大電流(灌電流)設(shè)置,通常為1040mA,從而可直接驅(qū)動可控硅SSR或繼電器,節(jié)省了外圍驅(qū)動器件??撮T狗定時器(WDT)安全保護,可防止程序走飛,提高產(chǎn)品的抗干擾

17、能力。 ² 超功能精簡指令。具有32個通用工作寄存器(相當于8051中的32個累加器),克服了單一累加器數(shù)據(jù)處理造成的瓶頸現(xiàn)象。片內(nèi)含有128-4K字節(jié)SRAM,可靈活使用指令運算,適合使用功能很強的C語言編程,易學、易寫、易移植。² 寫入方式多樣。程序?qū)懭肫骷r,可以使用并行方式寫入(用編程器寫入),也可使用串行在線下載(ISP)、在應(yīng)用下載(IAP)方法或JTAG口下載寫入,不必將單片機芯片從系統(tǒng)板上拆下拿到萬用編程器上燒錄,而可直接在電路板上進行程序的修改、燒錄等操作,方便產(chǎn)品升級,尤其是對于使用SMD表貼封裝器件,更利于產(chǎn)品微型化。 ² I/O口功能強大。

18、通用數(shù)字I/O口的輸入/輸出特性與PIC的HI/LOW輸出及三態(tài)高阻抗HI-Z輸入類同,同時可設(shè)定類同與8051結(jié)構(gòu)內(nèi)部有上拉電阻的輸入端功能,便于作為各種應(yīng)用特性所需(多功能I/O口),AVR的I/O口是真正的I/O口,能正確反映I/O口的輸入/輸出的真實情況。單片機內(nèi)集成有模擬比較器,可組成廉價的A/D轉(zhuǎn)換器。² 中斷入口多。像8051一樣,有多個固定中斷向量入口地址,可快速響應(yīng)中斷,而不是像PIC一樣所有中斷都在同一向量地址,需要以程序判別后才可響應(yīng),這會浪費且失去控制時機的最佳機會。² 復位延時。同PIC一樣,帶有可設(shè)置的啟動復位延時。AVR單片機內(nèi)部有電源開關(guān)啟動

19、計數(shù)器,當系統(tǒng)RESET復位上電后,利用內(nèi)部的RC看門狗定時器,可延遲MCU開始運行執(zhí)行程序的時間。這種延時啟動的特性,可使MCU在系統(tǒng)電源、外部電路達到穩(wěn)定后再正式開始執(zhí)行程序,因此提高了系統(tǒng)工作的可靠性,同時也可節(jié)省外加的復位延時電路。² 低功耗。具有多種不同方式的休眠省電功能和低功耗的工作方式。² 時鐘多樣。許多AVR單片機具有內(nèi)部的RC振蕩器,提供1/2/4/8MHz的工作時鐘,使該類單片機無須外加時鐘電路元器件即可工作,非常簡單和方便。² PWM功能多。帶預(yù)分頻器的8位和16位計數(shù)器/定時器(C/T),除了實現(xiàn)普通的定時和計數(shù)功能外,還具有輸入捕獲、產(chǎn)生

20、PWM輸出等更多的功能。² 通信性能優(yōu)良。具有性能優(yōu)良的串行同/異步通信USART口,不占用定時器,可實現(xiàn)高速同/異步通信。² 擴展范圍大。mega8515及mega128等芯片具有可并行擴展的外部接口,擴展能力達64KB。² 電壓范圍寬。工作電壓范圍寬2.76.0V,具有系統(tǒng)電源低電壓檢測功能,電源抗干擾性能強。² A/D通道多。有多通道的10位A/D及實時時鐘RTC。許多AVR芯片內(nèi)部集成了8路10位A/D接口,如mega8、mega16、mega8535等。1.2.3 AVR單片機的分類AVR單片機可以廣泛應(yīng)用于工業(yè)實時控制、儀器儀表、通信、數(shù)據(jù)檢

21、測和家用電器等各個領(lǐng)域。從AVR單片機的應(yīng)用場合來看,AVR單片機大致可以分為以下幾類:² AUTOMOTLVE AVR。² AVR Z-LINK。² CAN AVR。² LCD AVR。² LIGHTING AVR。² megaAVR。² SMAT BATTERYAVR。² tinyAVR。² USB AVR。1.2.4 AVR單片機應(yīng)用領(lǐng)域AVR單片機的應(yīng)用領(lǐng)域體現(xiàn)在以下幾個方面。1工業(yè)控制基于嵌入式芯片的工業(yè)自動化設(shè)備具有很大的發(fā)展空間,目前已經(jīng)有大量的8、16、32位嵌入式微控制器應(yīng)用在工業(yè)過程控

22、制、數(shù)控機床、電力系統(tǒng)、電網(wǎng)安全、電網(wǎng)設(shè)備監(jiān)測、石油化工系統(tǒng)等領(lǐng)域。就傳統(tǒng)的工業(yè)控制產(chǎn)品而言,低端型往往采用8位單片機,但隨著技術(shù)的發(fā)展,32位、64位的微處理器逐漸成為工業(yè)控制設(shè)備的核心,在未來幾年內(nèi)必將獲得更大的發(fā)展。 2交通管理控制在車輛導航、流量控制、信息監(jiān)測與汽車服務(wù)方面,嵌入式系統(tǒng)技術(shù)已經(jīng)獲得了廣泛的應(yīng)用,內(nèi)嵌GPS模塊、GSM模塊的移動定位終端已經(jīng)在各種運輸行業(yè)獲得了成功的使用。目前GPS設(shè)備已經(jīng)由原來的尖端產(chǎn)品而轉(zhuǎn)為進入普通百姓的家庭常用工具,只需要幾千元,就可以隨時隨地找到用戶所在的位置。如圖1-1所示即為GPS手持機。3信息家電這將成為嵌入式系統(tǒng)最大的應(yīng)用領(lǐng)域,冰箱、空調(diào)等

23、的網(wǎng)絡(luò)化、智能化將引領(lǐng)人們的生活步入一個嶄新的空間。即使不在家里,也可以通過電話線、網(wǎng)絡(luò)對這些電器進行遠程控制。在這些設(shè)備中,嵌入式系統(tǒng)將大有用武之地。如圖1-2所示的家電,它是信息家電的一種家庭網(wǎng)絡(luò)視頻電話。 圖1-1 GPS手持機 圖1-2 家庭網(wǎng)絡(luò)視頻電話4家庭智能管理系統(tǒng)水、電、煤氣表的遠程自動抄表,安全防火、防盜系統(tǒng),其中嵌入的專用控制芯片將代替?zhèn)鹘y(tǒng)的人工檢查,并實現(xiàn)更高、更準確和更安全的性能。目前,在服務(wù)領(lǐng)域中,一些手持設(shè)備已經(jīng)體現(xiàn)出了嵌入式系統(tǒng)的優(yōu)勢。 5POS網(wǎng)絡(luò)可用于公共交通無接觸智能卡(Contactless Smart Card,CSC)發(fā)行系統(tǒng)、公共電話卡發(fā)行系統(tǒng)、自動

24、售貨機等,如圖1-3所示即為智能售貨機。各種智能ATM 終端將全面走入人們的生活,到時手持一卡就可以行遍天下。圖1-3 智能售貨機6環(huán)境監(jiān)測環(huán)境監(jiān)測包括水文資料實時監(jiān)測、防洪體系及水土質(zhì)量監(jiān)測、堤壩安全、地震監(jiān)測網(wǎng)、實時氣象信息網(wǎng)、水源和空氣污染監(jiān)測等。在很多環(huán)境惡劣、地況復雜的地區(qū),嵌入式系統(tǒng)將實現(xiàn)對環(huán)境的無人監(jiān)測。7機器人嵌入式芯片的發(fā)展將使機器人在微型化、高智能方面優(yōu)勢更加明顯,同時會大幅度降低機器人的價格,使其在工業(yè)領(lǐng)域和服務(wù)領(lǐng)域獲得更廣泛的應(yīng)用。除了以上這些應(yīng)用領(lǐng)域,AVR單片機還有其他方面的應(yīng)用,尤其是在控制方面的應(yīng)用。所以,開發(fā)和探討AVR單片機嵌入式系統(tǒng)有著十分重要的意義。1.

25、3 AVR單片機開發(fā)產(chǎn)品的優(yōu)勢Atmel公司把8051內(nèi)核與其擅長的Flash 存儲器技術(shù)相結(jié)合,是國際上最早推出片內(nèi)集成可重復擦寫1000次以上Flash程序存儲器、采用低功耗CMOS工藝的8051兼容單片機的生產(chǎn)商之一。市場上家喻戶曉的AT89C51、AT89C52、AT89C1051、AT89C2051就是Atmel公司生產(chǎn)的基于8051內(nèi)核系列單片機中的典型產(chǎn)品(現(xiàn)在已升級換代為AT89SXX系列,采用ISP在線編程技術(shù))。該系列單片機一直在我國的單片機市場上占有相當大的份額。8051結(jié)構(gòu)的單片機采用復雜指令系統(tǒng)CISC(Complex Instruction Set Computer

26、)體系。由于CISC結(jié)構(gòu)存在指令數(shù)多,CPU利用效率低,執(zhí)行速度慢等缺陷,已不能滿足和適應(yīng)設(shè)計中高檔電子產(chǎn)品和嵌入式系統(tǒng)應(yīng)用的需要。Atmel公司發(fā)揮其Flash存儲器技術(shù)的特長,于1997年研發(fā)和推出了全新配置采用精簡指令集RISC(Reduced Instruction Set CPU)結(jié)構(gòu)的新型單片機,簡稱AVR單片機。精簡指令集RISC結(jié)構(gòu)是20世紀90年代開發(fā)出來的一種綜合了半導體集成技術(shù)和提高軟件性能的新結(jié)構(gòu),是為了提高CPU運行的速度而設(shè)計的芯片體系。它的關(guān)鍵技術(shù)在于采用流水線操作(Pipelining)和等長指令體系結(jié)構(gòu),使一條指令可以在一個單獨操作中完成,從而實現(xiàn)在一個時鐘周

27、期里完成一條或多條指令。同時,RISC體系還采用了通用快速寄存器組的結(jié)構(gòu),大量使用寄存器之間的操作,簡化了CPU中處理器、控制器和其他功能單元的設(shè)計。因此,RISC的特點就是通過簡化CPU的指令功能,使指令的平均執(zhí)行時間減少,從而提高CPU的性能和速度。在使用相同的晶片技術(shù)和相同的運行時鐘下,RISC系統(tǒng)的運行速度是CISC的24倍。由于RISC體系所具有的優(yōu)勢,使得它在高端系統(tǒng)得到了廣泛的應(yīng)用。例如,ARM以及大多數(shù)32位的處理器都采用RISC體系結(jié)構(gòu)。Atmel公司的AVR是8位單片機中第一個真正的RISC結(jié)構(gòu)的單片機,它采用了大型快速存取寄存器組、快速的單周期指令系統(tǒng)以及單級流水線等先進

28、技術(shù),使得AVR 單片機具有高達1MIPS/MHz的高速運行處理能力。AVR采用流水線技術(shù),在前一條指令執(zhí)行的時候,就取出現(xiàn)行的指令,然后以一個周期執(zhí)行指令,大大提高了CPU的運行速度。另外一點,傳統(tǒng)的基于累加器的結(jié)構(gòu)單片機(如8051),需要大量的程序代碼來實現(xiàn)在累加器和存儲器之間的數(shù)據(jù)傳送。而在AVR 單片機中,由于采用32個通用工作寄存器構(gòu)成快速存取寄存器組,用32個通用工作寄存器代替了累加器,從而避免了在傳統(tǒng)結(jié)構(gòu)中累加器和存儲器之間數(shù)據(jù)傳送造成的瓶頸現(xiàn)象,進一步提高了指令的運行效率和速度。隨著電子產(chǎn)品更新?lián)Q代的周期縮短以及不斷向高端發(fā)展,為了加快產(chǎn)品進入市場的時間和簡化系統(tǒng)的設(shè)計、開發(fā)

29、、維護和支持,對于以單片機為核心所組成的高端嵌入式系統(tǒng)來說,用高級語言編程已成為一種標準設(shè)計方法。AVR 單片機采用RISC結(jié)構(gòu),其目的就在于能夠更好地采用高級語言(例如C語言、Basic語言)來編寫嵌入式系統(tǒng)的系統(tǒng)程序,從而能高效地開發(fā)出目標代碼。AVR單片機采用低功率、非揮發(fā)的CMOS工藝制造,內(nèi)部分別集成Flash、E2PROM和SRAM 3種不同性能和用途的存儲器。除了可以通過使用一般的編程器(并行高壓方式)對AVR單片機的Flash程序存儲器和E2PROM數(shù)據(jù)存儲器進行編程外,大多數(shù)的AVR單片機還具有ISP在線編程的特點以及IAP在應(yīng)用編程的特點。這些優(yōu)點為使用AVR單片機開發(fā)設(shè)計

30、和生產(chǎn)產(chǎn)品提供了極大的方便。在產(chǎn)品的設(shè)計生產(chǎn)中,可以“先裝配后編程”,從而縮短了研發(fā)周期、工藝流程,并且還可以節(jié)約購買開發(fā)仿真編程器的費用。同樣,對于學習和使用AVR單片機的用戶來說,也不必購買昂貴的開發(fā)仿真硬件設(shè)備,只需要具備一套好的AVR開發(fā)軟件平臺,就可以從事AVR單片機系統(tǒng)的學習、設(shè)計和開發(fā)工作了。1.4 ATmega128(L)單片機ATmega128(L)單片機是內(nèi)置128K字節(jié)的系統(tǒng)內(nèi)可編程Flash的在線可編程8位微控制器,本書所有內(nèi)容也都是圍繞ATmega128(L)單片機來展開學習的,讀者掌握ATmega128(L)單片機的開發(fā)應(yīng)用后,就能很容易掌握其他AVR系列的單片機了

31、。1.4.1 ATmega128(L)的結(jié)構(gòu)和特點ATmega128(L)是基于AVR RISC結(jié)構(gòu)的8位低功耗CMOS微處理器。由于其先進的指令集以及單周期指令執(zhí)行時間,ATmega128(L)的數(shù)據(jù)吞吐率高達1MIPS/MHz,從而可以緩減系統(tǒng)在功耗和處理速度之間的矛盾,其結(jié)構(gòu)框圖如圖1-4所示。圖1-4 ATmega128結(jié)構(gòu)框圖ATmega128(L)的特點如下。(1)CPU內(nèi)核具有豐富的指令集和32個通用工作寄存器。所有的寄存器都直接與算術(shù)邏輯單位(ALU)相連接,使得一條指令可以在一個時鐘周期內(nèi)同時訪問兩個獨立的寄存器。這種結(jié)構(gòu)大大提高了代碼效率,并且具有比普通的復雜指令集微處理器

32、高10倍的數(shù)據(jù)吞吐率。128KB的系統(tǒng)內(nèi)可編程Flash(具有在寫的過程中還可以讀的功能,即RWW)、4KB的E2PROM、4KB的SRAM、53個通用I/O口線,32個通用工作寄存器、實時時鐘RTC、4個靈活的具有比較模式和PWM功能的定時器/計數(shù)器(T/C)、兩個USART、面向字節(jié)的兩線接口TWI、8通道10位ADC(具有可選的可編程增益)、具有片內(nèi)振蕩器的可編程看門狗定時器、SPI串行接口和與IEEE1149.1規(guī)范兼容的JTAG測試接口(此接口同時還可以用于片上調(diào)試)。(2)6種可以通過軟件選擇的省電模式??臻e模式時CPU停止工作,而SRAM、T/C、SPI接口以及中斷系統(tǒng)繼續(xù)工作;

33、掉電模式時晶體振蕩器停止振蕩,所有功能除了中斷和硬件復位之外都停止工作,寄存器的內(nèi)容則一直保持;省電模式時異步定時器繼續(xù)運行,以允許用戶維持時間基準,期間的其他部分則處于睡眠狀態(tài);ADC噪聲抑制模式時CPU和所有的I/O模塊停止運行,而異步定時器和ADC繼續(xù)工作,以減少ADC轉(zhuǎn)換時的開關(guān)噪聲;Standby模式時振蕩器工作而其他部分睡眠,使得器件只消耗極少的電流,同時具有快速啟動能力;擴展Standby模式則允許振蕩器和異步定時器繼續(xù)工作。(3)器件是以Atmel的高密度非易失性內(nèi)存技術(shù)生產(chǎn)的,片內(nèi)ISP Flash可以通過SPI接口、通用編程器,或引導程序多次編程。引導程序可以使用任何接口來

34、下載應(yīng)用程序到應(yīng)用Flash存儲器。在更新應(yīng)用Flash存儲器時引導Flash區(qū)的程序繼續(xù)運行,實現(xiàn)RWW操作。通過將8位RISC CPU與系統(tǒng)內(nèi)可編程的Flash集成在一個芯片內(nèi),ATmega128(L)為許多嵌入式控制應(yīng)用提供了靈活而低成本的方案。1.4.2 ATmega128(L)的主要性能ATmega128(L)是Atmel公司8位系列單片機的最高配置的一款單片機,目前在市場上得到了廣泛的應(yīng)用,其性能主要體現(xiàn)在如下幾個方面:(1)高性能、低功耗的AVR8位微處理器及先進的RISC結(jié)構(gòu)² 133條指令大多數(shù)可以在一個時鐘周期內(nèi)完成。² 32×8通用工作寄存器

35、+外設(shè)控制寄存器。² 全靜態(tài)工作。² 工作于16MHz時性能高達16MIPS。² 只需兩個時鐘周期的硬件乘法器。(2)非易失性的程序和數(shù)據(jù)存儲器² 128KB系統(tǒng)內(nèi)可編程Flash,壽命為100000次寫/擦除周期。² 4KB的內(nèi)部SRAM。² 4K字節(jié)的E2PROM,壽命為100000次寫/擦除周期。² 多達64KB的優(yōu)化的外部存儲器空間。² 可以對鎖定位進行編程以實現(xiàn)軟件加密。² 可以通過SPI接口實現(xiàn)系統(tǒng)內(nèi)編程。(3)JTAG接口(與IEEE1149.1標準兼容)的特點² 遵循JTAG標準

36、的邊界掃描功能。² 支持擴展的片內(nèi)調(diào)試。² 通過JTAG接口實現(xiàn)對Flash、E2PROM、熔絲位和鎖定位的編程。(4)外設(shè)特點² 兩個具有獨立的預(yù)分頻器和比較器功能的8位定時器/計數(shù)器。² 具有獨立預(yù)分頻器、比較功能和捕捉功能的16位定時器/計數(shù)器。² 具有獨立預(yù)分頻器的實時時鐘計數(shù)器。² 兩路8位PWM。² 6路分辨率可編程(216位)的PWM。² 輸出比較調(diào)制器。² 8路10位ADC:8個單端通道;7個差分通道;兩個具有可編程增益(1×,10×,或200×)的差分通道。

37、² 面向字節(jié)的兩線接口。² 兩個可編程的串行USART。² 可工作于主機/從機模式的SPI串行接口。² 具有獨立片內(nèi)振蕩器的可編程看門狗定時器。² 片內(nèi)模擬比較器。(5)特殊的處理器特點² 上電復位以及可編程的掉電檢測。² 片內(nèi)經(jīng)過標定的RC振蕩器。² 片內(nèi)/片外中斷源。² 6種睡眠模式:空閑模式、ADC噪音抑制模式、省電模式、掉電模式、Standby模式以及擴展的Standby模式。² 可以通過軟件進行選擇的時鐘頻率。² 通過熔絲位可以選擇ATmega103兼容模式。² 全

38、局上拉禁止功能。(6)I/O和封裝特點² 53個可編程I/O口線。² 64引腳TQFP與64引腳MLF封裝。² 工作電壓和速度等級。² ATmega128L:2.75.5V和08MHz。² ATmega128:4.55.5V和016MHz。1.4.3 ATmega128(L)的封裝與引腳ATmega128(L)具有兩種封裝形式,分別為TQFP(64引腳)和MLF(64引腳),外形如圖1-5所示。 圖1-5 ATmega128封裝形式ATmega128 TQFP封裝的主要型號有:ATmega128-16AU、ATmega128-16AI。下面對A

39、Tmega128的型號標識進行解析:² 型號緊跟的字母,表示電壓工作范圍。帶“L”:2.75.5V;若默認,不帶“L”:4.55.5V。例如ATmega128-16AU,不帶“L”表示工作電壓為4.55.5V。² 后綴的數(shù)字部分,表示支持的最高系統(tǒng)時鐘。例如ATmega128-16AU,“16”表示可支持最高為16MHz的系統(tǒng)時鐘。² 后綴第一(第二)個字母,表示封裝。“P”:DIP封裝,“A”:TQFP封裝,“M”:MLF封裝。例如ATmega128-16AU,“A”表示TQFP封裝。后綴最后一個字母,表示應(yīng)用級別?!癈”:商業(yè)級,“I”:工業(yè)級(有鉛)、“U”

40、工業(yè)級(無鉛)。例如ATmega128-16AU,“U”表示無鉛工業(yè)級。ATmega128-16AI,“I”表示有鉛工業(yè)級。下面以常用的TQFP(64引腳)封裝來介紹ATmega128(L)的引腳定義,其引腳排列分布如圖1-6所示。圖1-6 TQFP封裝的ATmega128(L)的引腳排列分布² VCC數(shù)字電路的電源。² GND 地。² 端口A(PA7PA0) 為8位雙向I/O口,并具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對稱的驅(qū)動特性,可以輸出和吸收大電流,作為輸入使用時,若內(nèi)部上拉電阻使能,則端口被外部電路拉低時將輸出電流。在復位過程中,即使系統(tǒng)時鐘還未起振

41、,端口A 處于高阻狀態(tài)。不作I/O口使用時,端口A的第二功能如表1-2所示。表1-2 端口A的第二功能端口A引腳第 二 功 能PA7AD7(外部存儲器接口地址及數(shù)據(jù)位7)PA6AD6(外部存儲器接口地址及數(shù)據(jù)位6)PA5AD5(外部存儲器接口地址及數(shù)據(jù)位5)PA4AD4(外部存儲器接口地址及數(shù)據(jù)位4)PA3AD3(外部存儲器接口地址及數(shù)據(jù)位3)PA2AD2(外部存儲器接口地址及數(shù)據(jù)位2)PA1AD1(外部存儲器接口地址及數(shù)據(jù)位1)PA0AD0(外部存儲器接口地址及數(shù)據(jù)位0)² 端口B(PB0PB7)為8位雙向I/O口,并具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對稱的驅(qū)動特性,可以輸

42、出和吸收大電流,作為輸入使用時,若內(nèi)部上拉電阻使能,則端口被外部電路拉低時將輸出電流。復位發(fā)生時端口B為三態(tài)。不作I/O口使用時,端口B具有第二功能,如表1-3所示。表1-3 端口B的第二功能端口B引腳第 二 功 能PB7OC2/OC1C(T/C2的比較匹配輸出和PWM輸出,或是T/CI的比較匹配輸出和PWM輸出C)PB6OC1B(T/C1的比較匹配輸出和PWM輸出B)PB5OC1A(T/C1的比較匹配輸出和PWM輸出A)PB4OC0(T/C0的比較匹配輸出和PWM輸出)PB3MISO(SPI總線的主機輸入/從機輸出信號)PB2MOSI(SPI總線的主機輸出/從機輸入信號)PB1SCK(SPI

43、總線的串行時鐘)PB0SS(SPI從機選擇引腳)² 端口C(PC0PC7)為8位雙向I/O口,并具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對稱的驅(qū)動特性,可以輸出和吸收大電流,作為輸入使用時,若內(nèi)部上拉電阻使能,則端口被外部電路拉低時將輸出電流。復位發(fā)生時端口C為三態(tài)。不作I/O口使用時,端口C具有第二功能,如表1-4所示。表1-4 端口C的第二功能端口C引腳第 二 功 能PC7A15(外部存儲器接口地址15)PC6A14(外部存儲器接口地址14)PC5A13(外部存儲器接口地址13)PC4A12(外部存儲器接口地址12)PC3A11(外部存儲器接口地址11)PC2A10(外部存儲器

44、接口地址10)PC1A9(外部存儲器接口地址9)PC0A8(外部存儲器接口地址8)² 端口D(PD0PD7)為8位雙向I/O口,并具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對稱的驅(qū)動特性,可以輸出和吸收大電流,作為輸入使用時,若內(nèi)部上拉電阻使能,則端口被外部電路拉低時將輸出電流。復位發(fā)生時端口D為三態(tài)。不作I/O口使用時,端口D具有第二功能,如表1-5所示。表1-5 端口D的第二功能端口D引腳第 二 功 能PD7T2(T/C2外部計數(shù)脈沖輸入)PD6T1(T/C1外部計數(shù)脈沖輸入)PD5XCK1(USART1外部時鐘輸入/輸出)PD4ICP1(T/C1輸入捕捉觸發(fā)信號輸入)PD3TX

45、D1/INT3(外部中斷3的輸入,或是UART1數(shù)據(jù)發(fā)送端)PD2RXD1/INT2(外部中斷2的輸入,或是UART1數(shù)據(jù)發(fā)送端)PD1SDA/INT1(外部中斷1的輸入,或是TWI的串行數(shù)據(jù)輸入/輸出端)PD0SCL/INT0(外部中斷0的輸入,或是TWI的串行時鐘)² 端口E(PE0PE7)為8位雙向I/O口,并具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對稱的驅(qū)動特性,可以輸出和吸收大電流,作為輸入使用時,若內(nèi)部上拉電阻使能,則端口被外部電路拉低時將輸出電流。復位發(fā)生時端口E為三態(tài)。不作I/O口使用時,端口E具有第二功能,如表1-6所示。表1-6 端口E的第二功能端口E引腳第 二 功 能PE7ICP3/INT7(外部中斷7的輸入引腳,或是

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論