ATmega16是基于增�(qiáng)的AVR RISC�(jié)�(gòu)的低功�8 �CMOS微控制器。由于其先�(jìn)的指令集以及單時(shí)鐘周期指令執(zhí)行時(shí)�,ATmega16 的數(shù)�(jù)吞吐率高�(dá)1 MIPS/MHz,從而可以減緩系�(tǒng)在功耗和處理速度之間的矛盾�
ATmega16是基于增�(qiáng)的AVR RISC�(jié)�(gòu)的低功�8 位CMOS微控制器。由于其先�(jìn)的指令集以及單時(shí)鐘周期指令執(zhí)行時(shí)間,ATmega16 的數(shù)�(jù)吞吐率高�(dá)1 MIPS/MHz,從而可以減緩系�(tǒng)在功耗和處理速度之間的矛盾�
ATmega16 AVR �(nèi)核具有豐富的指令集和32 �(gè)通用工作寄存�。所有的寄存器都直接與運(yùn)算邏單元(ALU) 相連接,使得一條指令可以在一�(gè)�(shí)鐘周期內(nèi)同時(shí)訪問兩�(gè)�(dú)立的寄存�。這種�(jié)�(gòu)大大提高了代碼效率,并且具有比普通的CISC 微控制器�10 倍的�(shù)�(jù)吞吐��
ATmega16 有如下特�(diǎn):16K字節(jié)的系�(tǒng)�(nèi)可編程Flash(具有同時(shí)讀寫的能力,即RWW)�512 字節(jié)EEPROM�1K 字節(jié)SRAM�32 �(gè)通用I/O 口線�32 �(gè)通用工作寄存�,用于邊界掃描的JTAG 接口,支持片�(nèi)�(diào)試與編程,三�(gè)具有比較模式的靈活的定時(shí)�/ �(jì)�(shù)�(T/C),片內(nèi)/外中斷,可編程串行USART,有起始條件檢測(cè)器的通用串行接口�8�10位具有可選差分輸入級(jí)可編程增�(TQFP 封裝) 的ADC ,具有片�(nèi)振蕩器的可編程看門狗定�(shí)器,一�(gè)SPI 串行端口,以及六�(gè)可以通過軟件�(jìn)行選擇的省電模式�
工作于空閑模式時(shí)CPU 停止工作,而USART、兩線接�、A/D �(zhuǎn)換器、SRAM、T/C、SPI 端口以及中斷系統(tǒng)繼續(xù)工作;停電模式時(shí)晶體振蕩器停止振�,所有功能除了中斷和硬件�(fù)位之外都停止工作;在省電模式�,異步定�(shí)器繼�(xù)�(yùn)�,允許用戶保持一�(gè)�(shí)間基�(zhǔn),而其余功能模塊處于休眠狀�(tài)� ADC 噪聲抑制模式�(shí)終止CPU 和除了異步定�(shí)器與ADC 以外所有I/O 模塊的工作,以降低ADC �(zhuǎn)換時(shí)的開�(guān)噪聲� Standby 模式下只有晶體或諧振振蕩器運(yùn)�,其余功能模塊處于休眠狀�(tài),使得器件只消耗極少的電流,同�(shí)具有快速啟�(dòng)能力;擴(kuò)展Standby 模式下則允許振蕩器和異步定時(shí)器繼�(xù)工作�
本芯片是以Atmel 高密度非易失性存�(chǔ)器技�(shù)生產(chǎn)的。片�(nèi)ISP Flash 允許程序存儲(chǔ)器通過ISP 串行接口,或者通用編程器�(jìn)行編�,也可以通過�(yùn)行于AVR �(nèi)核之中的引導(dǎo)程序�(jìn)行編�。引�(dǎo)程序可以使用任意接口將應(yīng)用程序下載到�(yīng)用Flash存儲(chǔ)區(qū)(ApplicationFlash Memory)。在更新�(yīng)用Flash存儲(chǔ)區(qū)�(shí)引導(dǎo)Flash區(qū)(Boot Flash Memory)的程序繼�(xù)�(yùn)�,實(shí)�(xiàn)了RWW 操作� 通過�8 位RISC CPU 與系�(tǒng)�(nèi)可編程的Flash 集成在一�(gè)芯片�(nèi)� ATmega16 成為一�(gè)功能�(qiáng)大的單片�(jī),為許多嵌入式控制應(yīng)用提供了靈活而低成本的解決方�。ATmega16 具有一整套的編程與系統(tǒng)開發(fā)工具,包括:C 語言 編譯�、宏匯編� 程序�(diào)試器/ 軟件仿真器、仿真器及評(píng)估板�
u 高性能、低功耗的8位AVR微處理器
l 先�(jìn)的RISC �(jié)�(gòu)
l 131條指�
l 大多�(shù)指令�(zhí)行時(shí)間為單�(gè)�(shí)鐘周�
l 32�(gè)8位通用工作寄存�
l 全靜�(tài)工作
l 工作�16MHz�(shí)性能高達(dá)16MIPS
l 只需兩�(gè)�(shí)鐘周期的硬件乘法�
l 非易失性程序和�(shù)�(jù)存儲(chǔ)�
l 16K 字節(jié)的系�(tǒng)�(nèi)可編程Flash,擦寫壽�: 10,000�
l 具有�(dú)立鎖定位的可選Boot代碼區(qū),通過片上Boot程序?qū)崿F(xiàn)系統(tǒng)�(nèi)編程,真正的同時(shí)讀寫操�
l 512 字節(jié)的EEPROM,擦寫壽�: 100,000�
l 1K字節(jié)的片�(nèi)SRAM
l 可以�(duì)鎖定位�(jìn)行編程以�(shí)�(xiàn)用戶程序的加�
l JTAG 接口( 與IEEE 1149.1 �(biāo)�(zhǔn)兼容)
l 符合JTAG �(biāo)�(zhǔn)的邊界掃描功�
l 支持?jǐn)U展的片內(nèi)�(diào)試功�
l 通過JTAG 接口�(shí)�(xiàn)�(duì)Flash、EEPROM、熔絲位和鎖定位的編�
外設(shè)特點(diǎn)
u 兩�(gè)具有�(dú)立預(yù)分頻器和比較器功能的8位定�(shí)�/�(jì)�(shù)�
l 一�(gè)具有�(yù)分頻�、比較功能和捕捉功能�16位定�(shí)�/�(jì)�(shù)�
l 具有�(dú)立振蕩器的實(shí)�(shí)�(jì)�(shù)器RTC
l 四通道PWM
l 8�10位ADC�8�(gè)單端通道�2�(gè)具有可編程增益(1x, 10x, �200x)的差分通道
l 面向字節(jié)的兩線接�
l 兩�(gè)可編程的串行USART
l 可工作于主機(jī)/ 從機(jī)模式的SPI 串行接口
l 具有�(dú)立片�(nèi)振蕩器的可編程看門狗定�(shí)�
l 片內(nèi)模擬比較�
u 特殊的處理器特點(diǎn)
l 上電�(fù)位以及可編程的掉電檢�(cè)
l 片內(nèi)�(jīng)過標(biāo)定的RC振蕩�
l 片內(nèi)/片外中斷�
l 6種睡眠模�: 空閑模式、ADC 噪聲抑制模式、省電模�、掉電模�、Standby 模式以及�(kuò)展的Standby模式
u I/O和封�
l 32�(gè)可編程的I/O�
l 40引腳PDIP封裝, 44引腳TQFP封裝, �44引腳MLF封裝
u 工作電壓:
l ATmega16L�2.7 - 5.5V
l ATmega16�4.5 - 5.5V
u 速度等級(jí)
l 8MHz ATmega16L
l 0-16MHz ATmega16
u ATmega16L�1MHz, 3V, 25°C�(shí)的功�
l 正常模式: 1.1 mA
l 空閑模式: 0.35 mA
l 掉電模式: < 1 μA
引腳名稱 引腳功能說明
VCC 電源�
GND 電源�
端口A(PA7..PA0) 端口A 做為A/D �(zhuǎn)換器的模擬輸入端。端口A �8 位雙向I/O �,具有可編程的內(nèi)部上拉電�。其輸出緩沖器具有對(duì)稱的�(qū)�(dòng)特性,可以輸出和吸收大電流。作為輸入使用時(shí),若�(nèi)部上拉電阻使�,端口被外部電路拉低�(shí)將輸出電�。在�(fù)位過程中,即使系�(tǒng)�(shí)鐘還未起�,端口A 處于高阻狀�(tài)�
端口B(PB7..PB0) 端口B �8 位雙向I/O 口,具有可編程的�(nèi)部上拉電�。其輸出緩沖器具有對(duì)稱的�(qū)�(dòng)特�,可以輸出和吸收大電�。作為輸入使用時(shí),若�(nèi)部上拉電阻使�,端口被外部電路拉低�(shí)將輸出電流。在�(fù)位過程中,即使系�(tǒng)�(shí)鐘還未起�,端口B 處于高阻狀�(tài)�
端口B 也可以用做其他不同的特殊功能.
端口C(PC7..PC0) 端口C �8 位雙向I/O 口,具有可編程的�(nèi)部上拉電�。其輸出緩沖器具有對(duì)稱的�(qū)�(dòng)特�,可以輸出和吸收大電�。作為輸入使用時(shí),若�(nèi)部上拉電阻使�,端口被外部電路拉低�(shí)將輸出電�。在�(fù)位過程中,即使系�(tǒng)�(shí)鐘還未起振,端口C 處于高阻狀�(tài)。如果JTAG接口使能,即使復(fù)位出�(xiàn)引腳 PC5(TDI)� PC3(TMS)� PC2(TCK)的上拉電阻被激活。端口C 也可以用做其他不同的特殊功能.
端口D(PD7..PD0) 端口D �8 位雙向I/O �,具有可編程的內(nèi)部上拉電阻。其輸出緩沖器具有對(duì)稱的�(qū)�(dòng)特�,可以輸出和吸收大電流。作為輸入使用時(shí),若�(nèi)部上拉電阻使�,則端口被外部電路拉低時(shí)將輸出電�。在�(fù)位過程中,即使系�(tǒng)�(shí)鐘還未起�,端口D 處于高阻狀�(tài)。端口D 也可以用做其他不同的特殊功能.
RESET �(fù)位輸入引�。持�(xù)�(shí)間超過最小門限時(shí)間的低電平將引起系統(tǒng)�(fù)�。門限時(shí)間見P36Table 15。持�(xù)�(shí)間小于門限間的脈沖不能保證可靠復(fù)��
XTAL1 反向振蕩放大器與片內(nèi)�(shí)鐘操作電路的輸入端�
XTAL2 反向振蕩放大器的輸出��
AVCC AVCC是端口A與A/D�(zhuǎn)換器的電�。不使用ADC�(shí),該引腳�(yīng)直接與VCC連接。使用ADC�(shí)�(yīng)通過一�(gè)低通濾波器與VCC 連接�
AREF A/D 的模擬基�(zhǔn)輸入引腳�
為了獲得的性能以及并行性,AVR采用了Harvard�(jié)�(gòu),具有獨(dú)立的�(shù)�(jù)和程序總�。程序存�(chǔ)器里的指令通過一�(jí)流水線運(yùn)�。CPU在執(zhí)行一條指令的同時(shí)讀取下一條指�(在本文稱為預(yù)�)。這�(gè)概念�(shí)�(xiàn)了指令的單時(shí)鐘周期運(yùn)�。程序存�(chǔ)器是可以在線編程的FLASH�
快速訪問寄存器文件包括32�(gè)8位通用工作寄存器,訪問�(shí)間為一�(gè)�(shí)鐘周�。從而實(shí)�(xiàn)了單�(shí)鐘周期的ALU操作。在典型的ALU操作�,兩�(gè)位于寄存器文件中的操作數(shù)同時(shí)被訪�,然后執(zhí)行運(yùn)�,結(jié)果再被送回到寄存器文件。整�(gè)過程僅需一�(gè)�(shí)鐘周��
寄存器文件里�6�(gè)寄存器可以用�3�(gè)16位的間接尋址寄存器指針以尋址�(shù)�(jù)空間,實(shí)�(xiàn)高效的地址�(yùn)�。其中一�(gè)指針還可以作為程序存�(chǔ)器查詢表的地址指針。這些附加的功能寄存器即為16位的X、Y、Z寄存器�
ALU支持寄存器之間以及寄存器和常�(shù)之間的算�(shù)和邏輯運(yùn)�。ALU也可以執(zhí)行單寄存器操�。運(yùn)算完成之后狀�(tài)寄存器的�(nèi)容得到更新以反映操作�(jié)果�
程序流程通過�/無條件的跳轉(zhuǎn)指令和調(diào)用指令來控制,從而直接尋址整�(gè)地址空間。大多數(shù)指令長度�16�,亦即每�(gè)程序存儲(chǔ)器地址都包含一�16位或32位的指令�
程序存儲(chǔ)器空間分為兩�(gè)區(qū):引�(dǎo)程序區(qū)(Boot區(qū))和應(yīng)用程序區(qū)。這兩�(gè)區(qū)都有專門的鎖定位以實(shí)�(xiàn)讀和讀/寫保�(hù)。用于寫�(yīng)用程序區(qū)的SPM指令必須位于引導(dǎo)程序區(qū)�
在中斷和�(diào)用子程序�(shí)返回地址的程序計(jì)�(shù)�(PC)保存于堆棧之�。堆棧位于通用�(shù)�(jù)SRAM,因此其深度僅受限于SRAM的大�。在�(fù)位例程里用戶首先要初始化堆棧指針SP。這�(gè)指針位于I/O空間,可以�(jìn)行讀寫訪�。數(shù)�(jù)SRAM可以通過5種不同的尋址模式�(jìn)行訪��
AVR存儲(chǔ)器空間為線性的平面�(jié)�(gòu)�
AVR有一�(gè)靈活的中斷模�??刂萍拇嫫魑挥贗/O空間。狀�(tài)寄存器里有全局中斷使能�。每�(gè)中斷在中斷向量表里都有獨(dú)立的中斷向量。各�(gè)中斷的優(yōu)先級(jí)與其在中斷向量表的位置有�(guān),中斷向量地址越低,優(yōu)先級(jí)越高�
I/O存儲(chǔ)器空間包�64�(gè)可以直接尋址的地址,作為CPU外設(shè)的控制寄存器、SPI,以及其他I/O功能。映射到�(shù)�(jù)空間即為寄存器文件之后的地址0x20-0x5F�
1. 型號(hào)緊跟的字�,表示電壓工作范�。帶“V”:1.8-5.5V;若缺省,不帶“V”:2.7-5.5V�
例:ATmega48-20AU,不帶“V”表示工作電壓為2.7-5.5V�
2. 后綴的數(shù)字部�,表示支持的系統(tǒng)�(shí)��
例:ATmega48-20AU,�20”表示可支持�20MHZ的系�(tǒng)�(shí)��
3. 后綴(第二)�(gè)字母,表示封�。“P”:DIP封裝,“A”:TQFP封裝,“M”:MLF封裝�
例:ATmega48-20AU,“A”表示TQFP封裝�
4. 后綴一�(gè)字母,表示應(yīng)用級(jí)�?!癈”:商業(yè)�(jí),“I”:工業(yè)�(jí)(有鉛)、“U”工�(yè)�(jí)(無鉛)�
例:ATmega48-20AU,“U”表示無鉛工�(yè)�(jí)。ATmega48-20AI,“I”表示有鉛工�(yè)�(jí)�
AVR 8-Bit MCU的特�(diǎn)
與其�8-Bit MCU相比,AVR 8-Bit MCU的特�(diǎn)是:
· 哈佛�(jié)�(gòu),具�1MIPS / MHz的高速運(yùn)行處理能力;
· 超功能精簡指令集(RISC�,具�32�(gè)通用工作寄存器,克服了如8051 MCU采用單一ACC�(jìn)行處理造成的瓶頸現(xiàn)��
· 快速的存取寄存器組、單周期指令系統(tǒng),大大優(yōu)化了目標(biāo)代碼的大�、執(zhí)行效�,部分型�(hào)FLASH非常�,特別適用于使用語言�(jìn)行開�(fā)�
· 作輸出時(shí)與PIC的HI/LOW相同,可輸出40mA(單一輸出�,作輸入�(shí)可設(shè)置為三態(tài)高阻抗輸入或帶上拉電阻輸�,具�10mA-20mA灌電流的能力�
· 片內(nèi)集成多種頻率的RC振蕩�、上電自�(dòng)�(fù)�、看門�、啟�(dòng)延時(shí)等功能,外圍電路更加簡單,系�(tǒng)更加�(wěn)定可��
· 大部分AVR片上資源豐富:帶E2PROM,PWM,RTC,SPI,UART,TWI,ISP,AD,Analog Comparator,WDT��
· 大部分AVR除了有ISP功能�,還有IAP功能,方便升�(jí)或銷毀�(yīng)用程��
AVR單片�(jī)的應(yīng)用區(qū)�
目前,AVR已被廣泛用于�
· 空調(diào)控制�
· 打印�(jī)控制�
· 智能電表
· 智能手電�
· LED控制�
· �(yī)療設(shè)�
· GPS
從市�(chǎng)角度看AVR單片�(jī)
· 性價(jià)比:AVR大部分型�(hào)的性價(jià)比較�,性價(jià)比表�(xiàn)突出的型�(hào)有:atmega48、atmega8、atmega16、atmega169P
· 供貨方面:通用型號(hào)的AVR供貨較為�(wěn)�,非常規(guī)型號(hào)的AVR樣品及供貨仍存在問題�
· 市場(chǎng)占有率:目前,AVR的市�(chǎng)占有率還是不如PIC�51,但,AVR的優(yōu)�(diǎn)使得AVR的市�(chǎng)占有一直在�(kuò)�,AVR的年用量也一直在上漲�
維庫電子通,電子知識(shí),一查百通!
已收錄詞�153979�(gè)