AT89C系列單片機是Atmel公司于1993年開始研制生產(chǎn)的,優(yōu)越的性能價格比使其成為頗受歡迎的8位單片機。
AT89C系列與MCS 51系列單片機相比有兩大優(yōu)勢:第一,片內(nèi)程序存儲器采用閃速存儲器,使程序的寫入更加方便;第二,提供了更小尺寸的芯片(AT89C2051/1051),使整個硬件電路的體積更小。
AT89C系列單片機有4種型號:AT89C51、AT89C52、AT89C1051、AT90C2051。其中AT89C2051/1051以較小的體積、良好的性能價格比備受青睞,在家電產(chǎn)品、工業(yè)控制、計算機產(chǎn)品、醫(yī)療器械、汽車工業(yè)、智能儀器等應(yīng)用方面成為用戶降低成本的首選器件。下面以AT89C2051為代表對AT89C系列單片機作一簡要闡述。
AT89C2051主要性能
AT89C2051是Atmel公司生產(chǎn)的帶2KB閃速可編程可擦除只讀存儲器(EPROM)的8位單片機,它具有如下主要特性:
(1)與MCS 51兼容;
(2)內(nèi)部帶2KB可編程閃速存儲器;
(3)壽命為1000次擦/寫循環(huán);
(4)數(shù)據(jù)保留時間為10年;
(5)工作電壓范圍為2.7~6V;
(6)全靜態(tài)工作頻率為0~24Hz;
(7)兩級程序存儲器鎖定;
(8)128×8位內(nèi)部RAM;
(9)15條可編程I/O線;
(10)2個16位定時器/計數(shù)器;
(11)5個兩級中斷源;
(12)可編程全雙工串行UART通道;
(13)直接對LED驅(qū)動輸出;
(14)片內(nèi)精確的模擬比較器;
(15)片內(nèi)振蕩器和時鐘電路;
(16)低功耗的休眠和掉電模式。
AT89C2051內(nèi)部結(jié)構(gòu)及引腳描述
AT89C2051單片機的內(nèi)部結(jié)構(gòu)如圖10.1所示,從圖中可以看出,其內(nèi)部結(jié)構(gòu)與8051單片機的內(nèi)部結(jié)構(gòu)基本一致,區(qū)別只是增加了一個模擬比較器,減少了兩個對外的端口(P0、P2口),輸出端口P1、P3有獨特的功能。
圖10.1 AT89C2051內(nèi)部結(jié)構(gòu)
AT89C2051減少了兩個外部端口,因而芯片的外部引腳可以大大減少,芯片尺寸可以
很小,其引腳配置如圖10.2所示。它是一個有20個引腳雙列直插式的芯片,其引腳描述如下:
VCC:電源電壓。
GND:接地。
圖10.2 AT89C2051引腳配置
RST:復(fù)位輸入。當RST變?yōu)楦唠娖讲⒈3?個機器周期時,所有I/O引腳復(fù)位至高阻狀態(tài)。
XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。
XTAL2:來自反向振蕩放大器的輸出。
P1口:8位雙向I/O口,引腳P1.2和P1.1需要外部上拉,可用作片內(nèi)精確模擬比較器的正向輸入(AIN0)和反向輸入(AIN1)。P1口輸出緩沖器能接收20mA電流,并能直接驅(qū)動LED顯示器;P1口引腳寫入“1”后,可用作輸入。在閃速編程和編程校驗期間,P1口也可接收編碼數(shù)據(jù)。
P3口:引腳P3.0~P3.5與P3.7為7個帶內(nèi)部上拉的雙向I/O引腳。P3.6在內(nèi)部已與片內(nèi)比較器輸出相連,不能作為通用I/O引腳訪問。P3口的輸出緩沖器能接收20 mA電流;P3口寫入“1”后,內(nèi)部上拉,可用作輸入。P3口也可用作特殊功能口,其功能見表10.1。P3口同時也可為閃速存儲器編程和編程校驗接收控制信號。
從上述引腳說明可看出,AT89C2051沒有提供外部擴展存儲器與I/O設(shè)備所需的地址、數(shù)據(jù)、控制信號,因此利用AT89C2051構(gòu)成的單片機應(yīng)用系統(tǒng)不能在AT89C2051之外擴展存儲器或I/O設(shè)備,也即AT89C2051本身即構(gòu)成了最小的單片機系統(tǒng)。
特殊功能寄存器SFR
與8051單片機特殊功能寄存器相對應(yīng),AT89C2051片內(nèi)設(shè)置了19個特殊功能寄存器,統(tǒng)稱為特殊功能寄存器塊(SFR),它們的地址散布在80H~0F0H區(qū)域內(nèi)。表10.2給出了這19個SFR的名稱、地址和復(fù)位后的初值。
程序存儲器的加密
AT89C2051片內(nèi)有兩個鎖定位,可以編程(P),也可以不編程(U),從而得到3種鎖定位保護模式,見表10.3。
程序存儲器加密后,CPU仍可執(zhí)行其內(nèi)部指令,但不能從外部讀出它,鎖定位只能由芯片擦除操作來實現(xiàn)其擦除。
低功耗工作方式
AT89C2051有兩種低功耗工作方式:待機方式與掉電方式。
1)待機方式(休眠方式)
當利用軟件使待機方式位IDL(PCON.0)=0時,單片機進入空閑方式。此時,CPU處于休眠狀態(tài),而片內(nèi)所有其它外圍設(shè)備都保持工作狀態(tài),片內(nèi)RAM和所有特殊功能寄存器內(nèi)容保持不變。
在待機方式下,當晶振fOSC=12 MHz,電源電壓VCC=6V時,電源電流ICC從20mA降至5mA;而VCC=3V時,ICC由5.5mA降至1mA。
中斷或硬件復(fù)位可以終止待機方式。
當待機方式由硬件復(fù)位終止時,CPU要從休眠處恢復(fù)程序的執(zhí)行,執(zhí)行2個機器周期后,內(nèi)部復(fù)位電路才起作用。此時,硬件禁止訪問內(nèi)部RAM,但允許訪問端口引腳。為了防止休眠被復(fù)位終止時對端口引腳意外寫入的可能性,在生成待機方式的指令后不應(yīng)緊跟對端口引腳的寫指令。
如果不采用外部上拉,P1.0和P1.1應(yīng)置為“0”;如果采用外部上拉,則應(yīng)置為“1”。2)掉電方式掉電方式由掉電方式位PD(PCON.1)=1設(shè)置。此時,振蕩器停止工作,設(shè)置掉電方式的指令成為最后執(zhí)行的一條指令,片內(nèi)RAM和特殊功能寄存器內(nèi)容保持不變。
在掉電方式下,VCCmin=2 V。當VCC=6 V時,ICCmax=100μA;當VCC=3 V時,ICCmax=20μA。
退出掉電方式的唯一方式是硬件復(fù)位。
硬件復(fù)位將重新定義特殊功能寄存器,但不影響片內(nèi)RAM。復(fù)位的保持時間應(yīng)足夠長,以便振蕩器能重新開始工作并穩(wěn)定下來。在VCC沒有恢復(fù)到正常工作電壓之前,不應(yīng)進行復(fù)位。
如果不采用外部上拉,P1.0和P1.1應(yīng)置“0”,否則置“1”。