AT89S51概述
AT89S51是一個低功耗,高性能CMOS 8位單片機,片內(nèi)含4k Bytes ISP(In-system programmable)的可反復(fù)擦寫1000次的Flash只讀程序存儲器,器件采用ATMEL公司的高密度、非易失性存儲技術(shù)制造,兼容標準MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),芯片內(nèi)集成了通用8位中央處理器和ISP Flash存儲單元,AT89S51在眾多嵌入式控制應(yīng)用系統(tǒng)中得到廣泛應(yīng)用。
AT89S51性能參數(shù)
1、4k Bytes Flash片內(nèi)程序存儲器;
2、128 bytes的隨機存取數(shù)據(jù)存儲器(RAM);
3、32個外部雙向輸入/輸出(I/O)口;
4、2個中斷優(yōu)先級、2層中斷嵌套中斷;
5、5個中斷源;
7、1個全雙工串行通信口;
8、看門狗(WDT)電路;
10、與MCS-51兼容;
11、全靜態(tài)工作:0Hz-33MHz;
12、三級程序存儲器保密鎖定;
13、可編程串行通道;
14、低功耗的閑置和掉電模式。
AT89S51引腳及功能
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口除了作為普通I/O口,還有第二功能:
P3.0 RXD(串行輸入口)
P3.1 TXD(串行輸出口)
P3.2 /INT0(外部中斷0)
P3.3 /INT1(外部中斷1)
P3.4 T0(T0定時器的外部計數(shù)輸入)
P3.5 T1(T1定時器的外部計數(shù)輸入)
P3.6 /WR(外部數(shù)據(jù)存儲器的寫選通)
P3.7 /RD(外部數(shù)據(jù)存儲器的讀選通)
P3口同時為閃爍編程和編程校驗接收一些控制信號。
I/O口作為輸入口時有兩種工作方式,即所謂的讀端口與讀引腳。讀端口時實際上并不從外部讀入數(shù)據(jù),而是把端口鎖存器的內(nèi)容讀入到內(nèi)部總線,經(jīng)過某種運算或變換后再寫回到端口鎖存器。只有讀端口時才真正地把外部的數(shù)據(jù)讀入到內(nèi)部總線。89C51的P0、P1、P2、P3口作為輸入時都是準雙向口。除了P1口外P0、P2、P3口都還有其他的功能。
RST:復(fù)位輸入端,高電平有效。當振蕩器復(fù)位器件時,要保持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)振蕩器反相放大器和時鐘發(fā)生器的輸入端。
XTAL2:片內(nèi)振蕩器反相放大器的輸出端。
AT89S51系列單片機的特點
AT89S5l是AT89C51的升級產(chǎn)品,性能上較.AT89C51有很大提升,在價格上卻與AT89C51差不多,甚至更低。
AT89S51顯著的特點是加入了在系統(tǒng)編程(ISP)功能,不再依靠專用的編程工具,改寫單片機存儲器內(nèi)的程序再也不需要把芯片從電路板上拆下。AT89S系列現(xiàn)有AT89S51/52/53/8252等成員,其不同點在于內(nèi)置Flash存儲器及RAM容量不一樣。
1、在系統(tǒng)編程ISP
從引腳上可以看出其P1.5、P1.6、P1.7比標準的8051都多出一樣復(fù)用功能,這三個引腳就是用來實現(xiàn)在系統(tǒng)編程(ISP)的SPI接口。
當芯片的RST引腳置高電平時,所有程序和數(shù)據(jù)存儲器可以通過SPI總線接口MOSI(數(shù)據(jù)輸入),MISO(數(shù)據(jù)輸出),SCK(時鐘輸入)對內(nèi)置Flash存儲器進行編程。編程時應(yīng)在XTAL1與XTAL2之間連接一個3MHz~24MHz的晶振,在VCC與GND之前加上電源電壓。
通常,AT89S51通過并口下載線與PC并口(打印口)連接,然后使用Atmel公司的AT89ISP軟件即可實現(xiàn)編程、校驗、加密等操作(見下圖)。
2、片內(nèi)看門狗定時器WDT
AT89S51芯片內(nèi)置了一個14位的硬件看門狗定時器WDT,從而可以省卻外接專用看門狗硬件。一旦WDT啟動,沒有任何辦法使其停止計數(shù),只有硬件復(fù)位或WDT的溢出方可停止WDT計數(shù),可以有效防止程序跑飛和陷入死循環(huán)。當然,在不啟動內(nèi)置看門狗的情況下,AT89S51完全可以和普通8051單片機一樣使用。
3.雙DPTR數(shù)據(jù)指針
標準的8051只有一個16位的DPTR數(shù)據(jù)指針,這樣在進行數(shù)據(jù)塊復(fù)制等動作時,必須對源地址指針和目標地址指針進行暫存,編程會非常麻煩。AT89S5l內(nèi)有兩個DPTR數(shù)據(jù)指針DPTR0/DPTR1,可以通過DPS位(AUXR1.0)方便地選擇置0則選中DPTRO,置1則選中DPTR1。通過執(zhí)行INCAUXR1指令,能對DPS快速切換,并不影響AUXR1的高位。用法上與PHILIPS單片機完全一致。
4、改進了的電源管理
AT89S51除了具有8051所具備的低功耗的空閑模式(設(shè)IDL=1)和掉電模式(設(shè)PD=1),還增加了掉電狀態(tài)下的中斷恢復(fù)模式和上電復(fù)位標志POF(PCON.4)。電源打開時POF自動置“1”,可由軟件設(shè)置為睡眠狀態(tài),并不為復(fù)位所影響。
5、更強的程序保密性
全新的3級加密算法,這使得對于89S系列單片機的解密變?yōu)椴豢赡艹绦虻谋C苄源蟠蠹訌姡@樣就可以有效地保護知識產(chǎn)權(quán)不被侵犯。六.其他類似的型號AT89S系列中的89S52、89S53、89S55是與8052兼容的,片內(nèi)RAM為256字節(jié),還比89S51多了定時器2(Timer2),片內(nèi)Flash存儲器容量分別為8K、12K和20K字節(jié)。
89S8252/89S8253也是與8052兼容的,片內(nèi)除了含8K/12K字節(jié)的Flash程序存儲器(可擦寫1000次),還有2K字節(jié)的數(shù)據(jù)存儲器(可擦寫超過100000次)。
另外,相應(yīng)的AT89LS系列是AT89S系列低電壓系列,AT89LS51的電源電壓為2.7V~4.0V,工作頻率為0~16MHz。
6、性價比
目前,AT89S51/52/55報價分別為5.2/6.5/10.5元,有較高的性價比,可以根據(jù)應(yīng)用需要選擇使用適合的型號。
AT89S51應(yīng)用電路
圖1電路為1塊8×8點陣顯示電路連接圖。
圖一
(1)把“單片機系統(tǒng)”區(qū)域中的P1端口用8芯排芯連接到“點陣模塊”區(qū)域中的“DR1~DR8”端口上;
(2)把“單片機系統(tǒng)”區(qū)域中的P3端口用8芯排芯連接到“點陣模塊”區(qū)域中的“DC1~DC8”端口上;如果要顯示大的圖像可多個點陣拼在一起,將點陣的行和行相串聯(lián),列和列相串聯(lián),用74lS164控制單個行即可.
-
單片機
+關(guān)注
關(guān)注
6037文章
44558瀏覽量
635293 -
AT89S51
+關(guān)注
關(guān)注
3文章
229瀏覽量
34091
發(fā)布評論請先 登錄
相關(guān)推薦
評論