AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機。該器件采用ATMEL高密度非易失存儲器制造技術制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。
1.主要特性:
·與MCS-51 兼容
·4K字節(jié)可編程閃爍存儲器
壽命:1000寫/擦循環(huán)
數(shù)據(jù)保留時間:10年
·全靜態(tài)工作:0Hz-24Hz
·三級程序存儲器鎖定
·128*8位內(nèi)部RAM
·32可編程I/O線
·兩個16位定時器/計數(shù)器
·5個中斷源
·可編程串行通道
·低功耗的閑置和掉電模式
·片內(nèi)振蕩器和時鐘電路
2.管腳說明:
VCC:供電電壓。
GND:接地。
P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0 口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。
P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。
P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。
P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。
P3口也可作為AT89C51的一些特殊功能口,如下表所示:
口管腳 備選功能
P3.0 RXD(串行輸入口)
P3.1 TXD(串行輸出口)
P3.2 /INT0(外部中斷0)
P3.3 /INT1(外部中斷1)
P3.4 T0(記時器0外部輸入)
P3.5 T1(記時器1外部輸入)
P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)
P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)
P3口同時為閃爍編程和編程校驗接收一些控制信號。
RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。
ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。
/PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。
/EA/VPP:當/EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定為RESET;當/EA端保持高電平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。
XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。
XTAL2:來自反向振蕩器的輸出。
3.振蕩器特性:
XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時鐘源驅動器件,XTAL2應不接。有余輸入至內(nèi)部時鐘信號要通過一個二分頻觸發(fā)器,因此對外部時鐘信號的脈寬無任何要求,但必須保證脈沖的高低電平要求的寬度。
4.芯片擦除:
整個PEROM陣列和三個鎖定位的電擦除可通過正確的控制信號組合,并保持ALE管腳處于低電平10ms 來完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲字節(jié)被重復編程以前,該操作必須被執(zhí)行。
此外,AT89C51設有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,CPU停止工作。但RAM,定時器,計數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內(nèi)容并且凍結振蕩器,禁止所用其他芯片功能,直到下一個硬件復位為止。
很多初學51單片機的網(wǎng)友會有這樣的問題:AT89S51是什么?書上和網(wǎng)絡教程上可都是8051,89C51等!沒聽說過有89S51 ?!
這里,初學者要澄清單片機實際使用方面的一個產(chǎn)品概念,MCS-51單片機是美國INTE公司于1980年推出的產(chǎn)品,典型產(chǎn)品有 8031(內(nèi)部沒有程序存儲器,實際使用方面已經(jīng)被市場淘汰)、8051(芯片采用HMOS,功耗是630mW,是89C51的5倍,實際使用方面已經(jīng)被市場淘汰)和8751等通用產(chǎn)品,一直到現(xiàn)在, MCS-51內(nèi)核系列兼容的單片機仍是應用的主流產(chǎn)品(比如目前流行的89S51、已經(jīng)停產(chǎn)的89C51等),各高校及專業(yè)學校的培訓教材仍與MCS-51單片機作為代表進行理論基礎學習。[!--empirenews.page--]
有些文獻甚至也將8051泛指MCS-51系列單片機,8051是早期的最典型的代表作,由于MCS-51單片機影響極深遠,許多公司都推出了兼容系列單片機,就是說MCS-51內(nèi)核實際上已經(jīng)成為一個8位單片機的標準。
其他的公司的51單片機產(chǎn)品都是和MCS-51內(nèi)核兼容的產(chǎn)品而以。同樣的一段程序,在各個單片機廠家的硬件上運行的結果都是一樣的,如ATMEL的89C51(已經(jīng)停產(chǎn))、89S51, PHILIPS(菲利浦),和WINBOND(華邦)等,我們常說的已經(jīng)停產(chǎn)的89C51指的是ATMEL公司的 AT89C51單片機,同時是在原基礎上增強了許多特性,如時鐘,更優(yōu)秀的是由Flash(程序存儲器的內(nèi)容至少可以改寫1000次)存儲器取帶了原來的ROM(一次性寫入),AT89C51的性能相對于8051已經(jīng)算是非常優(yōu)越的了。
不過在市場化方面,89C51受到了PIC單片機陣營的挑戰(zhàn),89C51最致命的缺陷在于不支持ISP(在線更新程序)功能,必須加上ISP功能等新功能才能更好延續(xù)MCS-51的傳奇。89S51就是在這樣的背景下取代89C51的,現(xiàn)在,89S51目前已經(jīng)成為了實際應用市場上新的寵兒,作為市場占有率第一的Atmel目前公司已經(jīng)停產(chǎn)AT89C51,將用AT89S51代替。89S51在工藝上進行了改進,89S51采用0.35新工藝,成本降低,而且將功能提升,增加了競爭力。89SXX可以像下兼容89CXX等51系列芯片。同時,Atmel不再接受89CXX的定單,大家在市場上見到的89C51實際都是Atmel前期生產(chǎn)的巨量庫存而以。
89S51相對于89C51增加的新功能包括:
-- 新增加很多功能,性能有了較大提升,價格卻基本不變,甚至比89C51更低!
-- ISP在線編程功能,這個功能的優(yōu)勢在于改寫單片機存儲器內(nèi)的程序不需要把芯片從工作環(huán)境中剝離。是一個強大易用的功能。
-- 工作頻率為33MHz,大家都知道89C51的極限工作頻率只有24M,就是說S51具有更高工作頻率,從而具有了更快的計算速度。
-- 具有雙工UART串行通道。
-- 內(nèi)部集成看門狗計時器,不再需要像89C51那樣外接看門狗計時器單元電路。
-- 雙數(shù)據(jù)指示器。
-- 電源關閉標識。
-- 全新的加密算法,這使得對于89S51的解密變?yōu)椴豢赡?,程序的保密性大大加強,這樣就可以有效的保護知識產(chǎn)權不被侵犯。
-- 兼容性方面:向下完全兼容51全部字系列產(chǎn)品。比如8051、89C51等等早期MCS-51兼容產(chǎn)品。也就是說所有教科書、網(wǎng)絡教程上的程序(不論教科書上采用的單片機是8051還是89C51還是MCS-51等等),在89S51上一樣可以照常運行,這就是所謂的向下兼容。