| 中文名 | AVR單片機(jī) | 別????名 | 高速嵌入式單片機(jī) |
|---|---|---|---|
| 特????點(diǎn) | 高可靠性、功能強(qiáng)、低功耗 | 起源時間 | 1997年 |
| 種????類 | 3 | 結(jié)????構(gòu) | 哈佛結(jié)構(gòu) |
| 應(yīng)用范圍 | 計(jì)算機(jī)設(shè)備、通訊設(shè)備、家用電器 | ||
⒈型號緊跟的字母,表示電壓工作范圍。帶“V”:1.8-5.5V;若缺省,不帶“V”:2.7-5.5V。
例:ATmega48-20AU,不帶“V”表示工作電壓為2.7-5.5V。
⒉后綴的數(shù)字部分,表示支持的最高系統(tǒng)時鐘。
例:ATmega48-20AU,“20”表示可支持最高為20MHZ的系統(tǒng)時鐘。
⒊后綴第一(第二)個字母,表示封裝。“P”:DIP封裝,“A”:TQFP封裝,“M”:MLF封裝。
例:ATmega48-20AU,“A”表示TQFP封裝。
⒋后綴最后一個字母,表示應(yīng)用級別。“C”:商業(yè)級,“I”:工業(yè)級(有鉛)、“U”工業(yè)級(無鉛)。
例:ATmega48-20AU,“U”表示無鉛工業(yè)級。ATmega48-20AI,“I”表示有鉛工業(yè)級。
USB接口以其數(shù)據(jù)傳輸快、連接簡單、易于擴(kuò)展、支持熱插拔等特點(diǎn)已成為外設(shè)與PC通信的主要方式之一。隨著嵌入式系統(tǒng)的發(fā)展,嵌入式微處理器需增加通用的USB接口,以便實(shí)現(xiàn)與PC等USB主機(jī)系統(tǒng)的通信。針對這樣的需求,這里采用PHILIPS公司的USB接口器件PDIUSBD12和Atmel公司的AVR系列單片機(jī)ATmega8設(shè)計(jì)一種通用的USB接口模塊。該模塊可方便為各種嵌入式微處理器增加USB接口,從而實(shí)現(xiàn)與USB主機(jī)系統(tǒng)的高速通信。
該系統(tǒng)模塊的控制核心是AVR高速單片機(jī)ATmega8。AVR單片機(jī)是新一代基于哈佛結(jié)構(gòu)的高速RISC微控制器,具有速度快、價格低、可靠性高,I/O口線驅(qū)動能力強(qiáng)和片內(nèi)集成外設(shè)資源豐富等特點(diǎn),其內(nèi)部集成有可進(jìn)行ISP下載編程的Flash,EEPROM、熔絲位和鎖定位。AVR單片機(jī)的ISP下載電纜制作簡單、成本低廉,還有免費(fèi)的下載軟件(例如PonyProg)支持。PDIUSBD12是一款高性價比USB接口器件,完全符合USB1.l規(guī)范,易于與各種微處理器接口。
由于AVR單片機(jī)具有高速性,可利用I/O端口線以軟件方式模擬PDIUSBD12的時序,對其讀寫。這種方式可根據(jù)不同的微處理器速度靈活控制PDIUSBD12的時序和地址,無需譯碼電路,從而簡化硬件設(shè)計(jì),降低成本。
由于ATmega8片內(nèi)集成了UART,SPI,I2C等接口,該接口模塊可利用這些接口與其他系統(tǒng)通信,使得該接口模塊成為通用的接口轉(zhuǎn)換器。
USB固件程序設(shè)計(jì)
本系統(tǒng)模塊的USB固件程序采用符合ANSI C標(biāo)準(zhǔn)的GCC編譯器設(shè)計(jì),結(jié)合分層次的模塊化結(jié)構(gòu),可移植性強(qiáng),只需稍微修改硬件接口層即可將其移植到別的硬件平臺,可重復(fù)利用代碼。USB固件程序設(shè)計(jì)是基于狀態(tài)機(jī)和標(biāo)準(zhǔn)的前后臺式程序架構(gòu)。首先編寫硬件接口層hal.c和PDIUSBD12器件的命令接口層,以供上層模塊調(diào)用。硬件接口層含有對PDIUSBD12寫指令和讀寫數(shù)據(jù)的函數(shù),以供上層模塊調(diào)用。當(dāng)CPU不同時,只需修改這些函數(shù)即可。由于CPU訪問PDIUS-BD12與普通存儲器一樣,只需根據(jù)硬件連接關(guān)系,在硬件抽象層中編寫對PDIUSBD12寫指令、寫讀數(shù)據(jù)的函數(shù),供上層調(diào)用即可。實(shí)現(xiàn)PDIUSBD12的命令接口層需調(diào)用硬件抽象層函數(shù),供上層模塊調(diào)用。再設(shè)計(jì)前后臺程序及標(biāo)準(zhǔn)設(shè)備請求程序模塊。
寫用PORTx,讀取用PINx
實(shí)驗(yàn)時,盡量不要把管腳直接接到GND/VCC,當(dāng)設(shè)定不當(dāng),IO口將會輸出/灌入 80mA(Vcc=5V)的大電流,導(dǎo)致器件損壞。
作輸入時:
1通常要使能內(nèi)部上拉電阻,懸空(高阻態(tài))將會很容易受干擾。(表面看好像是51的抗干擾能力強(qiáng),是因?yàn)?1永遠(yuǎn)有內(nèi)部電阻上拉,)
2盡量不要讓輸入懸空或模擬輸入電平接近VCC/2,將會消耗太多的電流,特別是低功耗應(yīng)用場合------CMOS電路的特點(diǎn)
3讀取軟件賦予的引腳電平時需要在賦值指令out 和讀取指令in 之間有一個時鐘周期的間隔,如nop 指令。
4功能模塊(中斷,定時器)的輸入可以是低電平觸發(fā),也可以是上升沿觸發(fā)或下降沿觸發(fā)。
5用于高阻模擬信號輸入,切記不要使能內(nèi)部上拉電阻,影響精確度。例如ADC數(shù)模轉(zhuǎn)換器輸入,模擬比較器輸入
作輸出時:
采用必要的限流措施,例如驅(qū)動LED要串入限流電阻
復(fù)位時:
復(fù)位時內(nèi)部上拉電阻將被禁用。如果應(yīng)用中(例如電機(jī)控制)需要嚴(yán)格的電平控制,請使用外接電阻固定電平
休眠時:
作輸出的,依然維持狀態(tài)不變
作輸入的,一般無效,但如果使能了第二功能(中斷使能),其輸入功能有效。例如 外部中斷的喚醒功能。
1997年,由ATMEL公司挪威設(shè)計(jì)中心的A先生與V先生利用ATMEL公司的Flash新技術(shù),共同研發(fā)出RISC精簡指令集的高速8位單片機(jī),簡稱AVR。
RISC 優(yōu)先選取使用頻率最高的簡單指令,避免復(fù)雜指令:并固定指令寬度,減少指令格式和尋址方式的種類,從而縮短指令周期,提高運(yùn)行速度。由于 AVR 采用了 RISC 的這種結(jié)構(gòu),使AVR系列單片機(jī)都具備了1MIPS/MHz(百萬條指令每秒/兆赫茲)的高速處理能力。
早期單片機(jī)主要由于工藝及設(shè)計(jì)水平不高、功耗高和抗干擾性能差等原因,所以采取穩(wěn)妥方案:即采用較高的分頻系數(shù)對時鐘分頻,使得指令周期長,執(zhí)行速度慢。以后的CMOS單片機(jī)雖然采用提高時鐘頻率和縮小分頻系數(shù)等措施,但這種狀態(tài)并未被徹底改觀(51以及51兼容)。此間雖有某些精簡指令集單片機(jī)(RISC)問世,但依然沿襲對時鐘分頻的作法。
AVR單片機(jī)的推出,徹底打破這種舊設(shè)計(jì)格局,廢除了機(jī)器周期,拋棄復(fù)雜指令計(jì)算機(jī)(CISC)追求指令完備的做法;采用精簡指令集,以字作為指令長度單位,將內(nèi)容豐富的操作數(shù)與操作碼安排在一字之中(指令集中占大多數(shù)的單周期指令都是如此),取指周期短,又可預(yù)取指令,實(shí)現(xiàn)流水作業(yè),故可高速執(zhí)行指令。當(dāng)然這種速度上的升躍,是以高可靠性為其后盾的。
AVR單片機(jī)硬件結(jié)構(gòu)采取8位機(jī)與16位機(jī)的折中策略,即采用局部寄存器存堆(32個寄存器文件)和單體高速輸入/輸出的方案(即輸入捕獲寄存器、輸出比較匹配寄存器及相應(yīng)控制邏輯)。提高了指令執(zhí)行速度(1Mips/MHz),克服了瓶頸現(xiàn)象,增強(qiáng)了功能;同時又減少了對外設(shè)管理的開銷,相對簡化了硬件結(jié)構(gòu),降低了成本。故AVR單片機(jī)在軟/硬件開銷、速度、性能和成本諸多方面取得了優(yōu)化平衡,是高性價比的單片機(jī)。
AVR單片機(jī)內(nèi)嵌高質(zhì)量的Flash程序存儲器,擦寫方便,支持ISP和IAP,便于產(chǎn)品的調(diào)試、開發(fā)、生產(chǎn)、更新。內(nèi)嵌長壽命的EEProm可長期保存關(guān)鍵數(shù)據(jù),避免斷電丟失。片內(nèi)大容量的RAM不僅能滿足一般場合的使用,同時也更有效的支持使用高級語言開發(fā)系統(tǒng)程序,并可像MCS-51單片機(jī)那樣擴(kuò)展外部RAM。
AVR單片機(jī)的I/O線全部帶可設(shè)置的上拉電阻、可單獨(dú)設(shè)定為輸入/輸出、可設(shè)定(初始)高阻輸入、驅(qū)動能力強(qiáng)(可省去功率驅(qū)動器件)等特性,使的得I/O口資源靈活、功能強(qiáng)大、可充分利用。
AVR單片機(jī)片內(nèi)具備多種獨(dú)立的時鐘分頻器,分別供URAT、I2C、SPI使用。其中與8/16位定時器配合的具有多達(dá)10位的預(yù)分頻器,可通過軟件設(shè)定分頻系數(shù)提供多種檔次的定時時間。
AVR單片機(jī)獨(dú)有的“以定時器/計(jì)數(shù)器(單)雙向計(jì)數(shù)形成三角波,再與輸出比較匹配寄存器配合,生成占空比可變、頻率可變、相位可變方波的設(shè)計(jì)方法(即脈寬調(diào)制輸出PWM)更是令人耳目一新。
增強(qiáng)性的高速同/異步串口,具有硬件產(chǎn)生校驗(yàn)碼、硬件檢測和校驗(yàn)偵錯、兩級接收緩沖、波特率自動調(diào)整定位(接收時)、屏蔽數(shù)據(jù)幀等功能,提高了通信的可靠性,方便程序編寫,更便于組成分布式網(wǎng)絡(luò)和實(shí)現(xiàn)多機(jī)通信系統(tǒng)的復(fù)雜應(yīng)用,串口功能大大超過MCS-51/96單片機(jī)的串口,加之AVR單片機(jī)高速,中斷服務(wù)時間短,故可實(shí)現(xiàn)高波特率通訊。
面向字節(jié)的高速硬件串行接口TWI、SPI。TWI與I2C接口兼容,具備ACK信號硬件發(fā)送與識別、地址識別、總線仲裁等功能,能實(shí)現(xiàn)主/從機(jī)的收/發(fā)全部4種組合的多機(jī)通信。SPI支持主/從機(jī)等4種組合的多機(jī)通信。
AVR單片機(jī)有自動上電復(fù)位電路、獨(dú)立的看門狗電路、低電壓檢測電路BOD,多個復(fù)位源(自動上下電復(fù)位、外部復(fù)位、看門狗復(fù)位、BOD復(fù)位),可設(shè)置的啟動后延時運(yùn)行程序,增強(qiáng)了嵌入式系統(tǒng)的可靠性。
AVR單片機(jī)具有多種省電休眠模式,且可寬電壓運(yùn)行(5-2.7V),抗干擾能力強(qiáng),可降低一般8位機(jī)中的軟件抗干擾設(shè)計(jì)工作量和硬件的使用量。
AVR系列單片機(jī)的選型
AVR單片機(jī)系列齊全,可適用于各種不同場合的要求。
AVR單片機(jī)有3個檔次:
低檔Tiny系列:主要有Tiny11/12/13/15/26/28等;
中檔AT90S系列:主要有AT90S1200/2313/8515/8535等;(正在淘汰或轉(zhuǎn)型到Mega中)
高檔ATmega:主要有ATmega8/16/32/64/128(存儲容量為8/16/32/64/128KB)以及ATmega8515/8535等。
AVR器件引腳從8腳到64腳,還有各種不同封裝供選擇。
高可靠性、功能強(qiáng)、高速度、低功耗和低價位,一直是衡量單片機(jī)性能的重要指標(biāo),也是單片機(jī)占領(lǐng)市場、賴以生存的必要條件。
與其它8-Bit MCU相比,AVR 8-Bit MCU最大的特點(diǎn)是:
哈佛結(jié)構(gòu),具備1MIPS / MHz的高速運(yùn)行處理能力;
超功能精簡指令集(RISC),具有32個通用工作寄存器,克服了如8051 MCU采用單一ACC進(jìn)行處理造成的瓶頸現(xiàn)象;
快速的存取寄存器組、單周期指令系統(tǒng),大大優(yōu)化了目標(biāo)代碼的大小、執(zhí)行效率,部分型號FLASH非常大,特別適用于使用高級語言進(jìn)行開發(fā);
作輸出時與PIC的HI/LOW相同,可輸出40mA(單一輸出),作輸入時可設(shè)置為三態(tài)高阻抗輸入或帶上拉電阻輸入,具備10mA-20mA灌電流的能力;
片內(nèi)集成多種頻率的RC振蕩器、上電自動復(fù)位、看門狗、啟動延時等功能,外圍電路更加簡單,系統(tǒng)更加穩(wěn)定可靠;
大部分AVR片上資源豐富:帶E2PROM,PWM,RTC,SPI,UART,TWI,ISP,AD,Analog Comparator,WDT等;
大部分AVR除了有ISP功能外,還有IAP功能,方便升級或銷毀應(yīng)用程序。
不是編程就必須修改熔絲位的,你的這個軟件里面看得到,修改熔絲位只有點(diǎn)擊熔絲位相關(guān)的四個按鈕才有效,你不點(diǎn)擊就不會了,還有,你如果擔(dān)心的話,你可以每次下程序前先讀取熔絲位,再下載程序,這樣就不會擔(dān)心不小...
沒用過這款單片機(jī),看門狗復(fù)位有可能出現(xiàn)這種情況,你試試led=1; _delay(250000); led=1; _delay(250000);讓它一直高電平或者低電平,看會不會出現(xiàn)錯誤,...
你指的“不對”是什么不對?是產(chǎn)生的脈沖頻率不對?還是脈寬不對?還是程序運(yùn)行不對?常量20與變量Z是有本質(zhì)差別的,程序運(yùn)行的效果有差別也就是正常現(xiàn)象。原因是:TH0=(65536-5*20)/256; ...
性價比:AVR大部分型號的性價比較高,性價比表現(xiàn)突出的型號有:atmega48、atmega8、atmega16、atmega169P。
供貨方面:通用型號的AVR供貨較為穩(wěn)定,非常規(guī)型號的AVR樣品及供貨仍存在問題。
市場占有率:AVR的市場占有率還是不如PIC與51,但AVR的優(yōu)點(diǎn)使得AVR的市場占有一直在擴(kuò)展,AVR的年用量也一直在上漲。
AVR已被廣泛用于:
空調(diào)控制板
打印機(jī)控制板
智能電表
智能手電筒
LED控制屏
醫(yī)療設(shè)備
GPS
AVR單片機(jī)實(shí)現(xiàn)的電力參數(shù)測量裝置
格式:pdf
大?。?span id="1gmmo6j" class="single-tag-height">1.3MB
頁數(shù): 3頁
評分: 4.4
維普資訊 http://www.cqvip.com 維普資訊 http://www.cqvip.com 維普資訊 http://www.cqvip.com
AVR單片機(jī)在LED遙控?zé)糁械膽?yīng)用
格式:pdf
大?。?span id="83yv3yi" class="single-tag-height">1.3MB
頁數(shù): 2頁
評分: 4.3
高亮度LED照明已初具規(guī)模,LED燈以其高效的電源利用率,在現(xiàn)在節(jié)能環(huán)保的主流背景下,有著巨大的市場潛力,LED燈的控制的優(yōu)越性也成了LED燈產(chǎn)品競爭力的一個部分。介紹了AVR單片機(jī)在LED照明燈中控制系統(tǒng)的實(shí)現(xiàn),經(jīng)實(shí)驗(yàn)驗(yàn)證方案可行,具有一定的應(yīng)用價值。
AVR與傳統(tǒng)類型的單片機(jī)相比,在IC芯片解密技術(shù)中除了必須能實(shí)現(xiàn)原來的一些基本的功能,其在結(jié)構(gòu)體系、功能部件、性能和可靠性等多方面有很大的提高和改善。
但使用更好的器件只是為設(shè)計(jì)實(shí)現(xiàn)一個好的系統(tǒng)創(chuàng)造了一個好的基礎(chǔ)和可能性,如果還采用和沿襲以前傳統(tǒng)的硬件和軟件設(shè)計(jì)思想和方法的話,是不能用好AVR的,甚至也不能真正的了解AVR的特點(diǎn)和長處。
功能越好的器件,需要具備更高技術(shù)和能力的人來使用和駕馭它。IC芯片解密就象一部好的F1賽車,只有具備高超技術(shù)的駕駛員才能充分體會到車的特點(diǎn),并能最大限度的發(fā)揮出車的性能。
AVR具有上手入門快,開發(fā)方便簡單的特點(diǎn),但要充分體會和發(fā)揮AVR的優(yōu)點(diǎn),還需要應(yīng)用工程師本身的硬軟件設(shè)計(jì)開發(fā)能力IC芯片解密的不斷學(xué)習(xí)、實(shí)踐提高。
《AVR單片機(jī)工程師是怎樣煉成的--基于C語言+Proteus仿真》是一本教你如何使用AVR單片機(jī)的經(jīng)典之作,是一位工程師的學(xué)習(xí)筆記,同時也包含了一個嵌入式工程師近10年的學(xué)習(xí)、工作總結(jié)。
AVR單片機(jī)采用精簡指令集,以字作為指令長度單位,將內(nèi)容豐富的操作數(shù)與操作碼安排在一字之中(指令集中占大多數(shù)的單周期指令都是如此),取指周期短,又可預(yù)取指令,實(shí)現(xiàn)流水作業(yè),故可高速執(zhí)行指令。當(dāng)然這種速度上的升躍,是以高可靠性為其后盾的。
AVR芯片的防止解密方法如下:
1.讓原芯片廠家將芯片的封裝腳位全部調(diào)換;
2.將HTXXXX的印字印為MDTXXXX的,將PICXXX的印為ATXXXX;
3.使用四層板(故意多走一些線);
4.用環(huán)氧樹脂酶(xxx酶:可增加硬度,如將其弄開后芯片就報廢了)將測試好的線路板密封上;
5.將芯片的程序里加入芯片保護(hù)程序,EMXXX如2腳有電壓輸入時就將所有芯片的內(nèi)容清除;
6.最好使用裸片來做產(chǎn)品;
7.將部分端口用大電流熔斷;