AT89C52中文資料
AT89S52——低功耗高性能CMOS 8位單片機(jī),片內(nèi)8k Bytes ISP(In-system
programmable)的可反復(fù)擦寫1000次的FLASH只讀程序存儲(chǔ)器,器件采用ATMEL公司之高密度、非易失性存儲(chǔ)技術(shù)制造,兼容標(biāo)準(zhǔn) MCS-51指令系統(tǒng)及80C51引腳結(jié)構(gòu),片上Flash允許程序存儲(chǔ)器在系統(tǒng)可編程,亦適于常規(guī)編程器。單芯片上,擁有8 位CPU及在系統(tǒng)可編程FLASH,使AT89S52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效之解決方案。
AT89S52之特點(diǎn):40個(gè)引腳,8k Bytes Flash片內(nèi)程序存儲(chǔ)器,256 bytes
的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),32個(gè)外部雙向輸入/輸出(I/O)口,5個(gè)中斷優(yōu)先級(jí)2層中斷嵌套中斷,2個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,看門狗(WDT)電路,片內(nèi)時(shí)鐘振蕩器。
AT89C52——低電壓高性能CMOS 8位單片機(jī),片內(nèi)8k bytes的可反復(fù)擦寫的FLASH只讀程序存儲(chǔ)器及256 bytes的隨機(jī)存取數(shù)據(jù)存儲(chǔ)器(RAM),器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器及FLASH存儲(chǔ)單元,功能強(qiáng)大之AT89C52單片機(jī)可為您提供許多較復(fù)雜系統(tǒng)控制之應(yīng)用場(chǎng)合。
AT89C52有40個(gè)引腳,32個(gè)外部雙向輸入/輸出(I/O)端口,同時(shí)內(nèi)含2個(gè)外中斷口,3個(gè)16位可編程定時(shí)計(jì)數(shù)器,2個(gè)全雙工串行通信口,2個(gè)讀寫口線,AT89C52可按照常規(guī)方法進(jìn)行編程,亦可在線編程。其將通用之微處理器及Flash存儲(chǔ)器結(jié)合,特別是可反復(fù)擦寫的FLASH存儲(chǔ)器可有效降低開發(fā)成本。
AT89C52及AT89S52之別,在于C及S, C表示需用并行編程器下載(接線多且復(fù)雜),S表示可支持ISP下載,可在89S52系統(tǒng)板上面預(yù)留ISP下載接口,ISP下載線可方便地自制,一74HC373,若干電阻,連接電腦并口就可用軟件將hex文件下載至89S52。相比較AT89C52及AT89S52 ,以方便計(jì),選用AT89S52。
AT89S52功能:8k字節(jié)FLASH,256字節(jié)RAM,32位I/O口線,看門狗定時(shí)器,2 個(gè)數(shù)據(jù)指針,三個(gè)16 位定時(shí)器/計(jì)數(shù)器,一6向量2級(jí)中斷結(jié)構(gòu),全雙
工串行口,片內(nèi)晶振及時(shí)鐘電路。AT89S52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一中斷或硬件復(fù)位為止。
P0口——8位漏極開路之雙向I/O口。作為輸出口,每位能驅(qū)動(dòng)8個(gè)TTL邏輯電平。對(duì)P0端口寫“1”時(shí),引腳用作高阻抗輸入。訪問外部程序和數(shù)據(jù)存儲(chǔ)器時(shí),P0口亦被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,P0不具有內(nèi)部上拉電阻。在FLASH編程時(shí),P0口亦用來接收指令字節(jié);在程序校驗(yàn)時(shí),輸出指令字節(jié)。程序校驗(yàn)時(shí),需外部上拉電阻。
P1口——有內(nèi)部上拉電阻的8位雙向I/O 口,p1 輸出緩沖器能驅(qū)動(dòng)4 個(gè) TTL 邏輯電平。對(duì)P1 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可作輸入口用。作為輸入使用時(shí),被外部拉低的引腳由于內(nèi)部電阻的原因,將輸出電流(IIL)。對(duì)P1 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可作輸入口用。作輸入用時(shí),被外部拉低的引腳因內(nèi)部電阻,將輸出電流(IIL)。此外,P1.0及P1.2分別作定時(shí)器/計(jì)數(shù)器2之外部計(jì)數(shù)輸入(P1.0/T2)及時(shí)器/計(jì)數(shù)器2之觸發(fā)輸入(P1.1/T2EX),詳見表1所示。在flash編程及校驗(yàn)時(shí),P1口接收低8位地址字節(jié)。 表1:
P2口——有內(nèi)部上拉電阻的8 位雙向I/O口,P2輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL 邏輯電平。對(duì)P2 端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可作輸入口。作輸入用時(shí),被外部拉低的引腳因內(nèi)部電阻,將輸出電流(IIL)。 在訪問外部程序存儲(chǔ)器或用16位地址讀取外部數(shù)據(jù)存儲(chǔ)器(例如執(zhí)行MOVX @DPTR) 時(shí),P2口送出高八位地址。在這種應(yīng)用中,P2口用很強(qiáng)的內(nèi)部上拉發(fā)送1。在用8位地址(如MOVX @RI)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口輸出P2鎖存器之內(nèi)容。在FLASH編程及校驗(yàn)時(shí),P2口亦接收高8位地址字節(jié)及一些控制信號(hào)。
P3口——有內(nèi)部上拉電阻的8位雙向I/O口,p3輸出緩沖器能驅(qū)動(dòng)4個(gè)TTL 邏輯電平。對(duì)P3端口寫“1”時(shí),內(nèi)部上拉電阻把端口拉高,此時(shí)可用作輸入口。作輸入用時(shí),被外部拉低的引腳因內(nèi)部電阻之原因,將輸出電流(IIL)。P3口亦作為AT89S52特殊功能(第二功能)用,如表2所示。在FLASH編程及校驗(yàn)時(shí),P3口亦接收些控制信號(hào)。此外,P3口亦接收些用于FLASH閃存編程及程序校驗(yàn)的控制信號(hào)。 表2
RST——復(fù)位輸入。振蕩器工作時(shí),RST引腳有兩個(gè)機(jī)器周期以上高電平將是單片機(jī)復(fù)位。
ALE/PROG——訪問外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定之脈沖信號(hào),故它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。需注意:每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過一個(gè)ALE脈沖。對(duì)FLASH存儲(chǔ)器編程期間,該引腳亦用于輸入編程脈沖(PROG)。若必要,可通過對(duì)特殊功能寄存器(SFR)區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX及MOVC指令方能將ALE激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE禁止位無效。
PSEN——程序儲(chǔ)存允許(PSEN)輸出是外部程序存儲(chǔ)器之讀選通信號(hào),AT89S52由外部程序存儲(chǔ)器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖,在此期間,當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器,將跳過兩次PSEN信號(hào)。
EA/VPP——外部訪問允許,要CPU僅訪問外部程序存儲(chǔ)器(地址為0000H-FFFFH),EA端須保持低電平(接地)。需注意:若加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。若EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲(chǔ)器之指令。
FLASH存儲(chǔ)器編程時(shí),該引腳加上+12V的編程允許電源Vpp,當(dāng)然這須是該器件是使用12V編程電壓Vpp。
XTAL1——振蕩器反相放大器及內(nèi)部時(shí)鐘發(fā)生電路之輸入端。
XTAL2——振蕩器反相放大器之輸出端。