




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1 2.4 AT89S51存儲(chǔ)器的結(jié)構(gòu) 2.4.1 程序存儲(chǔ)器空間 2.4.2 數(shù)據(jù)存儲(chǔ)器空間 2.4.3 特殊功能寄存器(SFR) 2.4.4 位地址空間2.5 AT89S51的并行I/O端口 2.5.1 P0口 2.5.2 P1口 2.5.3 P2口 2.5.4 P3口 2.5.5 P1P3口驅(qū)動(dòng)LED發(fā)光二極管第1頁/共102頁22.6 時(shí)鐘電路與時(shí)序 2.6.1 時(shí)鐘電路設(shè)計(jì) 2.6.2 機(jī)器周期、指令周期與指令時(shí)序2.7 復(fù)位操作和復(fù)位電路 2.7.1 復(fù)位操作 2.7.2 復(fù)位電路設(shè)計(jì)2.8 低功耗節(jié)電模式 2.8.1 空閑模式 2.8.2 掉電運(yùn)行模式 2.8.3 掉電和空閑模式
2、下的WDT第2頁/共102頁3AT89S51AT89S51的片內(nèi)硬件基本結(jié)構(gòu)、引腳功能、存儲(chǔ)器結(jié)構(gòu)、特殊功能寄存器功能、4 4個(gè)并行I/OI/O口的結(jié)構(gòu)和特點(diǎn),復(fù)位電路和時(shí)鐘電路的設(shè)計(jì), ,節(jié)電工作模式。目的:本章學(xué)習(xí),為AT89S51AT89S51系統(tǒng)的應(yīng)用設(shè)計(jì)打下基礎(chǔ)。在原理和結(jié)構(gòu)上,單片機(jī)把微機(jī)的許多概念、技術(shù)與特點(diǎn)都繼承下來。用學(xué)習(xí)微機(jī)的思路來學(xué)習(xí)單片機(jī)。內(nèi)容概要第3頁/共102頁42.1 AT89S512.1 AT89S51單片機(jī)的硬件組成單片機(jī)的硬件組成片內(nèi)硬件組成結(jié)構(gòu)如片內(nèi)硬件組成結(jié)構(gòu)如圖圖2-12-1所示。把作為控制應(yīng)用所所示。把作為控制應(yīng)用所必需的基本功能部件都集成在一個(gè)尺寸
3、有限的集成必需的基本功能部件都集成在一個(gè)尺寸有限的集成電路芯片上。電路芯片上。有如下有如下功能部件功能部件和和特性特性:(1 1)8 8位微處理器(位微處理器(CPUCPU););(2 2)數(shù)據(jù)存儲(chǔ)器()數(shù)據(jù)存儲(chǔ)器(128B RAM128B RAM););(3 3)程序存儲(chǔ)器()程序存儲(chǔ)器(4KB Flash ROM4KB Flash ROM););(4 4)4 4個(gè)個(gè)8 8位可編程并行位可編程并行I/OI/O口(口(P0P0、P1P1、P2P2和和P3P3口);口);(5 5)1 1個(gè)全雙工的異步串行口;個(gè)全雙工的異步串行口;第4頁/共102頁5圖圖2-12-1 AT89S51AT89S51
4、單片機(jī)片內(nèi)結(jié)構(gòu)單片機(jī)片內(nèi)結(jié)構(gòu)第5頁/共102頁6(6 6)2 2個(gè)可編程的個(gè)可編程的1616位定時(shí)器位定時(shí)器/ /計(jì)數(shù)器;計(jì)數(shù)器;(7 7)1 1個(gè)看門狗定時(shí)器;個(gè)看門狗定時(shí)器;(8 8)中斷系統(tǒng)具有)中斷系統(tǒng)具有5 5個(gè)中斷源、個(gè)中斷源、5 5個(gè)中斷向量;個(gè)中斷向量;(9 9)特殊功能寄存器()特殊功能寄存器(SFRSFR)2626個(gè);個(gè);(1010)低功耗模式有)低功耗模式有空閑模式空閑模式和和掉電模式掉電模式,且具有,且具有掉電模式下的中斷恢復(fù)模式;掉電模式下的中斷恢復(fù)模式;(1111)3 3個(gè)程序加密鎖定位個(gè)程序加密鎖定位。第6頁/共102頁7與AT89C51相比,AT89S51有更突
5、出的優(yōu)點(diǎn)有更突出的優(yōu)點(diǎn):(1)增加在線可編程功能ISPISP(In System Program),字節(jié)字節(jié)和頁編程頁編程,現(xiàn)場(chǎng)程序調(diào)試和修改更加方便靈活;(2)數(shù)據(jù)指針數(shù)據(jù)指針增加到兩個(gè)兩個(gè),方便了對(duì)片外RAM的訪問過程;(3)增加增加了看門狗定時(shí)器看門狗定時(shí)器,提高了系統(tǒng)的抗干擾能力;(4)增加增加斷電標(biāo)志;(5)增加掉電狀態(tài)下的中斷恢復(fù)模式。片內(nèi)各功能部件通過片內(nèi)單一總線連接而成(見圖2-1),基本結(jié)構(gòu)依舊是CPU 加上外圍芯片的傳統(tǒng)微機(jī)結(jié)構(gòu)。CPU對(duì)各種功能部件的控制對(duì)各種功能部件的控制是采用特殊功能寄存器特殊功能寄存器(SFR,Special Function Register)的集
6、中控制方式。第7頁/共102頁8下面介紹圖2-1中片內(nèi)各功能部件片內(nèi)各功能部件。(1 1)CPUCPU(微處理器)(微處理器) 8位的CPU,與通用CPU基本相同,同樣包括了運(yùn)算運(yùn)算器器和控制器控制器兩大部分,還有面向控制的位處理功位處理功能能。(2 2)數(shù)據(jù)存儲(chǔ)器()數(shù)據(jù)存儲(chǔ)器(RAMRAM)片內(nèi)為128B(52子系列為256B),片外最多可擴(kuò)64KB。片內(nèi)128B的RAM以高速RAM的形式集成,可加快單片機(jī)運(yùn)行的速度和降低功耗。第8頁/共102頁9(3 3)程序存儲(chǔ)器()程序存儲(chǔ)器(Flash ROMFlash ROM)片內(nèi)集成有4KB4KB的Flash存儲(chǔ)器(AT89S52 則為8KB;
7、AT89C55片內(nèi)20KB),如片內(nèi)容量不夠,片外可外擴(kuò)至64KB。(4 4)中斷系統(tǒng))中斷系統(tǒng)具有6個(gè)中斷源,2級(jí)中斷優(yōu)先權(quán)。(5 5)定時(shí)器)定時(shí)器/ /計(jì)數(shù)器計(jì)數(shù)器2個(gè)16位定時(shí)器/計(jì)數(shù)器(52子系列有3個(gè)),4種工作方式。(6 6)1 1個(gè)看門狗定時(shí)器個(gè)看門狗定時(shí)器WDTWDT當(dāng)CPU由于干擾使程序陷入死循環(huán)或跑飛時(shí),WDT可使程序恢復(fù)正常運(yùn)行。第9頁/共102頁10(7 7)串行口)串行口1個(gè)全雙工的異步串行口,4種工作方式。可進(jìn)行串行通信,擴(kuò)展并行I/O口,還可與多個(gè)單片機(jī)構(gòu)成多機(jī)系統(tǒng)。(8 8)P0P0口口、P1P1口、口、P2P2口口和和P3P3口口4個(gè)8位并行I/O口。(9
8、9)特殊功能寄存器()特殊功能寄存器(SFRSFR)26個(gè),對(duì)片內(nèi)各功能部件管理、控制和監(jiān)視。是各個(gè)功能部件的控制寄存器控制寄存器和狀態(tài)寄存器,映射在片內(nèi)狀態(tài)寄存器,映射在片內(nèi)RAM區(qū)80H80HFFHFFH內(nèi)。AT89S51完全兼容AT89C51,在充分保留原來軟、硬件條件下,完全可以用AT89S51直接代換。第10頁/共102頁112.2 AT89S512.2 AT89S51的引腳功能的引腳功能先了解引腳,牢記各引腳的功能。AT89S51與51系列中各種型號(hào)芯片的引腳互相兼容。目前多采用4040只只引腳引腳雙列直插雙列直插,如圖圖2-22-2所示。引腳按其功能可分為如下3類:(1 1)電源
9、及時(shí)鐘引腳)電源及時(shí)鐘引腳VCC、VSS;XTAL1、XTAL2。(2 2)控制引腳)控制引腳 、ALE/ 、 / /VPP、RST(RESET)(3 3)I/OI/O口引腳口引腳P0、P1、P2、P3,為4個(gè)8位I/O口應(yīng)熟記每一引腳功能對(duì)應(yīng)用系統(tǒng)硬件電路設(shè)計(jì)十分重應(yīng)熟記每一引腳功能對(duì)應(yīng)用系統(tǒng)硬件電路設(shè)計(jì)十分重要。要。EAPSENPROG第11頁/共102頁122.2.1 2.2.1 電源及時(shí)鐘引腳電源及時(shí)鐘引腳1 1電源引腳電源引腳(1 1)V VCCCC(4040腳):腳):+5V電源。(2 2)V VSSSS(2020腳):腳):數(shù)字地。圖2-2 AT89S51雙列直插封裝方式的引腳第
10、12頁/共102頁132 2時(shí)鐘引腳時(shí)鐘引腳 (1 1)XTAL1XTAL1(1919腳):腳):片內(nèi)振蕩器反相放大器和時(shí)鐘發(fā)生器電路輸入端。用片內(nèi)振蕩器時(shí),該腳接外部石英晶體和微調(diào)電容。外接時(shí)鐘源時(shí)外接時(shí)鐘源時(shí),該腳接外部時(shí)鐘振蕩器的信號(hào)。(2 2)XTAL2XTAL2(1818腳):腳):片內(nèi)振蕩器反相放大器的輸出端。當(dāng)使用片內(nèi)振蕩器片內(nèi)振蕩器,該腳連接外部石英晶體和微調(diào)電容。當(dāng)使用外部時(shí)鐘源外部時(shí)鐘源時(shí),本腳懸空。第13頁/共102頁142.2.2 2.2.2 控制引腳控制引腳(1 1)RST (RESETRST (RESET,9 9腳腳) )復(fù)位信號(hào)輸入,在引腳加上持續(xù)時(shí)間大于持續(xù)時(shí)間
11、大于2 2個(gè)機(jī)器周個(gè)機(jī)器周期的高電平期的高電平,可使單片機(jī)復(fù)位復(fù)位。正常工作,此腳電平應(yīng) 0.5V。當(dāng)看門狗定時(shí)器溢出輸出時(shí),該腳將輸出長(zhǎng)達(dá)當(dāng)看門狗定時(shí)器溢出輸出時(shí),該腳將輸出長(zhǎng)達(dá)9696個(gè)個(gè)時(shí)鐘振蕩周期時(shí)鐘振蕩周期的的高電平高電平。第14頁/共102頁15(2 2) /VPP/VPP ( (Enable Address/Voltage Pulse of Enable Address/Voltage Pulse of ProgramingPrograming,3131腳腳) ) :引腳引腳第一功能第一功能:外部程序存儲(chǔ)器訪問允許控制端。:外部程序存儲(chǔ)器訪問允許控制端。=1=1,在,在PCPC值
12、不超出值不超出0FFFH0FFFH(即不超出片內(nèi)(即不超出片內(nèi)4KB Flash4KB Flash存儲(chǔ)器的地址范圍)時(shí),單片機(jī)讀存儲(chǔ)器的地址范圍)時(shí),單片機(jī)讀片內(nèi)程序存儲(chǔ)器片內(nèi)程序存儲(chǔ)器(4KB4KB)中的程序,但中的程序,但PCPC值超出值超出0FFFH0FFFH (即超出片內(nèi)(即超出片內(nèi)4KB Flash4KB Flash地地址范圍)時(shí),將址范圍)時(shí),將自動(dòng)轉(zhuǎn)向讀取片外自動(dòng)轉(zhuǎn)向讀取片外60KB60KB(1000H-FFFFH1000H-FFFFH)程序存儲(chǔ)器空間中的程序。程序存儲(chǔ)器空間中的程序。 =0 =0,只讀取只讀取外部的程序存儲(chǔ)器外部的程序存儲(chǔ)器中的內(nèi)容,讀取的地中的內(nèi)容,讀取的地址
13、范圍為址范圍為0000H0000HFFFFHFFFFH,片內(nèi)的,片內(nèi)的4KB Flash 4KB Flash 程序存儲(chǔ)器程序存儲(chǔ)器不起作用。不起作用。 V VPPPP:引腳引腳第二功能第二功能,對(duì)片內(nèi),對(duì)片內(nèi)FlashFlash編程,接編程,接編程電壓編程電壓。EAEAEAEA第15頁/共102頁16(3 3)ALE/ ALE/ (Address Latch Enable/PROGrammingAddress Latch Enable/PROGramming,3030腳)腳)ALEALE為為CPUCPU訪問外部程序存儲(chǔ)器或外部數(shù)據(jù)存儲(chǔ)器訪問外部程序存儲(chǔ)器或外部數(shù)據(jù)存儲(chǔ)器提供提供地址鎖存信號(hào)地址
14、鎖存信號(hào),將,將低低8 8位地址位地址鎖存在片外的地址鎖鎖存在片外的地址鎖存器中。存器中。此外,單片機(jī)此外,單片機(jī)正常運(yùn)行正常運(yùn)行時(shí),時(shí),ALEALE端端一直有正脈沖信號(hào)輸一直有正脈沖信號(hào)輸出出,此頻率為時(shí)鐘振蕩器頻率,此頻率為時(shí)鐘振蕩器頻率f foscosc的的1/61/6??捎米魍獠???捎米魍獠慷〞r(shí)或觸發(fā)信號(hào)。定時(shí)或觸發(fā)信號(hào)。注意注意,每當(dāng),每當(dāng)AT89S51AT89S51訪問外部訪問外部RAMRAM時(shí)(執(zhí)行時(shí)(執(zhí)行MOVXMOVX類指類指令),要令),要丟失一個(gè)丟失一個(gè)ALEALE脈沖脈沖。16PROG第16頁/共102頁17如需要,可將如需要,可將特殊功能寄存器特殊功能寄存器AUXRA
15、UXR(地址為(地址為8EH8EH,將,將在后面介紹)的在后面介紹)的第第0 0位位(ALEALE禁止位)置禁止位)置1 1,來,來禁止禁止ALEALE操作操作,但執(zhí)行訪問外部程序存儲(chǔ)器或外部數(shù)據(jù)存,但執(zhí)行訪問外部程序存儲(chǔ)器或外部數(shù)據(jù)存儲(chǔ)器指令儲(chǔ)器指令“MOVCMOVC”或或“MOVXMOVX”時(shí),時(shí),ALEALE仍然有效。仍然有效。即即ALEALE禁止位不影響對(duì)外部存儲(chǔ)器的訪問。禁止位不影響對(duì)外部存儲(chǔ)器的訪問。 :引腳引腳第二功能第二功能,對(duì)片內(nèi),對(duì)片內(nèi) FlashFlash編程,為編程,為編程編程脈沖輸入脈沖輸入腳。腳。(4 4) (Program Strobe ENableProgram
16、 Strobe ENable,2929腳)腳) 片外程序存儲(chǔ)器讀選通信號(hào),低電平有效。PROGPSEN第17頁/共102頁182.2.3 2.2.3 并行并行I/OI/O口引腳口引腳(1 1)P0P0口:口:8 8位,漏極開路的雙向位,漏極開路的雙向I/OI/O口口當(dāng)外擴(kuò)存儲(chǔ)器及外擴(kuò)存儲(chǔ)器及I/OI/O接口芯片時(shí)接口芯片時(shí),P0口作為低8位地址總線及數(shù)據(jù)總線的分時(shí)復(fù)用分時(shí)復(fù)用端口。P0口也可用用作通用的作通用的I/OI/O口口,需加上拉電阻,這時(shí)為準(zhǔn)準(zhǔn)雙向口雙向口。作為通用I/O輸入,應(yīng)先向端口寫入1??沈?qū)動(dòng)8個(gè)LS型TTL負(fù)載。第18頁/共102頁19(2 2)P1P1口:口:8 8位,準(zhǔn)雙
17、向位,準(zhǔn)雙向I/OI/O口,具有內(nèi)部上拉電口,具有內(nèi)部上拉電阻。阻。準(zhǔn)雙向I/O口,作為通用I/O輸入時(shí),應(yīng)先向端口鎖存器寫1。P1口可驅(qū)動(dòng)4 4個(gè)個(gè)LSLS型型TTLTTL負(fù)載。P1.5/MOSIP1.5/MOSI、P1.6/MISOP1.6/MISO和和P1.7/SCKP1.7/SCK可用于對(duì)片內(nèi)Flash存儲(chǔ)器串行編程和校驗(yàn),它們分別是串行數(shù)據(jù)輸入、輸出和移位脈沖引腳。第19頁/共102頁20(3 3)P2P2口:口:8位,準(zhǔn)雙向I/O口,具有內(nèi)部上拉電阻。當(dāng)AT89S51擴(kuò)展外部存儲(chǔ)器及I/O口時(shí),P2口作為高高8 8位地址總線位地址總線用,輸出高8位地址。P2P2口口也可作為普通的也
18、可作為普通的I/OI/O口口使用。當(dāng)作為通用使用。當(dāng)作為通用I/OI/O輸輸入時(shí),應(yīng)先向端口輸出鎖存器寫入時(shí),應(yīng)先向端口輸出鎖存器寫1 1。P2P2口可驅(qū)動(dòng)口可驅(qū)動(dòng)4 4個(gè)個(gè)LSLS型型TTLTTL負(fù)載負(fù)載。第20頁/共102頁21(4 4)P3P3口:口:8 8位,位,準(zhǔn)雙向準(zhǔn)雙向I/OI/O口口,具有內(nèi)部上拉電阻。,具有內(nèi)部上拉電阻。可作為可作為通用的通用的I/OI/O口使用口使用。作為。作為通用通用I/OI/O輸入輸入,應(yīng)先,應(yīng)先向端口輸出鎖存器寫入向端口輸出鎖存器寫入1 1??沈?qū)動(dòng)。可驅(qū)動(dòng)4 4個(gè)個(gè)LSLS型型TTLTTL負(fù)載。負(fù)載。P3P3口還可提供口還可提供第二功能第二功能。第二功
19、能定義。第二功能定義見見表表2-12-1,應(yīng)熟記。,應(yīng)熟記。第21頁/共102頁22綜上所述,綜上所述,P0P0口口可可作為總線作為總線口口,為雙向口。作為通,為雙向口。作為通用的用的I/OI/O口使用時(shí),為準(zhǔn)雙向口,這時(shí)需加上拉電阻??谑褂脮r(shí),為準(zhǔn)雙向口,這時(shí)需加上拉電阻。P1P1口、口、P2P2口、口、P3P3口口均為準(zhǔn)雙向口。均為準(zhǔn)雙向口。注意注意:準(zhǔn)雙向口與雙向口的差別準(zhǔn)雙向口與雙向口的差別。準(zhǔn)雙向口僅有兩。準(zhǔn)雙向口僅有兩個(gè)狀態(tài)。而個(gè)狀態(tài)。而P0P0口作為總線使用,口線內(nèi)無上拉電阻,口作為總線使用,口線內(nèi)無上拉電阻,處于高阻處于高阻“懸浮懸浮”態(tài)。故態(tài)。故P0P0口為雙向三態(tài)口為雙向三
20、態(tài)I/OI/O口???。為什么為什么P0P0口要有高阻口要有高阻“懸浮懸浮”態(tài)?態(tài)?準(zhǔn)雙向準(zhǔn)雙向I/OI/O口則無高阻的口則無高阻的“懸浮懸浮”狀態(tài)。狀態(tài)。另外,另外,準(zhǔn)雙向口準(zhǔn)雙向口作通用作通用I/OI/O的輸入口使用時(shí),的輸入口使用時(shí),一定一定要向該口先寫入要向該口先寫入“1 1”。以上的準(zhǔn)雙向口與雙向口的差以上的準(zhǔn)雙向口與雙向口的差別,讀者在閱讀別,讀者在閱讀2.52.5節(jié)后,將會(huì)有深刻的理解。節(jié)后,將會(huì)有深刻的理解。第22頁/共102頁232.3 AT89S512.3 AT89S51的的CPUCPU由圖由圖2-12-1可見,可見,CPUCPU由由運(yùn)算器運(yùn)算器和和控制器控制器構(gòu)成。構(gòu)成。2
21、.3.1 2.3.1 運(yùn)算器運(yùn)算器對(duì)操作數(shù)進(jìn)行算術(shù)、邏輯和位操作運(yùn)算。主要包括對(duì)操作數(shù)進(jìn)行算術(shù)、邏輯和位操作運(yùn)算。主要包括算術(shù)邏輯運(yùn)算單元算術(shù)邏輯運(yùn)算單元ALUALU、累加器、累加器A A、位處理器、程序狀、位處理器、程序狀態(tài)字寄存器態(tài)字寄存器PSWPSW及兩個(gè)暫存器等。及兩個(gè)暫存器等。1 1算術(shù)邏輯運(yùn)算單元算術(shù)邏輯運(yùn)算單元ALUALU可對(duì)可對(duì)8 8位變量位變量邏輯邏輯運(yùn)算運(yùn)算(與、或、異或、循環(huán)、求與、或、異或、循環(huán)、求補(bǔ)和清零補(bǔ)和清零),還可,還可算術(shù)運(yùn)算算術(shù)運(yùn)算(加、減、乘、除加、減、乘、除)ALUALU還有位操作功能,對(duì)位變量進(jìn)行位處理,如置還有位操作功能,對(duì)位變量進(jìn)行位處理,如置1
22、1、清清0 0、求補(bǔ)、測(cè)試轉(zhuǎn)移及邏輯、求補(bǔ)、測(cè)試轉(zhuǎn)移及邏輯“與與”、“或或”等等。第23頁/共102頁242 2累加器累加器A A使用最頻繁的寄存器,使用最頻繁的寄存器,可可寫為寫為AccAcc。“A A”與與“AccAcc” ” 書寫上的差別,將在第書寫上的差別,將在第3 3章介紹。章介紹。作用如下:作用如下:(1 1)ALUALU單元的輸入數(shù)據(jù)源之一,又是單元的輸入數(shù)據(jù)源之一,又是ALUALU運(yùn)算結(jié)果運(yùn)算結(jié)果存放單元存放單元。(2 2)數(shù)據(jù)傳送大多都通過累加器)數(shù)據(jù)傳送大多都通過累加器A A,相當(dāng)于數(shù)據(jù)的,相當(dāng)于數(shù)據(jù)的中轉(zhuǎn)站。為解決中轉(zhuǎn)站。為解決“瓶頸堵塞瓶頸堵塞”問題,問題,AT89S5
23、1AT89S51增加增加了一部分可以不經(jīng)過累加器的傳送指令。了一部分可以不經(jīng)過累加器的傳送指令。A A的進(jìn)位標(biāo)志的進(jìn)位標(biāo)志CyCy是特殊的,因?yàn)樗瑫r(shí)又是是特殊的,因?yàn)樗瑫r(shí)又是位處理機(jī)位處理機(jī)的的位累加器位累加器第24頁/共102頁253 3程序狀態(tài)字寄存器程序狀態(tài)字寄存器PSWPSWPSWPSW(Program Status WordProgram Status Word)位于片內(nèi)特殊功能寄)位于片內(nèi)特殊功能寄存器區(qū),存器區(qū),字節(jié)地址為字節(jié)地址為D0HD0H。包含了包含了程序運(yùn)行狀態(tài)的信息程序運(yùn)行狀態(tài)的信息,其中,其中4 4位保存當(dāng)前指令執(zhí)位保存當(dāng)前指令執(zhí)行后的狀態(tài),供程序查詢和判斷。行后
24、的狀態(tài),供程序查詢和判斷。格式如圖格式如圖2-32-3所示所示。圖2-32-3 PSW PSW的格式第25頁/共102頁26PSWPSW中各個(gè)位的功能中各個(gè)位的功能:(1 1)CyCy(PSW.7PSW.7)進(jìn)位標(biāo)志位)進(jìn)位標(biāo)志位 可寫為可寫為C C。在算術(shù)和邏輯運(yùn)算時(shí),若有。在算術(shù)和邏輯運(yùn)算時(shí),若有進(jìn)位進(jìn)位/ /借位借位,CyCy1 1;否則,;否則,CyCy0 0。在位處理器中,它是位累加器。在位處理器中,它是位累加器。(2 2)AcAc(PSW.6PSW.6)輔助進(jìn)位標(biāo)志位)輔助進(jìn)位標(biāo)志位 在在BCDBCD碼運(yùn)算時(shí),用作十進(jìn)位調(diào)整。即當(dāng)碼運(yùn)算時(shí),用作十進(jìn)位調(diào)整。即當(dāng)D3D3位向位向D4D
25、4位產(chǎn)生進(jìn)位或借位時(shí),位產(chǎn)生進(jìn)位或借位時(shí),AcAc1 1;否則,;否則,AcAc0 0。(3 3)F0F0(PSW.5PSW.5)用戶設(shè)定標(biāo)志位)用戶設(shè)定標(biāo)志位 由用戶使用的一個(gè)狀態(tài)標(biāo)志位,可用指令來使它置由用戶使用的一個(gè)狀態(tài)標(biāo)志位,可用指令來使它置1 1或清或清0 0,控制程序的流向。用戶應(yīng)充分利用??刂瞥绦虻牧飨颉S脩魬?yīng)充分利用。第26頁/共102頁27(4 4)RS1RS1、RS0RS0(PSW.4PSW.4、PSW.3PSW.3)4 4組工作寄存器區(qū)選組工作寄存器區(qū)選擇擇選擇片內(nèi)選擇片內(nèi)RAMRAM區(qū)中的區(qū)中的4 4組工作寄存器區(qū)中的某一組為當(dāng)組工作寄存器區(qū)中的某一組為當(dāng)前工作寄存區(qū)前
26、工作寄存區(qū)見見表表2-22-2。(5 5)OVOV(PSW.2PSW.2)溢出標(biāo)志位)溢出標(biāo)志位當(dāng)執(zhí)行算術(shù)指令時(shí),用來指示運(yùn)算結(jié)果是否產(chǎn)生溢出。當(dāng)執(zhí)行算術(shù)指令時(shí),用來指示運(yùn)算結(jié)果是否產(chǎn)生溢出。如果結(jié)果產(chǎn)生溢出,如果結(jié)果產(chǎn)生溢出,OV=1OV=1;否則,;否則,OV=0OV=0。(6 6)PSW.1PSW.1位位 保留位保留位(7 7)P P(PSW.0PSW.0)奇偶標(biāo)志位)奇偶標(biāo)志位指令執(zhí)行完,累加器指令執(zhí)行完,累加器A A中中“1 1”的個(gè)數(shù)的個(gè)數(shù)是是奇數(shù)奇數(shù)還是還是偶數(shù)偶數(shù)。第27頁/共102頁28P=1P=1,表示表示A A中中“1 1”的個(gè)數(shù)為的個(gè)數(shù)為奇數(shù)奇數(shù)。P=0P=0,表示,表
27、示A A中中“1 1”的個(gè)數(shù)為的個(gè)數(shù)為偶數(shù)偶數(shù)。此標(biāo)志位對(duì)串行通信有重要的意義此標(biāo)志位對(duì)串行通信有重要的意義,常用常用奇偶檢奇偶檢驗(yàn)驗(yàn)的方法來檢驗(yàn)數(shù)據(jù)串行傳輸?shù)目煽啃?。的方法來檢驗(yàn)數(shù)據(jù)串行傳輸?shù)目煽啃?。?8頁/共102頁292.3.2 2.3.2 控制器控制器 任務(wù)任務(wù)識(shí)別指令,并根據(jù)指令的性質(zhì)控制單片機(jī)各功識(shí)別指令,并根據(jù)指令的性質(zhì)控制單片機(jī)各功能部件,從而保證單片機(jī)各部分能自動(dòng)協(xié)調(diào)地工作。能部件,從而保證單片機(jī)各部分能自動(dòng)協(xié)調(diào)地工作。 控制器包括控制器包括:程序計(jì)數(shù)器、指令寄存器、指令譯碼程序計(jì)數(shù)器、指令寄存器、指令譯碼器、定時(shí)及控制邏輯電路等。功能是控制指令的讀入、器、定時(shí)及控制邏輯電
28、路等。功能是控制指令的讀入、譯碼和執(zhí)行,從而對(duì)各功能部件進(jìn)行定時(shí)和邏輯控制。譯碼和執(zhí)行,從而對(duì)各功能部件進(jìn)行定時(shí)和邏輯控制。 程序計(jì)數(shù)器程序計(jì)數(shù)器PCPC是一個(gè)獨(dú)立的是一個(gè)獨(dú)立的1616位計(jì)數(shù)器,不可訪問。位計(jì)數(shù)器,不可訪問。單片機(jī)復(fù)位時(shí),單片機(jī)復(fù)位時(shí),PCPC中內(nèi)容為中內(nèi)容為0000H0000H,從程序存儲(chǔ)器,從程序存儲(chǔ)器0000H0000H單元取指令,開始執(zhí)行程序。單元取指令,開始執(zhí)行程序。 第29頁/共102頁30 PCPC工作過程是工作過程是:CPUCPU讀指令時(shí),讀指令時(shí),PCPC的內(nèi)容作為所取指的內(nèi)容作為所取指令的地址,程序存儲(chǔ)器按此地址輸出指令字節(jié),同令的地址,程序存儲(chǔ)器按此地址
29、輸出指令字節(jié),同時(shí)時(shí)PCPC自動(dòng)加自動(dòng)加1 1。PCPC中內(nèi)容變化軌跡中內(nèi)容變化軌跡決定程序流程。當(dāng)決定程序流程。當(dāng)順序執(zhí)行順序執(zhí)行程序時(shí)程序時(shí)自動(dòng)加自動(dòng)加1 1;執(zhí)行;執(zhí)行轉(zhuǎn)移程序轉(zhuǎn)移程序或或子程序、中斷子程序調(diào)用子程序、中斷子程序調(diào)用時(shí),自動(dòng)將其內(nèi)容更改成所要轉(zhuǎn)移的目的地址。時(shí),自動(dòng)將其內(nèi)容更改成所要轉(zhuǎn)移的目的地址。 PC PC的計(jì)數(shù)寬度的計(jì)數(shù)寬度決定了程序存儲(chǔ)器的地址范圍。決定了程序存儲(chǔ)器的地址范圍。PCPC為為1616位,故可對(duì)位,故可對(duì)64KB64KB(=2=21616B B)尋址。尋址。第30頁/共102頁312.4 AT89S512.4 AT89S51存儲(chǔ)器的結(jié)構(gòu)存儲(chǔ)器的結(jié)構(gòu)存儲(chǔ)
30、器存儲(chǔ)器的的結(jié)構(gòu)特點(diǎn)之一是將程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)特點(diǎn)之一是將程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開器分開(哈佛結(jié)構(gòu)),(哈佛結(jié)構(gòu)),并有并有各自各自的訪問指令。的訪問指令。存儲(chǔ)器空間可分為存儲(chǔ)器空間可分為4 4類類。. .程序存儲(chǔ)器空間程序存儲(chǔ)器空間片內(nèi)和片外兩部分。片內(nèi)和片外兩部分。片內(nèi)片內(nèi)4KB4KB FlashFlash ,編程和擦除完全是電氣實(shí)現(xiàn)??桑幊毯筒脸耆请姎鈱?shí)現(xiàn)。可用通用編程器對(duì)其編程,也可用通用編程器對(duì)其編程,也可在線編程在線編程。當(dāng)片內(nèi)當(dāng)片內(nèi)4KB Flash 4KB Flash 存儲(chǔ)器不夠用時(shí),可片外擴(kuò)展,存儲(chǔ)器不夠用時(shí),可片外擴(kuò)展,最多可擴(kuò)展至最多可擴(kuò)展至64KB64KB
31、程序存儲(chǔ)器。程序存儲(chǔ)器。第31頁/共102頁32. .數(shù)據(jù)存儲(chǔ)器空間數(shù)據(jù)存儲(chǔ)器空間片內(nèi)片內(nèi)與與片外片外兩部分。兩部分。片內(nèi)有片內(nèi)有128 B RAM128 B RAM(5252子系列子系列為為256B256B)。片內(nèi)片內(nèi)RAMRAM不夠用時(shí),在不夠用時(shí),在片外可擴(kuò)至片外可擴(kuò)至64KB 64KB RAMRAM 。. .特殊功能寄存器特殊功能寄存器SFRSFR (Special Function Special Function RegisterRegister)片內(nèi)各功能部件的控制寄存器及狀態(tài)寄存器。片內(nèi)各功能部件的控制寄存器及狀態(tài)寄存器。SFRSFR綜綜合反映了整個(gè)單片機(jī)基本系統(tǒng)內(nèi)部實(shí)際的工作
32、狀態(tài)合反映了整個(gè)單片機(jī)基本系統(tǒng)內(nèi)部實(shí)際的工作狀態(tài)及工作方式。及工作方式。. .位地址空間位地址空間共有共有211211個(gè)個(gè)可尋址位,構(gòu)成了位地址空間。位于內(nèi)部可尋址位,構(gòu)成了位地址空間。位于內(nèi)部 RAMRAM(共(共128128位)和特殊功能寄存器區(qū)(共位)和特殊功能寄存器區(qū)(共8383位)中。位)中。第32頁/共102頁332.4.1 2.4.1 程序存儲(chǔ)器空間程序存儲(chǔ)器空間存放程序和表格之類的固定常數(shù)。片內(nèi)為存放程序和表格之類的固定常數(shù)。片內(nèi)為4KB4KB的的 Flash Flash ,地址為,地址為0000H0000H0FFFH0FFFH。1616位地址線,可外位地址線,可外擴(kuò)的程序存儲(chǔ)
33、器空間最大為擴(kuò)的程序存儲(chǔ)器空間最大為64KB64KB,地址為,地址為0000H0000HFFFFHFFFFH。使用使用時(shí)時(shí)應(yīng)注意以下問題應(yīng)注意以下問題:(1 1)分為)分為片內(nèi)片內(nèi)和和片外片外兩部分兩部分(2 2)程序存儲(chǔ)器某些固定單元)程序存儲(chǔ)器某些固定單元第33頁/共102頁34(1 1)分為)分為片內(nèi)片內(nèi)和和片外片外兩部分兩部分,訪問片內(nèi)的還是片外的,訪問片內(nèi)的還是片外的程序存儲(chǔ)器,由程序存儲(chǔ)器,由 引腳電平引腳電平確定。確定。 =1 =1時(shí),時(shí),CPUCPU從片內(nèi)從片內(nèi)0000H0000H開始取指令,開始取指令,當(dāng)當(dāng)PCPC值值沒有超出沒有超出0FFFH0FFFH時(shí),只訪問片內(nèi)時(shí),只訪
34、問片內(nèi)Flash Flash 存儲(chǔ)器,存儲(chǔ)器,當(dāng)當(dāng)PCPC值超出值超出0FFFH0FFFH自動(dòng)轉(zhuǎn)向讀片外程序存儲(chǔ)器空間自動(dòng)轉(zhuǎn)向讀片外程序存儲(chǔ)器空間1000H1000HFFFFH FFFFH 內(nèi)的程序。內(nèi)的程序。 =0 =0時(shí),只能執(zhí)行片外程序存儲(chǔ)器(時(shí),只能執(zhí)行片外程序存儲(chǔ)器(0000H0000HFFFFHFFFFH)中的程序。不理會(huì)片內(nèi))中的程序。不理會(huì)片內(nèi)4KB Flash 4KB Flash 存儲(chǔ)器。存儲(chǔ)器。EAEAEA第34頁/共102頁35(2 2)程序存儲(chǔ)器某些固定單元)程序存儲(chǔ)器某些固定單元用于各中斷源中斷服用于各中斷源中斷服務(wù)程序入口。務(wù)程序入口。64KB64KB程序存儲(chǔ)器空間
35、中有5 5個(gè)特殊單元分別對(duì)應(yīng)于5 5個(gè)中斷源的中斷入口地址,見表2-32-3。通常這5 5個(gè)中斷入口地址處都放一條跳轉(zhuǎn)指令跳向?qū)?yīng)的中斷服務(wù)子程序,而不是直接存放中斷服務(wù)子程序。第35頁/共102頁362.4.2 2.4.2 數(shù)據(jù)存儲(chǔ)器空間數(shù)據(jù)存儲(chǔ)器空間 片內(nèi)與片外兩部分。片內(nèi)與片外兩部分。. .片內(nèi)數(shù)據(jù)存儲(chǔ)器片內(nèi)數(shù)據(jù)存儲(chǔ)器 片內(nèi)數(shù)據(jù)存儲(chǔ)器(片內(nèi)數(shù)據(jù)存儲(chǔ)器(RAMRAM)共)共128128個(gè)單個(gè)單元,字節(jié)地址元,字節(jié)地址為為00H00H7FH7FH。圖圖2-42-4為片內(nèi)數(shù)據(jù)存儲(chǔ)器的結(jié)構(gòu)。為片內(nèi)數(shù)據(jù)存儲(chǔ)器的結(jié)構(gòu)。00H00H1FH1FH 的的3232個(gè)單元個(gè)單元是是4 4組通用工組通用工作寄存
36、器區(qū),每區(qū)包含作寄存器區(qū),每區(qū)包含8B8B,為,為R7R7R0R0。可??赏ㄟ^指令改變通過指令改變RS1RS1、RS0RS0兩位兩位來選擇。來選擇。20H20H2FH2FH的的1616個(gè)個(gè)單元的單元的128128位可位尋位可位尋址,也可字節(jié)尋址。址,也可字節(jié)尋址。30H30H7FH7FH的單元只能字節(jié)尋址,用作的單元只能字節(jié)尋址,用作存數(shù)據(jù)以及作為堆棧區(qū)。存數(shù)據(jù)以及作為堆棧區(qū)。第36頁/共102頁37. .片外數(shù)據(jù)存儲(chǔ)器片外數(shù)據(jù)存儲(chǔ)器當(dāng)片內(nèi)當(dāng)片內(nèi)128B128B的的RAMRAM不夠用時(shí),需外擴(kuò),最多可外擴(kuò)不夠用時(shí),需外擴(kuò),最多可外擴(kuò)64KB64KB的的RAMRAM。注意,片內(nèi)注意,片內(nèi)RAMR
37、AM與片外與片外RAMRAM兩個(gè)空間是兩個(gè)空間是相互獨(dú)立的,相互獨(dú)立的,片內(nèi)片內(nèi)RAMRAM與片外與片外RAMRAM的低的低128B128B的地址是的地址是相同的相同的,但由于使用的是不同的訪問指令,所以不,但由于使用的是不同的訪問指令,所以不會(huì)發(fā)生沖突。會(huì)發(fā)生沖突。第37頁/共102頁382.4.3 2.4.3 特殊功能寄存器(特殊功能寄存器(SFRSFR)采用特殊功能寄存器集中控制采用特殊功能寄存器集中控制各功能部件各功能部件。特殊功能特殊功能寄存器寄存器映射在片內(nèi)映射在片內(nèi)RAMRAM的的 80H80HFFH FFH 區(qū)域區(qū)域中,共中,共2626個(gè)個(gè)。SFRSFR的名稱及其分布的名稱及其
38、分布 ,有些還可位尋址,有些還可位尋址, ,見見表表2-4 2-4 。與與AT89C51AT89C51相比,相比,新增新增5 5個(gè)個(gè)SFRSFR:DP1LDP1L、DP1HDP1H、AUXRAUXR、AUXR1AUXR1和和WDTRSTWDTRST,已在,已在表表2-42-4中標(biāo)出。中標(biāo)出。凡是凡是可位尋址的可位尋址的SFRSFR,字節(jié)地址末位只能是,字節(jié)地址末位只能是0H0H或或8H8H。另外,若讀另外,若讀/ /寫寫未未定義單元,將得到一個(gè)不確定的隨定義單元,將得到一個(gè)不確定的隨機(jī)數(shù)。機(jī)數(shù)。下面介紹某些下面介紹某些SFRSFR,余下的,余下的SFRSFR將在后將在后面面介紹。介紹。第38頁
39、/共102頁39第39頁/共102頁40第40頁/共102頁411 1堆棧指針堆棧指針SPSP指示堆棧頂部在內(nèi)部指示堆棧頂部在內(nèi)部RAMRAM塊中的位置。塊中的位置。堆棧結(jié)構(gòu)堆棧結(jié)構(gòu)向上生長(zhǎng)型向上生長(zhǎng)型。單片機(jī)。單片機(jī)復(fù)位復(fù)位后,后,SPSP為為07H07H,使得堆棧實(shí)際上從使得堆棧實(shí)際上從08H08H單元開始,單元開始,由于由于08H08H1FH1FH單單元分別是屬于元分別是屬于1 13 3組的工作寄存器區(qū),組的工作寄存器區(qū),最好在復(fù)最好在復(fù)位位后后把把SPSP值改置為值改置為60H60H或更大的值或更大的值,避免堆棧與工,避免堆棧與工作寄存器沖突。作寄存器沖突。堆棧是為堆棧是為子程序調(diào)用子
40、程序調(diào)用和和中斷操作中斷操作而設(shè)而設(shè),主要主要用來用來保保護(hù)斷點(diǎn)護(hù)斷點(diǎn)和和現(xiàn)場(chǎng)現(xiàn)場(chǎng)。第41頁/共102頁421 1堆棧指針堆棧指針SPSP(1 1)保護(hù)斷點(diǎn)。)保護(hù)斷點(diǎn)。無論是子程序調(diào)用操作還是中斷服務(wù)無論是子程序調(diào)用操作還是中斷服務(wù)子程序調(diào)用,最終都要返回主程序。應(yīng)預(yù)先把主程子程序調(diào)用,最終都要返回主程序。應(yīng)預(yù)先把主程序的斷點(diǎn)在堆棧中保護(hù)起來,為程序正確返回做準(zhǔn)序的斷點(diǎn)在堆棧中保護(hù)起來,為程序正確返回做準(zhǔn)備。備。(2 2)現(xiàn)場(chǎng)保護(hù)。)現(xiàn)場(chǎng)保護(hù)。執(zhí)行子程序或中斷服務(wù)子程序時(shí),要執(zhí)行子程序或中斷服務(wù)子程序時(shí),要用到一些寄存器單元,會(huì)破壞原有內(nèi)容。要把有關(guān)用到一些寄存器單元,會(huì)破壞原有內(nèi)容。要把有
41、關(guān)寄存器單元的內(nèi)容保存起來,送入堆棧,這就是所寄存器單元的內(nèi)容保存起來,送入堆棧,這就是所謂的謂的“現(xiàn)場(chǎng)保護(hù)現(xiàn)場(chǎng)保護(hù)”。兩種操作:兩種操作:數(shù)據(jù)壓入數(shù)據(jù)壓入(PUSHPUSH)堆棧,堆棧,數(shù)據(jù)彈出數(shù)據(jù)彈出(POPPOP)堆棧。數(shù)據(jù)壓入堆棧,堆棧。數(shù)據(jù)壓入堆棧,SPSP自動(dòng)加自動(dòng)加1 1;數(shù)據(jù)彈出堆棧,;數(shù)據(jù)彈出堆棧,SPSP自動(dòng)減自動(dòng)減1 1。第42頁/共102頁432 2寄存器寄存器B B為執(zhí)行乘法和除法為執(zhí)行乘法和除法而而設(shè)。在不執(zhí)行乘、除法操作的設(shè)。在不執(zhí)行乘、除法操作的情況下,可把它當(dāng)作一個(gè)普通寄存器來使用。情況下,可把它當(dāng)作一個(gè)普通寄存器來使用。乘法乘法,兩乘數(shù)分別在,兩乘數(shù)分別在A
42、 A、B B中,執(zhí)行乘法指令后,乘中,執(zhí)行乘法指令后,乘積在積在BABA中中除法除法,被除數(shù)取自,被除數(shù)取自A A,除數(shù)取自,除數(shù)取自B B,商存放在,商存放在A A中,中,余數(shù)存余數(shù)存B B中。中。第43頁/共102頁443 3AUXRAUXR寄存器寄存器 AUXR AUXR是輔助寄存器,其格式如是輔助寄存器,其格式如圖圖2-52-5所示所示:圖2-52-5 AUXRAUXR寄存器的格式其中: :DISALEDISALE:ALEALE的禁止/ /允許位。0 0:ALEALE有效,發(fā)出脈沖; 1 1:ALEALE僅在執(zhí)行MOVCMOVC和MOVXMOVX類指令時(shí)有效,不訪問外部存儲(chǔ)器時(shí),ALE
43、ALE不輸出脈沖信號(hào)。第44頁/共102頁45DISRTODISRTO:禁止禁止/ /允許允許WDTWDT溢出時(shí)的復(fù)位輸出溢出時(shí)的復(fù)位輸出。0 0:WDTWDT溢出時(shí),在溢出時(shí),在RSTRST引腳輸出一個(gè)高電平脈沖;引腳輸出一個(gè)高電平脈沖;1 1:RSTRST引腳僅為輸入腳。引腳僅為輸入腳。WDIDLEWDIDLE:WDTWDT在空閑模式下的禁止在空閑模式下的禁止/ /允許位。允許位。 0 0: WDTWDT在空閑模式下繼續(xù)計(jì)數(shù);在空閑模式下繼續(xù)計(jì)數(shù); 1 1: WDTWDT在空閑模式下暫停計(jì)數(shù)。在空閑模式下暫停計(jì)數(shù)。第45頁/共102頁464. 4. 數(shù)據(jù)指針數(shù)據(jù)指針DPTR0DPTR0和和
44、DPTR1DPTR1雙數(shù)據(jù)指針寄存器雙數(shù)據(jù)指針寄存器,便于訪問便于訪問數(shù)據(jù)存儲(chǔ)器數(shù)據(jù)存儲(chǔ)器。DPTR0DPTR0:AT89C51AT89C51單片機(jī)單片機(jī)原有原有的數(shù)據(jù)指針的數(shù)據(jù)指針;DPTR1DPTR1:新增加新增加的數(shù)據(jù)指針。的數(shù)據(jù)指針。AUXR1AUXR1的的DPSDPS位位用于用于選擇選擇兩個(gè)數(shù)據(jù)指針兩個(gè)數(shù)據(jù)指針。當(dāng)。當(dāng)DPS=0DPS=0時(shí),時(shí),選用選用DPTR0DPTR0;當(dāng);當(dāng)DPS=1DPS=1時(shí),選用時(shí),選用DPTR1DPTR1。數(shù)據(jù)指針數(shù)據(jù)指針可作為一個(gè)可作為一個(gè)1616位寄存器來用,也可作為兩個(gè)位寄存器來用,也可作為兩個(gè)獨(dú)立的獨(dú)立的8 8位寄存器位寄存器DP0HDP0H(
45、或(或DP1HDP1H)和)和DP0LDP0L(或(或DP1LDP1L)來用。來用。第46頁/共102頁475. AUXR15. AUXR1寄存器寄存器AUXR1AUXR1是輔助寄存器,格式如是輔助寄存器,格式如圖圖2-62-6所示所示: DPSDPS:數(shù)據(jù)指針寄存器選擇位。數(shù)據(jù)指針寄存器選擇位。0 0:選擇數(shù)據(jù)指針寄存器選擇數(shù)據(jù)指針寄存器DPTR0DPTR0;1 1:選擇數(shù)據(jù)指針寄存器選擇數(shù)據(jù)指針寄存器DPTR1DPTR1。圖2-62-6 AUXR1AUXR1寄存器的格式第47頁/共102頁486. 6. 看門狗定時(shí)器看門狗定時(shí)器WDTWDTWDTWDT包含一個(gè)包含一個(gè)1414位計(jì)數(shù)器位計(jì)數(shù)
46、器和和看門狗定時(shí)器復(fù)位寄存看門狗定時(shí)器復(fù)位寄存器器(WDTRSTWDTRST)。)。當(dāng)當(dāng)CPUCPU由于干擾,程序陷入死循環(huán)或跑飛狀態(tài)時(shí),由于干擾,程序陷入死循環(huán)或跑飛狀態(tài)時(shí),WDTWDT提供了一種使程序恢復(fù)正常運(yùn)行的有效手段。提供了一種使程序恢復(fù)正常運(yùn)行的有效手段。有關(guān)有關(guān)WDTWDT在抗干擾設(shè)計(jì)中的應(yīng)用以及低功耗模式下運(yùn)在抗干擾設(shè)計(jì)中的應(yīng)用以及低功耗模式下運(yùn)行的狀態(tài),將在相應(yīng)的章節(jié)中具體介紹。行的狀態(tài),將在相應(yīng)的章節(jié)中具體介紹。上面介紹的特殊功能寄存器,上面介紹的特殊功能寄存器,除了前兩個(gè)除了前兩個(gè)SPSP和和B B以外,以外,其余的均為其余的均為AT89S51AT89S51在在AT89C
47、51AT89C51基礎(chǔ)上基礎(chǔ)上新增加的新增加的SFRSFR。第48頁/共102頁492.4.4 2.4.4 位地址空間位地址空間211211個(gè)尋址位的位地址,位地址范圍為個(gè)尋址位的位地址,位地址范圍為 00H00HFFHFFH,其,其中中 00H00H7FH7FH 這這128128位處于位處于片內(nèi)片內(nèi)RAM RAM 字節(jié)地址字節(jié)地址 20H20H2FH2FH 單元中,如單元中,如表表2-52-5所示。其余的所示。其余的8383個(gè)可尋個(gè)可尋址位址位分布在分布在特殊功能寄存器特殊功能寄存器SFRSFR中,中,見見表表2-62-6??杀晃粚ぶ返目杀晃粚ぶ返奶厥饧拇嫫魈厥饧拇嫫饔杏?111個(gè)個(gè),共有位
48、地址,共有位地址8888個(gè),個(gè),5 5個(gè)位未用,其余個(gè)位未用,其余8383個(gè)位的位地址離散地分布于片內(nèi)個(gè)位的位地址離散地分布于片內(nèi)數(shù)據(jù)存儲(chǔ)器區(qū)字節(jié)地址為數(shù)據(jù)存儲(chǔ)器區(qū)字節(jié)地址為80H80HFFHFFH的范圍內(nèi),其的范圍內(nèi),其最最低的位地址等于其字節(jié)地址低的位地址等于其字節(jié)地址,且其字節(jié)地址的,且其字節(jié)地址的末位末位都為都為0H0H或或8H8H。第49頁/共102頁50第50頁/共102頁51特殊功能寄存器位 地 址字 節(jié)地 址D7D6D5D4D3D2D1D0BF7HF6HF5HF4HF3HF2HF1HF0HF0HAccE7HE6HE5HE4HE3HE2HE1HE0HE0HPSWD7HD6HD5H
49、D4HD3HD2HD1HD0HD0HIPBCHBBHBAHB9HB8HB8HP3B7HB6HB5HB4HB3HB2HB1HB0HB0HIEAFHACHABHAAHA9HA8HA8HP2A7HA6HA5HA4HA3HA2HA1HA0HA0HSCON9FH9EH9DH9CH9BH9AH99H98H98HP197H96H95H94H93H92H91H90H90HTCON8FH8EH8DH8CH8BH8AH89H88H88HP087H86H85H84H83H82H81H80H80H表2-6 SFR中的位地址分布第51頁/共102頁52 作為對(duì)作為對(duì)AT89S51AT89S51存儲(chǔ)器結(jié)構(gòu)的總結(jié),存儲(chǔ)器結(jié)
50、構(gòu)的總結(jié),圖圖2-72-7為為各類存儲(chǔ)器的結(jié)構(gòu)圖。各類存儲(chǔ)器的結(jié)構(gòu)圖。從圖中可從圖中可清楚看出各類存儲(chǔ)清楚看出各類存儲(chǔ)器在存儲(chǔ)器空間的位置。器在存儲(chǔ)器空間的位置。第52頁/共102頁532.5 AT89S512.5 AT89S51的并行的并行I/OI/O端口端口4 4個(gè)雙向的個(gè)雙向的8 8位并行位并行I/OI/O端口,分別記為端口,分別記為P0P0、P1P1、P2P2和和P3P3,其中,其中輸出鎖存器輸出鎖存器屬于屬于特殊功能寄存器特殊功能寄存器。端口的。端口的每一位均由輸出鎖存器、輸出驅(qū)動(dòng)器和輸入緩沖器每一位均由輸出鎖存器、輸出驅(qū)動(dòng)器和輸入緩沖器組成,組成,4 4個(gè)端口按個(gè)端口按字節(jié)輸入字節(jié)
51、輸入/ /輸出輸出外,外,也也可可位尋址位尋址。2.5.1 P02.5.1 P0口口P0P0口是一個(gè)口是一個(gè)雙功能雙功能的的8 8位并行端口,位并行端口,字節(jié)地址字節(jié)地址為為80H80H,位地址為位地址為80H80H87H87H。端口的各位具有完全相同但又。端口的各位具有完全相同但又相互獨(dú)立的電路結(jié)構(gòu),相互獨(dú)立的電路結(jié)構(gòu),P0P0口口某一位的某一位的位電路結(jié)構(gòu)位電路結(jié)構(gòu)如如圖圖2-82-8所示所示。第53頁/共102頁54第54頁/共102頁551 1位電路結(jié)構(gòu)位電路結(jié)構(gòu) P0 P0口某一位的電路包括:口某一位的電路包括:(1 1)一個(gè)數(shù)據(jù)輸出的鎖存器,用于數(shù)據(jù)位的鎖存。)一個(gè)數(shù)據(jù)輸出的鎖存器
52、,用于數(shù)據(jù)位的鎖存。(2 2)兩個(gè)三態(tài)的數(shù)據(jù)輸入緩沖器,分別是用于)兩個(gè)三態(tài)的數(shù)據(jù)輸入緩沖器,分別是用于讀鎖存讀鎖存器數(shù)據(jù)器數(shù)據(jù)的輸入緩沖器的輸入緩沖器BUF1BUF1和和讀引腳數(shù)據(jù)讀引腳數(shù)據(jù)的輸入緩沖器的輸入緩沖器BUF2BUF2。(3 3)一個(gè)多路轉(zhuǎn)接開關(guān))一個(gè)多路轉(zhuǎn)接開關(guān)MUXMUX,它的一個(gè)輸入來自鎖存,它的一個(gè)輸入來自鎖存器的器的 端,另一個(gè)輸入為地址端,另一個(gè)輸入為地址/ /數(shù)據(jù)信號(hào)的反相輸出。數(shù)據(jù)信號(hào)的反相輸出。MUXMUX由由“控制控制”信號(hào)控制,實(shí)現(xiàn)鎖存器的輸出和地址信號(hào)控制,實(shí)現(xiàn)鎖存器的輸出和地址/ /數(shù)據(jù)信號(hào)之間的轉(zhuǎn)接。數(shù)據(jù)信號(hào)之間的轉(zhuǎn)接。(4 4)數(shù)據(jù)輸出的)數(shù)據(jù)輸出的
53、控制和驅(qū)動(dòng)電路控制和驅(qū)動(dòng)電路,由,由兩個(gè)場(chǎng)效應(yīng)管兩個(gè)場(chǎng)效應(yīng)管(FETFET)組成。)組成。第55頁/共102頁562 2工作過程分析工作過程分析(1 1)P0P0口用作地址口用作地址/ /數(shù)據(jù)總線數(shù)據(jù)總線外擴(kuò)存儲(chǔ)器或外擴(kuò)存儲(chǔ)器或I/OI/O時(shí),時(shí),P0P0口作為單片機(jī)系統(tǒng)口作為單片機(jī)系統(tǒng)復(fù)用的復(fù)用的地地址址/ /數(shù)據(jù)總線使用。數(shù)據(jù)總線使用。當(dāng)作為當(dāng)作為地址或數(shù)據(jù)輸出地址或數(shù)據(jù)輸出時(shí),時(shí),“控制控制”信號(hào)為信號(hào)為1 1,硬件自,硬件自動(dòng)使轉(zhuǎn)接開關(guān)動(dòng)使轉(zhuǎn)接開關(guān)MUXMUX打向上面,接通反相器的輸出,同打向上面,接通反相器的輸出,同時(shí)使與門處于開啟狀態(tài)。時(shí)使與門處于開啟狀態(tài)。當(dāng)當(dāng)輸出的地址輸出的地址
54、/ /數(shù)據(jù)信息為數(shù)據(jù)信息為1 1時(shí),與門輸出為時(shí),與門輸出為1 1,上方的,上方的場(chǎng)效應(yīng)管導(dǎo)通,下方的場(chǎng)效應(yīng)管截止,場(chǎng)效應(yīng)管導(dǎo)通,下方的場(chǎng)效應(yīng)管截止,P0.xP0.x引腳輸引腳輸出為出為1 1;當(dāng)輸出的地址當(dāng)輸出的地址/ /數(shù)據(jù)信息為數(shù)據(jù)信息為0 0時(shí),時(shí),上方的場(chǎng)效上方的場(chǎng)效應(yīng)管應(yīng)管截止截止,下方的場(chǎng)效應(yīng)管下方的場(chǎng)效應(yīng)管導(dǎo)通導(dǎo)通,P0.xP0.x引腳輸出為引腳輸出為0 0。第56頁/共102頁57輸出電路是輸出電路是上、下兩個(gè)場(chǎng)效應(yīng)管形成的上、下兩個(gè)場(chǎng)效應(yīng)管形成的推拉式結(jié)構(gòu)推拉式結(jié)構(gòu),大大提,大大提高了負(fù)載能力,上方的場(chǎng)效應(yīng)管這時(shí)起到高了負(fù)載能力,上方的場(chǎng)效應(yīng)管這時(shí)起到內(nèi)部上拉電阻內(nèi)部上拉電
55、阻的的作用。作用。當(dāng)當(dāng)P0P0口作為口作為數(shù)據(jù)數(shù)據(jù)輸入時(shí)輸入時(shí),僅從外部存儲(chǔ)器(或,僅從外部存儲(chǔ)器(或I/OI/O)讀入信)讀入信息,對(duì)應(yīng)的息,對(duì)應(yīng)的“控制控制”信號(hào)為信號(hào)為0 0,MUXMUX接通鎖存器的接通鎖存器的 端。端。由于由于P0P0口作為地址口作為地址/ /數(shù)據(jù)復(fù)用方式訪問外部存儲(chǔ)器時(shí),數(shù)據(jù)復(fù)用方式訪問外部存儲(chǔ)器時(shí),CPUCPU自自動(dòng)向動(dòng)向P0P0口寫入口寫入FFHFFH,使下方場(chǎng)效應(yīng)管截止,上方場(chǎng)效應(yīng)管,使下方場(chǎng)效應(yīng)管截止,上方場(chǎng)效應(yīng)管由于控制信號(hào)為由于控制信號(hào)為0 0也截止,從而也截止,從而保證數(shù)據(jù)信息的保證數(shù)據(jù)信息的高阻抗高阻抗輸輸入入,從外部存儲(chǔ)器輸入的數(shù)據(jù)信息直接由,從外
56、部存儲(chǔ)器輸入的數(shù)據(jù)信息直接由P0.xP0.x引腳通過輸引腳通過輸入緩沖器入緩沖器BUF2BUF2進(jìn)入內(nèi)部總線。進(jìn)入內(nèi)部總線。具有具有高阻抗輸入的高阻抗輸入的I/OI/O口口應(yīng)具有應(yīng)具有高電平高電平、低電平低電平和和高阻抗高阻抗3 3種種狀態(tài)狀態(tài)的端口。因此,的端口。因此,P0P0口作為地址口作為地址/ /數(shù)據(jù)總線使用時(shí)是一數(shù)據(jù)總線使用時(shí)是一個(gè)真正的雙向端口,簡(jiǎn)稱個(gè)真正的雙向端口,簡(jiǎn)稱雙向口雙向口。Q第57頁/共102頁58(2 2)P0P0口用作通用口用作通用I/OI/O口口當(dāng)當(dāng)P0P0口不作為系統(tǒng)的地址口不作為系統(tǒng)的地址/ /數(shù)據(jù)總線使用時(shí),此時(shí)數(shù)據(jù)總線使用時(shí),此時(shí)P0P0口口也可作為通用的
57、也可作為通用的I/OI/O口使用。口使用。作通用的作通用的I/OI/O口時(shí),對(duì)應(yīng)的口時(shí),對(duì)應(yīng)的“控制控制”信號(hào)為信號(hào)為0 0,MUXMUX打向打向下面,接通鎖存器的下面,接通鎖存器的 端,端,“與門與門”輸出為輸出為0 0,上方場(chǎng),上方場(chǎng)效應(yīng)管截止,形成的效應(yīng)管截止,形成的P0P0口輸出電路為漏極開路輸出??谳敵鲭娐窞槁O開路輸出。P0P0口作輸出口口作輸出口時(shí),來自時(shí),來自CPUCPU的的“寫寫”脈沖加在脈沖加在D D鎖存器鎖存器的的CPCP端,內(nèi)部總線上的數(shù)據(jù)寫入端,內(nèi)部總線上的數(shù)據(jù)寫入D D鎖存器,并由引腳鎖存器,并由引腳P0.xP0.x輸出。輸出。Q第58頁/共102頁59當(dāng)當(dāng)D D鎖
58、存器為鎖存器為1 1時(shí),時(shí), 端為端為0 0,下方場(chǎng)效應(yīng)管截止,輸出,下方場(chǎng)效應(yīng)管截止,輸出為漏極開路,此時(shí),必須外接上拉電阻才能有高電平輸為漏極開路,此時(shí),必須外接上拉電阻才能有高電平輸出;當(dāng)出;當(dāng)D D鎖存器為鎖存器為0 0時(shí),下方場(chǎng)效應(yīng)管導(dǎo)通,時(shí),下方場(chǎng)效應(yīng)管導(dǎo)通,P0P0口輸出為口輸出為低電平。低電平。P0P0口作輸入口口作輸入口使用時(shí),有使用時(shí),有兩種讀入方式兩種讀入方式:“讀鎖存器讀鎖存器”和和“讀引腳讀引腳”。當(dāng)當(dāng)CPUCPU發(fā)出發(fā)出“讀鎖存器讀鎖存器”指令時(shí),指令時(shí),鎖存器的狀態(tài)鎖存器的狀態(tài)由由Q Q端端經(jīng)上方的三態(tài)緩沖器經(jīng)上方的三態(tài)緩沖器BUF1BUF1進(jìn)入內(nèi)部總線;進(jìn)入內(nèi)部
59、總線;當(dāng)當(dāng)CPUCPU發(fā)出發(fā)出“讀引腳讀引腳”指令指令時(shí),鎖存器的輸出狀態(tài)時(shí),鎖存器的輸出狀態(tài)=1=1(即(即 端端為為0 0),而使下方場(chǎng)效應(yīng)管截止,),而使下方場(chǎng)效應(yīng)管截止,引腳的狀態(tài)引腳的狀態(tài)經(jīng)下方的三態(tài)緩沖器經(jīng)下方的三態(tài)緩沖器BUF2BUF2進(jìn)入內(nèi)部總線。進(jìn)入內(nèi)部總線。QQ第59頁/共102頁603 3P0P0口的特點(diǎn)口的特點(diǎn)P0P0口為口為雙功能口雙功能口地址地址/ /數(shù)據(jù)復(fù)用數(shù)據(jù)復(fù)用口和口和通用通用I/OI/O口。口。(1 1)當(dāng)用作當(dāng)用作地址地址/ /數(shù)據(jù)復(fù)用數(shù)據(jù)復(fù)用口時(shí),口時(shí), P0P0口是個(gè)口是個(gè)真正的雙向真正的雙向口口, 輸出低輸出低8 8位地址和輸出位地址和輸出/ /輸入
60、輸入8 8位數(shù)據(jù)。位數(shù)據(jù)。(2 2)當(dāng)當(dāng)P0P0口用作口用作通用通用I/OI/O口時(shí),由于需要在片外接上拉電口時(shí),由于需要在片外接上拉電阻,端口不存在高阻抗(懸?。顟B(tài),因此是一個(gè)阻,端口不存在高阻抗(懸?。顟B(tài),因此是一個(gè)準(zhǔn)雙向準(zhǔn)雙向口口。為保證引腳信號(hào)的為保證引腳信號(hào)的正確讀入正確讀入,應(yīng),應(yīng)首先向鎖存器寫首先向鎖存器寫1 1。單片。單片機(jī)復(fù)位后,鎖存器自動(dòng)被置機(jī)復(fù)位后,鎖存器自動(dòng)被置1 1;當(dāng);當(dāng)P0P0口由原來輸出轉(zhuǎn)變?yōu)榭谟稍瓉磔敵鲛D(zhuǎn)變?yōu)檩斎霑r(shí),應(yīng)先置鎖存器為輸入時(shí),應(yīng)先置鎖存器為1 1,方可執(zhí)行輸入操作。,方可執(zhí)行輸入操作。P0P0口口大多作為地址大多作為地址/ /數(shù)據(jù)復(fù)用口數(shù)據(jù)復(fù)用
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO/IEC 23090-26:2025 EN Information technology - Coded representation of immersive media - Part 26: Conformance and reference software for carriage of geometry-based point
- 2025至2030中國(guó)白色水泥行業(yè)發(fā)展分析及競(jìng)爭(zhēng)格局與發(fā)展趨勢(shì)預(yù)測(cè)報(bào)告
- 2025至2030中國(guó)男士帆布鞋行業(yè)供需趨勢(shì)及投資風(fēng)險(xiǎn)報(bào)告
- 2025至2030中國(guó)電商物流行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢(shì)及投資規(guī)劃深度研究報(bào)告
- 2025至2030中國(guó)特醫(yī)食品行業(yè)發(fā)展分析及前景趨勢(shì)與投資報(bào)告
- 培訓(xùn)課件軟件
- 智慧城市基礎(chǔ)設(shè)施建設(shè)中的通信電纜技術(shù)創(chuàng)新
- 幼兒園新教師健康教育培訓(xùn)
- 心理輔導(dǎo)在學(xué)生學(xué)習(xí)中的重要性
- 從學(xué)生到職業(yè)領(lǐng)袖的教育之路
- 2025年四川廣安愛眾股份有限公司招聘筆試參考題庫(kù)含答案解析
- 2024起重吊裝及起重機(jī)械安裝拆卸工程監(jiān)理作業(yè)指引
- 威脅情報(bào)收集與整合-洞察分析
- 期末教師會(huì)議校長(zhǎng)精彩講話:最后講了存在的問題
- 知名連鎖漢堡店食安QSC稽核表
- 攝影設(shè)備采購(gòu)合同范例
- DB41T 1812-2019 蘋果簡(jiǎn)約栽培技術(shù)規(guī)程
- 【《三只松鼠公司員工激勵(lì)現(xiàn)狀調(diào)查及優(yōu)化建議(附問卷)14000字》(論文)】
- 護(hù)理不良事件登記本及護(hù)理不良事件報(bào)告新規(guī)制度
- 農(nóng)業(yè)土壤檢測(cè)技術(shù)行業(yè)發(fā)展前景及投資風(fēng)險(xiǎn)預(yù)測(cè)分析報(bào)告
- 廣東省深圳市羅湖區(qū)2023-2024學(xué)年二年級(jí)下學(xué)期期末考試數(shù)學(xué)試題
評(píng)論
0/150
提交評(píng)論