




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
8051單片機是在一塊芯片中集成了CPU、存儲器(包括RAM和ROM)、定時器/計數(shù)器和多種功能的I/O線等一臺計算機的需要的基本功能部件。主要包括:一個8位CPU;一個片內振蕩器及時鐘電路;128字節(jié)RAM;4KBROM;兩個16位定時/計數(shù)器;32條可編程的I/O線;一個可編程的全雙工串行口;具有五個中斷源、兩個中斷優(yōu)先級嵌套中斷結構。圖2-4是8051單片機的內部結構框圖。它包含了作為微型計算機所必需的基本功能部件,各功能部件通過片內單一總線連成一個整體,集成在一塊芯片上。
2.18051單片機的結構第二章MCS-51系列單片機硬件結構與功能圖2-4MCS-51芯片內部結構框圖通道0驅動器通道2驅動器RAM地址鎖存器RAM通道0鎖存器通道2鎖存器ROM/EPROMB寄存器程序地址寄存器緩沖器PC遞增器程序計數(shù)器PCDPTR指針VCCGNDP1.0~P1.7堆棧指針SPACCTMP2PSW通道3鎖存器通道1鎖存器通道1驅動器通道3驅動器TMP1SCONTMODPCONTCONTL0TH1TH0TL1IESBUF(TX/RX)IP中斷、串行口和定時器邏輯振蕩器P3.0~P3.7RSTEAALEPSENXTAL2XTAL1ALU(+5V)指令寄存器定時和控制邏輯指令譯碼器P0.0~P0.7P2.0~P2.7返回本節(jié)2.18051單片機的結構1.中央處理器(CPU)CPU是單片機內部的核心部件,是一個8位二進制數(shù)的中央處理單元,主要由運算器、控制器和寄存器陣列構成。2.18051單片機的結構1)運算器運算器用來完成算術運算、邏輯運算、位變量處理和數(shù)據(jù)傳送等功能,它是8051內部處理各種信息的主要部件。運算器主要包括:算術邏輯單元(ALU)、累加器(ACC)、暫存寄存器(TMP1、TMP2)、寄存器B、程序狀態(tài)字寄存器(PSW)組成。2.18051單片機的結構2.18051單片機的結構(1)算術邏輯單元(ALU):8051中ALU由加法器和一個布爾處理器組成。主要是實現(xiàn)8位數(shù)據(jù)的加、減、乘、除算術運算和與、或、異或、循環(huán)、求補等邏輯運算;布爾處理器主用來處理位操作。它是以進位標志位C為累加器的,可執(zhí)行置位、復位、取反、等于1轉移、等于0轉移、等于1轉移且清0以及進位標志位與其他位尋址的位之間進行數(shù)據(jù)傳送等位操作。也能使進位標志位與其他可位尋址的位之間進行邏輯與、或操作。2.18051單片機的結構(2)累加器(ACC):用來存放參與算術運算和邏輯運算的一個操作數(shù)或運算的結果。在運算時將一個操作數(shù)經暫存器送至ALU,與另一個來自暫存器的操作數(shù)在ALU中進行運算,運算后的結果又送回累加器A。8051單片機在結構上是以累加器A為中心,大部分指令的執(zhí)行都要通過累加器A進行。
2.18051單片機的結構(3)暫存寄存器(TMP1、TMP2):用來存放參與算術運算和邏輯運算的另一個操作數(shù),它對用戶不開放。(4)寄存器B:
在乘、除運算時用來存放一個操作數(shù),也用來存放運算后的一部分結果,在不進行乘、除運算時,可以作為通用的寄存器使用。2.18051單片機的結構(5)狀態(tài)寄存器(PSW):
PSW是一個8位標志寄存器,用來存放ALU操作結果特征和處理器狀態(tài)。這些特征和狀態(tài)可以作為控制程序轉移的條件,供程序查詢和校驗。如表2-2所示。表2-2PSW各位定義表位編號PSW7PSW6PSW5PSW4PSW3PSW2PSW1PSW0位定義CYACF0RS1RS0OV—P位地址D7HD6HD5HD4HD3HD2HD1HD0H2.18051單片機的結構①進位標志位CY:表示累加器A在加減運算過程中其最高位A7有無進位或借位。②輔助進位標志位AC:表示累加器A在加減運算時低4位(A3)有無向高4位(A4)進位或借位。③用戶標志位F0:是用戶定義的一個狀態(tài)標志位,根據(jù)需要可以用軟件來使它置位或清除。2.18051單片機的結構④寄存器選擇位RS1、RS0:8051共有四組,每組八個工作寄存器R0~R7。編程時用于存放數(shù)據(jù)或地址。但每組工作寄存器在內部RAM中的物理地址不同。RS1和RS0的四種狀態(tài)組合就是用來確定四組工作寄存器的實際物理地址的。RS1、RS0狀態(tài)與工作寄存器R0~R7的物理地址關系如表2-3所示。RS1RS0工作寄存器組號R0~R7的物理地址0
00
11
011012300H~07H08H~0FH10H~17H18H~1FH表2-3工作寄存器組R0~R7的物理地址2.18051單片機的結構⑤溢出標志位OV:當執(zhí)行算術指令時,由硬件自動置位或清零,表示累加器A的溢出狀態(tài)。主要用來表示帶符號數(shù)加、減運算溢出與否??捎秒p高位法進行溢出判別。當次高位D6向最高位D7有進位,而最高位D7無進位;或者當次高位D6向最高位D7無進位,而最高位D7有進位,則表示發(fā)生溢出,OV=1;否則清零。 乘法和除法也會影響OV標志。當乘法的積>255時,OV=1,表示積超過8位,否則OV=0。在除法運算中,OV=1表示被除數(shù)為0,除法不能進行;反之OV=0,除法可以正常進行。
2.18051單片機的結構⑥奇偶標志位P:用于指示累加器A中1的個數(shù)的奇偶性,若1的個數(shù)為奇數(shù),則P=1;若1的個數(shù)為偶數(shù),則P=0。此標志對串行通信的數(shù)據(jù)傳輸非常有用,通過奇偶校驗傳輸?shù)目煽啃浴?/p>
2.18051單片機的結構2)控制器控制器是單片機內部按一定時序協(xié)調工作的控制核心,是分析和執(zhí)行指令的部件??刂破髦饕沙绦蛴嫈?shù)器PC、指令寄存器IR、指令譯碼器ID、振蕩和定時控制邏輯電路等構成。2.18051單片機的結構程序計數(shù)器PC是專門用于存放下一條將要執(zhí)行指令的16位地址,由8位計數(shù)器PCH(高8位)和PCL(低8位)組成。CPU就是根據(jù)PC中的地址到ROM中去讀取程序指令碼和數(shù)據(jù)。其基本的工作過程是:讀指令時,程序計數(shù)器將其中的數(shù)作為所取指令的地址輸出給程序存儲器,然后程序存儲器按此地址輸出指令字節(jié),同時程序計數(shù)器本身自動加1,讀完本條指令,PC指向下一條指令在程序存儲器中的地址。程序計數(shù)器的基本工作方式有以下:(1)程序計數(shù)器自動加1,這是最基本的工作方式。(2)執(zhí)行有條件或無條件轉移指令時,程序計數(shù)器將被植入新的數(shù)值,從而使程序的流向發(fā)生變化。2.18051單片機的結構指令寄存器IR用于存放CPU根據(jù)PC地址從ROM中讀出的指令操作碼,并送給ID。指令譯碼器ID是用于分析指令操作的部件,指令操作碼經譯碼后送至定時控制電路,產生一定序列的脈沖信號,來執(zhí)行指令規(guī)定的操作。振蕩器及定時控制邏輯電路,在它們外接石英晶體和微調電容(2~30PF)后,即可產生1.2~12MHZ的脈沖信號,作為MCS-51工作的基本節(jié)拍。2.18051單片機的結構3)寄存器陣列寄存器陣列是單片機內部的臨時存儲單元或固定用途單元,包括通用寄存器組和專用寄存器組。通用寄存器組用來存放過渡性的數(shù)據(jù)和地址,提高CPU的運行速度。專用寄存器組主要用來指示當前要執(zhí)行指令的內存地址,存放特定的操作數(shù),指示指令運行的狀態(tài)等。2.18051單片機的結構2.存儲器8051單片機內部有128個字節(jié)的RAM數(shù)據(jù)存儲器和4KB的程序存儲器,當不夠使用時,可分別擴展為64KB外部RAM存儲器和64KB外部程序存儲器。程序存儲器是可讀不可寫的,用于存放編好的程序和表格常數(shù)。數(shù)據(jù)存儲器是既可讀也可寫的,用于存放運算的中間結果,進行數(shù)據(jù)暫存及數(shù)據(jù)緩沖等。2.18051單片機的結構3.I/O端口
8051單片機對外部電路進行控制或交換信息都是通過I/O端口進行的。單片機的I/O端口分為并行I/O端口和串行I/O端口,它們的結構和作用并不相同。
(1)并行I/O端口
8051有四個8位并行雙向I/O端口(P0口、P1口、P2口和P3口),每一條I/O線都能獨立地用作輸入或輸出。P0口為三態(tài)雙向口,能帶8個LSTTL電路。P1口、P2口和P3口為準雙向口(在用作輸入線時,口鎖存器必須先寫入“1”,故稱為準雙向口),負載能力為4個LSTTL電路。
(2)串行I/O端口
8051有一個全雙工的可編程串行I/O端口,實現(xiàn)單片機與其它數(shù)據(jù)設備之間的串行數(shù)據(jù)傳遞。2.18051單片機的結構4.定時器/計數(shù)器
8051內部有兩個16位可編程定時器/計數(shù)器,簡稱為定時器0(T0)和定時器1(T1),T0和T1分別由兩個8位寄存器構成,其中T0由TH0(高8位)和TL0(低8位)構成,T1由TH1(高8位)和TL1(低8位)構成。TH0、TL0、TH1、TL1都是SFR中的特殊功能寄存器(見表2-4)。
T0和T1在定時器控制寄存器TCON和定時器方式選擇寄存器TMOD的控制下(TCON、TMOD為特殊功能寄存器),可選擇工作在定時器模式或計數(shù)器模式下,每種模式下又有不同的工作方式。2.18051單片機的結構5.中斷控制系統(tǒng)單片機中的中斷是指CPU暫停正在執(zhí)行的原程序轉而為中斷源服務(執(zhí)行中斷服務程序),在執(zhí)行完中斷服務程序后再回到原程序繼續(xù)執(zhí)行。中斷系統(tǒng)是指能夠處理上述中斷過程所需要的部分電路。
MCS-51設有五個中斷源(外中斷兩個,定時/計數(shù)中斷兩個,串行中斷1個),二級優(yōu)先級,可實現(xiàn)二級中斷嵌套。2.18051單片機的結構
6.內部總線總線是用于傳送信息的公共途徑??偩€可分為數(shù)據(jù)總線、地址總線、控制總線。單片機內的CPU、存儲器、I/O接口等單元部件都是通過總線連接到一起的。采用總線結構可以減少信息傳輸線的根數(shù),提高系統(tǒng)可靠性,增強系統(tǒng)靈活性。地址總線AB(AddressBus):傳遞訪問對象的地址信息。
數(shù)據(jù)總線DB(DataBus):傳遞數(shù)據(jù)。控制總線CB(ControlBus):傳遞控制信息。2.28051單片機引腳
8051單片機內部總線是單總線結構,即數(shù)據(jù)總線和地址總線是公用的。8051有40條引腳,與其他51系列單片機引腳是兼容的。這40條引腳可分為I/O端口線、電源線、控制線、外接晶體線四部分。其封裝形式有兩種:雙列直插封裝(DIP)形式和方形封裝形式,如圖2-5所示。2.28051單片機引腳
圖2-58051封裝和引腳分配圖(a)雙列直插式封裝;(b)方形封裝
MCS-51單片機的引腳配置圖P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RST/VPDRXD/P3.0TXD/P3.1INT0/P3.2INT1/P3.3T0/P3.4T1/P3.5WR/P3.6RD/P3.7XTAL2XTAL1VSS12345678910111213141516171819208031805187514039383736353433323130292827262521222324VCCP0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7EA/VppALE/PROGPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0
返回本節(jié)2.28051單片機引腳P0.3地址鎖存器CBI/OA15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0D7D6D5D4D3D2D1D0DBABP1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7RESETP3.0P3.1P3.3P3.4P3.5P3.6P3.7VSSVCCP0.0P0.1P0.2P0.5P0.6P0.7EAALEPSENP2.7P2.6P2.5P2.4P2.3P2.2P2.1P2.0P3.2MCS-51片外總線結構示意圖下一頁圖2.2MCS-51系列單片機引腳及總線結構2.28051單片機引腳1.電源線8051單片機的電源線有以下兩種:(1)VCC:+5V電源線。(2)VSS:接地線。2.外接晶體引腳8051單片機的外接晶體引腳有以下兩種:(1)XTAL1:片內振蕩器反相放大器的輸入端和內部時鐘工作的輸入端。采用內部振蕩器時,它接外部石英晶體和微調電容的一個引腳。(2)XTAL2:片內振蕩器反相放大器的輸出端,接外部石英晶體和微調電容的另一端。采用外部振蕩器時,該引腳懸空.2.28051單片機引腳3、控制線:8051單片機的控制線有以下幾種:(1)RST/VPD:RST是復位輸入端,高電平有效。當單片機運行時,在次引腳加上持續(xù)時間大于兩個機器周期(24個時鐘振蕩周期)的高電平,就可以完成復位操作。
VPD為本引腳的第二功能,即備用電源的輸入端。當主電源Vcc發(fā)生故障,降低到某一規(guī)定的低電平時,將+5V的電源自動接入RST端,為內部RAM提供備用電源,以保證片內RAM中的信息不丟失,使單片機在復位后能繼續(xù)運行。2.28051單片機引腳3、控制線:(2)ALE/PROG:地址鎖存允許/編程線。ALE為地址鎖存允許信號,當單片機上電正常工作后,ALE引腳不斷輸出正脈沖信號。當訪問單片機外部存儲器時,ALE輸出信號的負跳沿用作8位地址的鎖存信號,即使不訪問外部存儲器,ALE端仍有正脈沖信號輸出,該頻率為時鐘振蕩器頻率fOSC1/6.PROG指對片內EPROM型單片機(例8751)編程寫入時,此引腳作為編程脈沖輸入端。(3)PSEN:外部程序存儲器的讀選通線。在單片機訪問外部程序存儲器時,此引腳輸出的負脈沖作為讀外部程序存儲器的選通信號。此腳接外部程序存儲器的OE(輸出允許)端。(4)EA/VPP:片外ROM允許訪問端/編程電源端。
2.28051單片機引腳4.I/O端口組成(32根I/O口線)及功能(1)P0口
P0口有八條端口線(P0.0~P0.7),其中P0.0為低位,P0.7為高位。每條線的結構組成如圖2-6所示。它由一個輸出鎖存器,兩個三態(tài)緩沖器,輸出驅動電路和輸出控制電路組成。P0口是一個三態(tài)雙向I/O口,它有兩種不同的功能,用于不同的工作環(huán)境。P0口位結構圖見2-6.2.28051單片機引腳圖2-6P0口位結構圖P0口的功能與驅動能力P0口可以作為通用的I/O口;P0口可以作為單片機系統(tǒng)的地址/數(shù)據(jù)線使用;P0口可以驅動8個標準的TTL負載電路。注意在P0口作為通用的I/O口時,必須外接上拉電阻(如下圖)。2.28051單片機引腳(2)P1口
P1口有八條端口線(P1.0~P1.7),每條線的結構組成如圖2-7所示。P1口是一個準雙向口,只作普通的I/O口使用,其功能與P0口的第一功能相同。作輸出口使用時,由于其內部有上拉電阻,所以不需外接上拉電阻;作輸入口使用時,必須先向鎖存器寫入“1”,使場效應管T截止,然后才能讀取數(shù)據(jù)。2.28051單片機引腳圖2-7P1口位結構圖
P1口電路中包含有一個數(shù)據(jù)輸出鎖存器、一個三態(tài)數(shù)據(jù)輸入緩沖器、一個數(shù)據(jù)輸出的驅動電路。P1口的功能和驅動能力P1口只可以作為通用的I/O口使用;P1可以驅動4個標準的TTL負載電路;注意在P1口作為通用的I/O口使用時,在從I/O端口讀入數(shù)據(jù)時,應該首先向相應的I/O口內部鎖存器寫“1”。舉例:從P1口的低四位輸入數(shù)據(jù)
MOVP1,#00001111b;;先給P1口低四位寫1MOVA,P1;;再讀P1口的低四位2.28051單片機引腳(3)P2口
P2口有八條端口線(P2.0~P2.7),每條線的結構如圖2-8所示。P2口也是一個準雙向口,它有兩種使用功能:一種是當系統(tǒng)不擴展外部存儲器時,作普通I/O口使用,其功能和原理與P0口第一功能相同,只是作為輸出口時不需外接上拉電阻;另一種是當系統(tǒng)外擴存儲器時,P2口作系統(tǒng)擴展的地址總線口使用,輸出高8位的地址A7~A15,與P0口第二功能輸出的低8位地址相配合,共同訪問外部程序或數(shù)據(jù)存儲器(64KB),但它只確定地址并不能像P0口那樣還可以傳送存儲器的讀寫數(shù)據(jù)。2.28051單片機引腳圖2-8P2口位結構圖2.28051單片機引腳(4)P3口P3口有八條端口線,命名為P3.0~P3.7,每條線的結構如圖2-9所示。P3口是一個多用途的準雙向口。第一功能是作普通I/O口使用,其功能和原理與P1口相同。第二功能是作控制和特殊功能口使用,這時八條端口線所定義的功能各不相同,如表2-4示。2.28051單片機引腳圖2-9P3口位結構圖2.28051單片機引腳表2-4P3口各位的第二功能P3口各位第二功能P3.0RXD(串行數(shù)據(jù)接收)P3.1TXD(串行數(shù)據(jù)發(fā)送)P3.2INT0(外中斷0輸入)P3.3INT1(外中斷1輸入)P3.4T0(計數(shù)器0計數(shù)輸入)P3.5T1(計數(shù)器1計數(shù)輸入)P3.6WR(外RAM寫選通信號)P3.7RD(外RAM讀選通信號)單燈左移電路圖
2.38051單片機存儲器
8051存儲器可以分成兩大類:﹡
RAM,CPU在運行時能隨時進行數(shù)據(jù)的寫入和讀出,但在關閉電源時,其所存儲的信息將丟失。它用來存放暫時性的輸入輸出數(shù)據(jù)、運算的中間結果或用作堆棧。﹡ROM是一種寫入信息后不易改寫的存儲器。斷電后,ROM中的信息保留不變。用來存放固定的程序或數(shù)據(jù),如系統(tǒng)監(jiān)控程序、常數(shù)表格等。
1、普林斯頓結構
一般微機通常只有一個邏輯空間,可以隨意安排ROM或RAM。當訪問存儲器時,同一地址對應唯一的存儲單元,可以是ROM也可以是RAM,并用同類訪問指令。這種結構稱為普林斯頓結構。
2、哈佛結構◆
8051單片機與一般微機的存儲器配置方式很不相同。
◆
51單片機的存儲器在物理結構上分為程序存儲空間和數(shù)據(jù)存儲空間,共有四個:片內和片外程序存儲空間以及片內和片外數(shù)據(jù)存儲空間,這種在物理結構上把程序存儲器和數(shù)據(jù)存儲器分開的結構形式稱為哈佛結構。2.38051單片機存儲器兩種結構的區(qū)別2.38051單片機存儲器8051單片機存儲器結構采用哈佛型結構,即將程序存儲器(ROM)和數(shù)據(jù)存儲器(RAM)分開,它們有各自獨立的存儲空間、尋址機構和尋址方式。其典型結構下圖所示。2.38051單片機存儲器圖2-108051存儲器結構圖★8051在邏輯空間上,即從用戶角度上8051有三個存儲空間:
(1)片內外統(tǒng)一編址(0000H—FFFFH)的程序存儲器,用16位地址尋址;(2)256B片內數(shù)據(jù)存儲器地址空間,地址為:00H—FFH,8位地址尋址;(3)64KB的片外數(shù)據(jù)存儲器地址空間,地址從0000H—FFFFH,16位地址尋址。2.38051單片機存儲器2.38051單片機存儲器區(qū)分:
上述的3個存儲空間是重疊的,為了用戶能夠正確使用這3個邏輯空間,8051指令系統(tǒng)設計了不同的數(shù)據(jù)傳送指令符號:
(1)CPU訪問片內、片外程序存儲器時,指令為MOVC:
例:MOVCA,@A+PC;(2)CPU訪問片內數(shù)據(jù)存儲器時,指令為MOV:例:MOVA,R1;(3)CPU訪問片外數(shù)據(jù)存儲器時,指令為MOVX:
例:MOVXA,@DPTR;2.38051單片機存儲器3、8051程序存儲器空間
(1)8051、8031與8751的區(qū)別:
8051內部有4KB的ROM,8031沒有ROM,8751片內有4KB的EPROM。
8051有64KB程序存儲器尋址區(qū),其中0000H—0FFFH的4KB的地址空間可以為片內和片外公用。區(qū)分:
8051提供了一條專用的控制引腳EA(第31腳)若EA=1,則8051使用片內4KB的程序存儲器。若EA=0,則8051自動使用片外ROM。不論EA接高電平還是低電平,當訪問地址超過4KB時,自動轉到片外ROM.(2)程序的7個特殊入口地址表2.5MCS-51單片機復位、中斷入口地址操作入口地址復位0000H外部中斷00003H定時器/計數(shù)器0溢出000BH外部中斷10013H定時器/計數(shù)器1溢出001BH串行口中斷0023H定時器/計數(shù)器0溢出或T2EX端負跳變(52子系列)002BH2.38051單片機存儲器4、數(shù)據(jù)存儲器的地址空間(1)低128RAM區(qū)①工作寄存器區(qū):00H~1FH這32個單元為工作寄存器區(qū),分為四組,每組占八個RAM單元,地址由小到大分別用代號R0~R7表示。通過設置程序狀態(tài)字PSW中的RS1、RS0狀態(tài)來決定哪一組寄存器工作,如表2-5所示。②位尋址區(qū):20H~2FH這16個單元為位尋址區(qū)。它有雙重尋址功能,既可以進行位尋址操作,也可以同普通RAM單元一樣按字節(jié)尋址操作。③普通RAM區(qū):30H~7FH這80個單元為普通RAM區(qū)。用于存放用戶數(shù)據(jù),只能按字節(jié)存取。堆棧:堆棧是片內RAM存儲器中的特殊群體。表2-58051內部RAM空間分配7FH堆棧和數(shù)據(jù)緩沖區(qū)……30H2FH7F7E7D7C7B7A7978位尋址區(qū)2EH77767574737271702DH6F6E6D6C6B6A69682CH67666564636261602BH5F5E5D5C5B5A59582AH575655545352515029H4F4E4D4C4B4A494828H474645444342414027H3F3E3D3C3B3A393826H373635343332313025H2F2E2D2C2B2A292824H272625242322212023H1F1E1D1C1B1A191822H171615141312111021H0F0E0D0C0B0A090820H07060504030201001FH3組(R0~R7)工作寄存器區(qū)……18H17H2組(R0~R7)……10H0FH1組(R0~R7)……08H07H0組(R0~R7)……00H位尋址——(P.48)指令中直接給出了操作數(shù)所在的位地址。例:CLRP1.0;(P1.0)←0SETBACC.7;(ACC.7)←1CPLC;(C)←NOT(C)注意:
1)位地址里的數(shù)據(jù)只可能是一個
0或12)有的位地址十分明確,如P1.0,ACC.7等,
有的位地址則“不太明確”,如:
[MOVA,17H;(A)←(17H),17H是字節(jié)地址]MOVACC.0,17H;(ACC.0)←(17H),這里ACC.0
是位地址所以該指令中的17H是22H單元的第7位2.38051單片機存儲器(2)專用寄存器區(qū):片內80H~FFH這一區(qū)間,8051集合了一些特殊用途的寄存器,一般稱之為特殊功能寄存器SFR(SpecialFunctionRegister)。每個SFR占有一個RAM單元。它們離散地分布在80H~FFH地址范圍內,如表2-6所示。沒有被SFR占據(jù)的地址可能在片內并不存在。對這些地址讀出時,通常會得到隨機的數(shù)據(jù),而寫入時將會有不確定的效應,因此軟件設計時不要使用這些單元。特殊功能寄存器通常用寄存器尋址,但也可以用直接尋址方式進行字節(jié)訪問。其中11個寄存器還可進行位尋址(表2-4中帶*號的寄存器)操作,其位地址的分配如表2-7所示。表2-68051特殊功能寄存器SFR一覽表PSW表2-7SFR中的位地址分配寄存器符號位地址字節(jié)地址D7D6D5D4D3D2D1D0BF7F6F5F4F3F2F1F0F0HACCE7E6E5E4E3E2E1E0E0HPSWD7D6D5D4D3D2D1D0D0HIPBCBBBAB9B8B8HP3B7B6B5B4B3B2B1B0B0HIEAFACABAAA9A8A8HP2A7A6A5A4A3A2A1A0A0HSCON9F9E9D9C9B9A999898HP1979695949392919090HTCON8F8E8D8C8B8A898888HP0878685848382818080H片內RAM高128單元:SFR(80H ~FFH)低128單元(00H~7FH)堆棧和數(shù)據(jù)緩沖區(qū)(30H~7FH)位尋址區(qū)(20H~2FH)通用寄存器區(qū)(00H~1FH)00H-7FH堆棧:
在片內RAM中,常常要指定一個專門的區(qū)域來存放某些特別的數(shù)據(jù),它遵循順序存取和后進先出(LIFO/FILO)的原則,這個RAM區(qū)叫堆棧。功用:1)子程序調用和中斷服務時CPU自動將當前PC
值壓棧保存,返回時自動將PC值彈棧。2)保護現(xiàn)場/恢復現(xiàn)場3)數(shù)據(jù)傳輸00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM區(qū)普通RAM區(qū)位尋址區(qū)工作寄存器區(qū)
SP棧頂下一個進棧的數(shù)據(jù)將存在此數(shù)據(jù)進棧已經進棧的數(shù)據(jù)存放在此初始SP復位后SP=07H,數(shù)據(jù)進棧時:首先SP+1指向08H單元,第一個放進堆棧的數(shù)據(jù)將放進08H單元,然后SP再自動增1,仍指著棧頂……堆棧區(qū)由特殊功能寄存器堆棧指針SP管理堆棧區(qū)可以安排在RAM區(qū)任意位置,一般不安排在工作寄存器區(qū)和可按位尋址的RAM區(qū),通常放在RAM區(qū)的靠后的位置。從堆棧取出數(shù)據(jù)時:取出的數(shù)據(jù)是最近放進去的一個數(shù)據(jù),也就是當前棧頂?shù)臄?shù)據(jù)。然后SP再自動減1,仍指著棧頂……00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM區(qū)普通RAM區(qū)位尋址區(qū)工作寄存器區(qū)
SP棧頂當前要出棧的數(shù)據(jù)數(shù)據(jù)出棧SP-1指向下一個將要出棧的數(shù)據(jù)初始SP堆棧區(qū)由特殊功能寄存器堆棧指針SP管理堆棧區(qū)可以安排在RAM區(qū)任意位置,一般不安排在工作寄存器區(qū)和可按位尋址的RAM區(qū),通常放在RAM區(qū)的靠后的位置。從堆棧取出數(shù)據(jù)時:取出的數(shù)據(jù)是最近放進去的一個數(shù)據(jù),也就是當前棧頂?shù)臄?shù)據(jù)。然后SP再自動減1,仍指著棧頂……00H20H2FH7FH1FH30H80HFFH52子系列才有的RAM區(qū)普通RAM區(qū)位尋址區(qū)工作寄存器區(qū)SP-1指向新的棧頂,也就是下一個將要出棧的數(shù)據(jù)數(shù)據(jù)出棧初始SP堆棧區(qū)由特殊功能寄存器堆棧指針SP管理
堆棧區(qū)可以安排在RAM區(qū)任意位置,一般不安排在工作寄存器區(qū)和可按位尋址的RAM區(qū),通常放在RAM區(qū)的靠后的位置。
數(shù)據(jù)指針DPTR數(shù)據(jù)指針DPTR是唯一1個16位的可尋址的專用寄存器;由兩個8位寄存器DPH和DPL而成,其中DPH為DPTR的高8位,DPL為DPTR的低8位。它既可作為一個16位寄存器來使用,也可作為2個獨立的8位寄存器(DPH和DPL)來使用。DPTR主要是用來保存16位地址,當對64kB外部數(shù)據(jù)存儲器尋址時,可作為間址寄存器使用,此時,使用如下兩條指令:
MOVX
A,
@DPTR
MOVX
@DPTR,
A例:MOVDPTR,#2000HMOVXA,@DPTR;將外RAM2000H單元內容→A在訪問程序存儲器時,DPTR可用來作基址寄存器,采用基址+變址尋址方式訪問程序存儲器,這條指令常用于讀取程序存儲器內的表格數(shù)據(jù)。MOVCA,@A+DPTR ;訪問ROM指令2.48051單片機工作方式2.4.1復位方式單片機在開機時或在工作中因干擾而使程序失控或工作中程序處于某種死循環(huán)狀態(tài)等情況下都需要復位。復位的作用是使中央處理器CPU以及其他功能部件都恢復到一個確定的初始狀態(tài),并從這個狀態(tài)開始工作。8051單片機的復位靠外部電路實現(xiàn),信號由RESET(RST)引腳輸入,高電平有效,在振蕩器工作時,只要保持RST引腳高電平兩個機器周期,單片機即復位。復位后,PC程序計數(shù)器的內容為0000H,其他特殊功能寄存器的復位狀態(tài)如表2-4所示。片內RAM中內容不變。復位電路一般有上電復位、手動開關復位和自動復位電路三種,如圖2-11所示。2.48051單片機工作方式圖2-11單片機復位電路圖實驗中的復位電路及時鐘電路
MCS-51單片機各寄存器的復位狀態(tài)
00HTCON0000HPC
00HTMOD0×××0000BPCON0×000000BIE不定SBUF
××000000BIP00HSCON0FFHP0~P300HTH10000HDPTR00HTL107HSP00HTH000HPSW00HTL000HACC復位狀態(tài)寄存器復位狀態(tài)寄存器2.48051單片機工作方式2.4.2程序執(zhí)行方式程序執(zhí)行方式可以分為單步操作和連續(xù)執(zhí)行兩種工作方式。1、單步操作方式。單步操作方式是使程序的執(zhí)行處于外加脈沖(通常由一個按鍵產生)的控制下,一條指令一條指令的執(zhí)行。單步操作方式特別適合于用戶程序的調試階段。單步操作方式是通過單片機的中斷控制系統(tǒng)來實現(xiàn)的。具體方法如下:將外加脈沖(按鍵)接到INT0引腳輸入,當它被按下時相應電路就產生一個負脈沖(即中斷請求信號)送到單片機的INT0引腳。MCS-51單片機在INT0上負脈沖作用下,啟動一次中斷處理過程,CPU執(zhí)行一條程序指令。2.程序連接執(zhí)行方式。程序執(zhí)行方式是單片機的基本工作方式。所執(zhí)行的程序寫入程序存儲器后,接通單片機電源,此時單片機復位使(PC)=0000H,CPU將從程序的起始地址0000H單元開始,連續(xù)執(zhí)行事先存放在程序存儲器中的程序。2.48051單片機工作方式2.4.3省電方式8051系列單片機提供了兩種通過軟件編程來實現(xiàn)的省電運行方式,即空閑方式和掉電方式。省電方式可以使單片機在供電困難的環(huán)境中功耗最小,僅在需要正常工作時才正常運行。單片機正常工作時消耗10~20mA電流,空閑方式工作時消耗1.75mA電流,掉電方式工作時消耗5~50μA電流,可見在省電方式下單片機耗能很小。在空閑和掉電方式下,單片機內部硬件控制電路如圖2-12所示。
2.48051單片機工作方式圖2-12空閑和掉電方式內部電路圖2.48051單片機工作方式2.4.4EPROM編程和校驗方式1.簽名字節(jié)的讀出簽名字節(jié)是生產廠家在生產MCS-51系列單片機時寫入到存儲器中的信息。信息內容包括生產廠家、編程電壓和單片機型號。2.Flash存儲器編程方式這里的編程是指利用特殊手段將用戶編寫好的程序代碼寫入8051片內4KB字節(jié)Flash存儲器的過程(89
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 婦產科工休會健康教育內容
- 2025年關于中班科學活動標準教案
- 2025年小學英語畢業(yè)考試模擬卷(英語繪本閱讀)英語繪本閱讀理解能力提升試題
- 有機摻雜超長紅色室溫磷光
- 2025年一建《機電工程管理與實務》考試機電工程法規(guī)歷年真題詳解題庫試題
- 2025年美容師初級技能水平測試卷:美容師色彩搭配與造型設計
- 2025年一建《機電工程管理與實務》考試真題解析與施工圖預算編制能力試題
- 我國創(chuàng)新創(chuàng)業(yè)取得的成就
- 2025年小學英語畢業(yè)考試模擬試題:英語歌曲與童謠教學課堂管理策略
- PowerPoint制作-水晶框效果
- 孫子生日宴會爺爺致辭范文
- 【正版授權】 IEC 60072-3:1994 EN-FR Dimensions and output series for rotating electrical machines - Part 3: Small built-in motors - Flange numbers BF10 to BF50
- 養(yǎng)老院老人走失免責協(xié)議書
- 加固工程施工技術交底內容
- 2024-2034年中國冷凍面團市場競爭策略及行業(yè)投資潛力預測報告
- 《我愛上班》朗誦稿
- AQ-T 1009-2021礦山救護隊標準化考核規(guī)范
- 醫(yī)療機構衛(wèi)生監(jiān)督培訓
- 臨床重點??粕陥髸?麻醉、病理、檢驗)
- 第2課+古代希臘羅馬【中職專用】《世界歷史》(高教版2023基礎模塊)
- 電動葫蘆檢查項目內容及判定標準
評論
0/150
提交評論