深入解析Atmel ATmega48/88/168汽車級8位AVR微控制器
在電子工程師的日常設(shè)計工作中,選擇一款合適的微控制器至關(guān)重要。Atmel的ATmega48/88/168汽車級8位AVR微控制器以其高性能、低功耗等特性,成為眾多嵌入式控制應(yīng)用的理想選擇。下面,讓我們一起深入了解這款微控制器。
文件下載:ATMEGA88-15MT1.pdf
一、產(chǎn)品特性
高性能與低功耗
ATmega48/88/168采用AVR? 8位微控制器架構(gòu),具備先進(jìn)的RISC架構(gòu)。它擁有131條強(qiáng)大的指令,大多數(shù)指令可在單時鐘周期內(nèi)執(zhí)行,還配備32×8通用工作寄存器,能實(shí)現(xiàn)全靜態(tài)操作。在16MHz時鐘頻率下,其吞吐量可達(dá)16MIPS,片上還集成了2周期乘法器,在保證高性能的同時,有效降低了功耗。
非易失性程序和數(shù)據(jù)存儲器
- 閃存(Flash):ATmega48/88/168分別具備4K/8K/16K字節(jié)的系統(tǒng)內(nèi)自編程閃存,擦寫壽命可達(dá)75,000次。還可選配獨(dú)立鎖定位的引導(dǎo)代碼區(qū),支持通過片上引導(dǎo)程序進(jìn)行系統(tǒng)內(nèi)編程,并且能實(shí)現(xiàn)真正的讀 - 寫操作。
- EEPROM:對應(yīng)型號分別有256/512/512字節(jié)的EEPROM,擦寫壽命為100,000次。
- SRAM:分別擁有512/1K/1K字節(jié)的內(nèi)部SRAM,同時具備編程鎖,保障軟件安全。
豐富的外設(shè)功能
- 定時器/計數(shù)器:兩個8位定時器/計數(shù)器,具有獨(dú)立預(yù)分頻器和比較模式;一個16位定時器/計數(shù)器,具備獨(dú)立預(yù)分頻器、比較模式和捕獲模式;還有帶獨(dú)立振蕩器的實(shí)時計數(shù)器,以及六個PWM通道。
- ADC:8通道10位ADC,能滿足多種模擬信號采集需求。
- 通信接口:可編程串行USART、主/從SPI串行接口、面向字節(jié)的2線串行接口。
- 其他:可編程看門狗定時器,帶獨(dú)立片上振蕩器;片上模擬比較器;支持引腳變化中斷和喚醒。
特殊微控制器特性
- 復(fù)位與檢測:具備上電復(fù)位和可編程欠壓檢測功能。
- 振蕩器:內(nèi)部校準(zhǔn)振蕩器,為系統(tǒng)提供穩(wěn)定時鐘。
- 中斷與睡眠模式:擁有外部和內(nèi)部中斷源,支持五種睡眠模式,包括空閑模式、ADC降噪模式、省電模式、掉電模式和待機(jī)模式,可根據(jù)不同應(yīng)用場景靈活選擇,進(jìn)一步降低功耗。
I/O與封裝
該微控制器有23個可編程I/O線,采用綠色/ROHS標(biāo)準(zhǔn)的32引腳TQFP和32焊盤QFN封裝。工作電壓范圍為2.7 - 5.5V,溫度范圍為 - 40°C至125°C。速度等級方面,在2.7至5.5V電壓下,ATmega48/88/168的工作頻率為0至8MHz;在4.5至5.5V電壓下,工作頻率為0至16MHz。其低功耗表現(xiàn)出色,如在4MHz、3.0V的活動模式下,電流僅為1.8mA;在3.0V的掉電模式下,電流低至5μA。
二、引腳配置與功能
引腳概述
ATmega48/88/168的引腳配置豐富,不同引腳具有不同的功能。例如,VCC為數(shù)字電源電壓,GND為接地。
各端口功能
- 端口B(PB7..0):8位雙向I/O端口,帶有內(nèi)部上拉電阻。根據(jù)時鐘選擇熔絲設(shè)置,PB6可作為反相振蕩器放大器的輸入和內(nèi)部時鐘操作電路的輸入;PB7可作為反相振蕩器放大器的輸出。若使用內(nèi)部校準(zhǔn)RC振蕩器作為芯片時鐘源,當(dāng)ASSR中的AS2位設(shè)置時,PB7..6可作為異步定時器/計數(shù)器2的TOSC2..1輸入。
- 端口C(PC5..0):7位雙向I/O端口,同樣帶有內(nèi)部上拉電阻。PC6/RESET引腳,若RSTDISBL熔絲被編程,PC6用作I/O引腳;若未編程,則用作復(fù)位輸入。
- 端口D(PD7..0):8位雙向I/O端口,具備內(nèi)部上拉電阻。
- AVCC:為A/D轉(zhuǎn)換器、PC3..0和ADC7..6提供電源電壓,即使不使用ADC,也應(yīng)外部連接到VCC;若使用ADC,需通過低通濾波器連接到VCC。
- AREF:A/D轉(zhuǎn)換器的模擬參考引腳。
- ADC7..6(TQFP和QFN封裝):作為A/D轉(zhuǎn)換器的模擬輸入,為10位ADC通道。
三、AVR CPU核心
架構(gòu)概述
AVR采用哈佛架構(gòu),程序和數(shù)據(jù)擁有獨(dú)立的存儲器和總線。指令執(zhí)行采用單級流水線,在執(zhí)行一條指令的同時,預(yù)取下一條指令,實(shí)現(xiàn)每個時鐘周期執(zhí)行一條指令。程序存儲器為系統(tǒng)內(nèi)可重編程閃存。
寄存器與運(yùn)算單元
- 通用工作寄存器:快速訪問寄存器文件包含32個8位通用工作寄存器,可在單時鐘周期內(nèi)完成訪問,支持單周期算術(shù)邏輯單元(ALU)操作。其中6個寄存器可作為3個16位間接地址寄存器指針,用于數(shù)據(jù)空間尋址。
- ALU:高性能AVR ALU與32個通用工作寄存器直接相連,可在單時鐘周期內(nèi)執(zhí)行通用寄存器之間或寄存器與立即數(shù)之間的算術(shù)運(yùn)算,操作分為算術(shù)、邏輯和位功能三大類。
- 狀態(tài)寄存器:包含最近執(zhí)行的算術(shù)指令結(jié)果信息,可用于改變程序流程,實(shí)現(xiàn)條件操作。狀態(tài)寄存器在進(jìn)入和退出中斷例程時需由軟件處理。
堆棧與指令執(zhí)行
- 堆棧指針:堆棧主要用于存儲臨時數(shù)據(jù)、局部變量和中斷及子程序調(diào)用后的返回地址。堆棧指針指向數(shù)據(jù)SRAM堆棧區(qū)域,程序需在執(zhí)行子程序調(diào)用或啟用中斷前定義堆??臻g。
- 指令執(zhí)行時序:AVR CPU由CPU時鐘驅(qū)動,無內(nèi)部時鐘分頻。哈佛架構(gòu)和快速訪問寄存器文件概念實(shí)現(xiàn)了并行指令取指和執(zhí)行,基本流水線概念可實(shí)現(xiàn)每MHz高達(dá)1MIPS的性能。
復(fù)位與中斷處理
- 中斷源與向量:AVR提供多種中斷源,每個中斷和復(fù)位向量在程序內(nèi)存空間都有獨(dú)立的程序向量。中斷需將全局中斷使能位和相應(yīng)的獨(dú)立使能位設(shè)置為邏輯1才能啟用。
- 中斷類型與響應(yīng)時間:中斷分為兩種類型,一種由事件觸發(fā)設(shè)置中斷標(biāo)志,硬件清除標(biāo)志;另一種只要中斷條件存在就會觸發(fā)。中斷執(zhí)行響應(yīng)時間至少為四個時鐘周期,返回中斷處理例程也需要四個時鐘周期。
四、不同型號對比
ATmega48、ATmega88和ATmega168主要在內(nèi)存大小、引導(dǎo)加載器支持和中斷向量大小方面存在差異。ATmega88和ATmega168支持真正的讀 - 寫自編程機(jī)制,有單獨(dú)的引導(dǎo)加載器部分;而ATmega48不支持讀 - 寫操作,也沒有單獨(dú)的引導(dǎo)加載器部分。
作為電子工程師,在設(shè)計中選擇ATmega48/88/168微控制器時,需根據(jù)具體應(yīng)用需求,綜合考慮其特性、引腳功能、CPU核心架構(gòu)等因素,以充分發(fā)揮其優(yōu)勢,實(shí)現(xiàn)高效、可靠的嵌入式控制應(yīng)用。你在使用這款微控制器的過程中,遇到過哪些有趣的問題或挑戰(zhàn)呢?歡迎在評論區(qū)分享交流。
-
嵌入式控制
+關(guān)注
關(guān)注
0文章
68瀏覽量
14762 -
AVR微控制器
+關(guān)注
關(guān)注
0文章
20瀏覽量
6965
發(fā)布評論請先 登錄
深入解析Atmel ATmega48/88/168汽車級8位AVR微控制器
評論