第二章:MCS-51單片機硬件結(jié)構(gòu)_第1頁
第二章:MCS-51單片機硬件結(jié)構(gòu)_第2頁
第二章:MCS-51單片機硬件結(jié)構(gòu)_第3頁
第二章:MCS-51單片機硬件結(jié)構(gòu)_第4頁
第二章:MCS-51單片機硬件結(jié)構(gòu)_第5頁
已閱讀5頁,還剩85頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第2章MCS-51單片機硬件結(jié)構(gòu)2.1MCS-51單片機總體結(jié)構(gòu)2.2MCS-51存儲結(jié)構(gòu)及位處理器2.3MCS-51工作方式和時序2.4MCS-51單片機的時序2.5單片機最小系統(tǒng)本章重點內(nèi)容:1MCS-51單片機硬件的功能結(jié)構(gòu)及內(nèi)部組成2單片機引腳功能及應(yīng)用特點3片內(nèi)數(shù)據(jù)存儲器和特殊功能寄存器的組織特點4單片機的工作方式和典型的CPU時序2.1MCS-51單片機總體結(jié)構(gòu)

MCS-51系列單片機可分為兩大系列:51子系列(普通型)和52子系列(增強型)。51子系列單片機的典型產(chǎn)品有8031、8051、8751、80C51、80C31、89C51、89S51等。它們的結(jié)構(gòu)基本相同,其主要差別反映在片內(nèi)存儲器的配置上有所不同。52子系列及兼容單片機的典型產(chǎn)品有8032、8052、8752、89C52、89S52等,其中,8052、8752內(nèi)含8KB的掩模ROM程序存儲器和256B的RAM數(shù)據(jù)存儲器。增強型的存儲容量為普通型的一倍。2.1.1MCS-51單片機總體結(jié)構(gòu)框圖及功能8051單片機內(nèi)部由CPU、4KB的ROM、128B的RAM、4個8位的I/O并行端口、一個串行口、兩個16位定時/計數(shù)器及中斷系統(tǒng)等組成。其內(nèi)部基本結(jié)構(gòu)框圖如圖2-1所示。圖2-2為8051單片機系統(tǒng)結(jié)構(gòu)原理框圖。圖2-18051單片機內(nèi)部基本結(jié)構(gòu)框圖圖2-28051單片機系統(tǒng)結(jié)構(gòu)原理框圖下面對各功能部件的作用分述如下:1.CPU:包括運算器、控制器以及若干寄存器等部件組成。CPU是單片機內(nèi)部的核心部件,是單片機的指揮和控制中心。CPU可分為運算器和控制器兩大部分。(1)控制器控制器的功能是:接受來自程序存儲器ROM存儲單元的指令,并對其進行譯碼,通過定時和控制電路,按時序規(guī)定發(fā)出指令功能所需要的各種(內(nèi)部和外部)控制信息,使各部分協(xié)調(diào)工作,完成指令功能所需的操作。控制器主要包括程序計數(shù)器、指令寄存器、指令譯碼器及定時控制電路等。(2)運算器ALU運算器的功能是:對數(shù)據(jù)進行算術(shù)運算和邏輯運算。計算機對任何數(shù)據(jù)的加工、處理必須由運算器完成。10PC用來存放即將要執(zhí)行的指令地址,共16位,可對64KROM直接尋址。PC低8位經(jīng)P0口輸出,高8位經(jīng)P2口輸出。(3)程序計數(shù)器PC指令寄存器存放指令代碼。CPU執(zhí)行指令過程:由程序存儲器(ROM)中讀取指令代碼送入指令寄存器,經(jīng)譯碼器譯碼后由定時與控制電路發(fā)出相應(yīng)的控制信號,完成指令功能。(4)指令寄存器2.RAMRAM為單片機內(nèi)部數(shù)據(jù)存儲器。其存儲空間包括隨機存儲器區(qū)、寄存器區(qū)、特殊功能寄存器及位尋址區(qū)。3.ROMROM為單片機內(nèi)部程序存儲器。4.定時器/計數(shù)器定時器/計數(shù)器用于定時和對外部事件進行計數(shù)。124k/8k字節(jié)程序存儲器(ROM)51系列4k字節(jié);52系列8k字節(jié)128/256字節(jié)數(shù)據(jù)存儲器(RAM)51系列128字節(jié);52系列256字節(jié)2/3個16位定時/計數(shù)器51系列2個16位定時/計數(shù)器;52系列3個5.并行I/O口P0~P3是四個8位并行I/O口,每個口既可作為輸入,也可作為輸出。單片機在與外部存儲器及I/O端口設(shè)備交換信息時,必須由P0~P3口完成。6.中斷系統(tǒng)MCS-51單片機有5個中斷源,中斷處理系統(tǒng)靈活、方便,使單片機處理問題的靈活性和工作的效率大大提高。7.串行接口串行接口提供對數(shù)據(jù)各位按序一位一位地傳送。8.時鐘電路OSC時鐘電路用于產(chǎn)生單片機中最基本的時間單位。時鐘電路:MCS-51芯片內(nèi)部有一個高增益反相放大器,其輸入端為XTAL1,輸出端為XTAL2。有兩種時鐘生成電路:內(nèi)部方式,外部方式。2.1.2MCS-51引腳功能MCS-51單片機采用40腳雙列直插式封裝,其引腳排列及邏輯符號如下圖所示。圖2-3MCS-51單片機引腳圖1.主電源引腳VCC和VSSVCC:接主電源+5V。VSS:電源接地端。2.時鐘電路引腳XTAL1和XTAL2XTAL1是片內(nèi)振蕩器反相放大器的輸入端,XTAL2是片內(nèi)振蕩器反相放大器的輸出端,也是內(nèi)部時鐘發(fā)生器的輸入端。18ALE/(30),ALE:允許地址鎖存信號(數(shù)據(jù)線、地址線復(fù)用)。當訪問外部存儲器時,ALE信號負跳變將P0口上低8位地址送入鎖存器。ALE低電平時,P0口上的內(nèi)容和鎖存器輸出一致3.控制、選通或復(fù)用電源引腳:19非訪問外部存儲器期間,ALE以1/6振蕩頻率輸出,訪問外部存儲器時以1/12振蕩頻率輸出。

為編程脈沖輸入端,對片內(nèi)程序存儲器進行編程時,此腳輸入編程脈沖。RST(9腳):復(fù)位信號延續(xù)兩個機器周期以上的高電平,復(fù)位有效。20

(29腳):訪問外部程序存儲器選通信號,低電平有效。/Vpp(31腳):訪問內(nèi)部或外部ROM選擇信號。高電平():訪問內(nèi)部ROM(PC指針超過4K,0FFFH時,自動轉(zhuǎn)向外部ROM)。如保持低電平(=0):則僅訪問外部ROM。(對于8031,需要接低電平)21四個8位雙向I/O端口(P0、P1、P2、P3);每一條I/O線都能獨立地用作輸入或輸出。P0口(32—39)低8位地址/數(shù)據(jù)線復(fù)用或I/O口。P1口(1—8)常用的I/O口。P2口(21—28)常用I/O口或高8位地址線。P3口(10—17)雙功能口。4.I/O口引腳(32個引腳)(1)輸入緩沖器:在P0口中,有兩個三態(tài)的緩沖器,三態(tài)門有三個狀態(tài),即在其的輸出端可以是高電平、低電平,同時還有一種就是高阻狀態(tài)(或稱為禁止狀態(tài)),上圖,上面一個是讀鎖存器的緩沖器,也就是說,要讀取D鎖存器輸出端Q的數(shù)據(jù),那就得使讀鎖存器的這個緩沖器的三態(tài)控制端(‘讀鎖存器’端)有效。下面一個是讀引腳的緩沖器,要讀取P0.X引腳上的數(shù)據(jù),也要使‘讀引腳’的這個三態(tài)緩沖器的控制端有效,引腳上的數(shù)據(jù)才會傳輸?shù)轿覀儐纹瑱C的內(nèi)部數(shù)據(jù)總線上。(2)輸出驅(qū)動部份:從上圖中可以看出,P0口的輸出是由兩個MOS管(場效應(yīng)管)組成的推拉式結(jié)構(gòu),也就是說,這兩個MOS管一次只能導(dǎo)通一個,當V1導(dǎo)通時,V2就截止,當V2導(dǎo)通時,V1截止。

(3)與門、與非門:

(4)D鎖存器:構(gòu)成一個鎖存器,通常要用一個時序電路,一個觸發(fā)器可以保存一位的二進制數(shù)(即具有保持功能),在51單片機的32根I/O口線中都是用一個D觸發(fā)器來構(gòu)成鎖存器的。上圖中的D鎖存器,D端是數(shù)據(jù)輸入端,CP是控制端(也就是時序控制信號輸入端),Q是輸出端,Q非是反向輸出端。

對于D觸發(fā)器來講,當D輸入端有一個輸入信號,如果這時控制端CP沒有信號(也就是時序脈沖沒有到來),這時輸入端D的數(shù)據(jù)是無法傳輸?shù)捷敵龆薗及反向輸出端Q非的。如果時序控制端CP的時序脈沖一旦到了,這時D端輸入的數(shù)據(jù)就會傳輸?shù)絈及Q非端。數(shù)據(jù)傳送過來后,當CP時序控制端的時序信號消失了,這時,輸出端還會保持著上次輸入端D的數(shù)據(jù)(即把上次的數(shù)據(jù)鎖存起來了)。如果下一個時序控制脈沖信號來了,這時D端的數(shù)據(jù)才再次傳送到Q端,從而改變Q端的狀態(tài)。

(5)多路開關(guān):在51單片機中,當內(nèi)部的存儲器夠用(即不需要外擴展存儲器時,)時,P0口可以作為通用的輸入輸出端口(即I/O)使用,對于8031(內(nèi)部沒有ROM)的單片機或者編寫的程序超過了單片機內(nèi)部的存儲器容量,需要外擴存儲器時,P0口就作為‘地址/數(shù)據(jù)’總線使用。

多路選擇開關(guān)就是用于選擇是做為普通I/O口使用還是作為‘數(shù)據(jù)/地址’總線使用的選擇開關(guān)了。上圖,當多路開關(guān)與下面接通時,P0口是作為普通的I/O口使用的,當多路開關(guān)是與上面接通時,P0口是作為‘地址/數(shù)據(jù)’總線使用的。

P0口做為I/O口端口使用時的工作原理(1)如多路開關(guān)的控制信號為0(低電平),看上圖中的紅線部份,多路開關(guān)的控制信號同時與與門的一個輸入端是相接的,與門的邏輯特點是“全1出1,有0出0”那么控制信號是0的話,這時與門輸出的也是一個0(低電平),與門的輸出是0,V1管就截止,時,多路開關(guān)是與鎖存器的Q非端相接的(即P0口作為I/O口線使用)。P0口做為I/O口端口使用時的工作原理(2)P0口用作I/O口線,其由數(shù)據(jù)總線向引腳輸出(即輸出狀態(tài)Output)的工作過程:當寫鎖存器信號CP有效,數(shù)據(jù)總線的信號→鎖存器的輸入端D→鎖存器的反向輸出Q非端→多路開關(guān)→V2管的柵極→V2的漏極到輸出端P0.X。前面我們已講了,當多路開關(guān)的控制信號為低電平0時,與門輸出為低電平,V1管是截止的,所以作為輸出口時,P0是漏極開路輸出,當驅(qū)動上接電流負載時,需要外接上拉電阻。P0口做為I/O口端口使用時的工作原理(2)P0口用作I/O口線,其由引腳向內(nèi)部數(shù)據(jù)總線輸入(即輸入狀態(tài)Input)的工作過程:

數(shù)據(jù)輸入時(讀P0口)有兩種情況讀引腳:讀芯片引腳上的數(shù)據(jù),讀引腳數(shù)時,讀引腳緩沖器打開(即三態(tài)緩沖器的控制端要有效),通過內(nèi)部數(shù)據(jù)總線輸入。

P0口做為I/O口端口使用時的工作原理讀鎖存器:

通過打開讀鎖存器三態(tài)緩沖器讀取鎖存器輸出端Q的狀態(tài),

P0口作為地址/數(shù)據(jù)復(fù)用口使用時的工作原理在訪問外部存儲器時P0口作為地址/數(shù)據(jù)復(fù)用口使用。

多路開關(guān)‘控制’信號為‘1’,‘與門’解鎖,‘與門’輸出信號電平由“地址/數(shù)據(jù)”線信號決定;多路開關(guān)與反相器的輸出端相連,地址信號經(jīng)“地址/數(shù)據(jù)”線→反相器→V2場效應(yīng)管柵極→V2漏極輸出。

例如:控制信號為1,地址信號為“0”時,與門輸出低電平,V1管截止;反相器輸出高電平,V2管導(dǎo)通,輸出引腳的地址信號為低電平。P0口作為地址/數(shù)據(jù)復(fù)用口使用時的工作原理反之,控制信號為“1”、地址信號為“1”,“與門”輸出為高電平,V1管導(dǎo)通;反相器輸出低電平,V2管截止,輸出引腳的地址信號為高電平。可見,在輸出“地址/數(shù)據(jù)”信息時,V1、V2管是交替導(dǎo)通的,負載能力很強,可以直接與外設(shè)存儲器相連,無須增加總線驅(qū)動器。P0口作為地址/數(shù)據(jù)復(fù)用口使用時的工作原理P0口又作為數(shù)據(jù)總線使用。在訪問外部程序存儲器時,P0口輸出低8位地址信息后,將變?yōu)閿?shù)據(jù)總線,以便讀指令碼(輸入)。指令是輸出數(shù)據(jù):如MOVX@DPTR,A(將累加器的內(nèi)容通過P0口數(shù)據(jù)總線傳送到外部RAM中),則多路開關(guān)“控制”信號為‘1’,“與門”解鎖,與輸出地址信號的工作流程類似,數(shù)據(jù)據(jù)由“地址/數(shù)據(jù)”線→反相器→V2場效應(yīng)管柵極→V2漏極輸出。

如果該指令是輸入數(shù)據(jù)(讀外部數(shù)據(jù)存儲器或程序存儲器),如:MOVXA,@DPTR(將外部RAM某一存儲單元內(nèi)容通過P0口數(shù)據(jù)總線輸入到累加器A中),則輸入的數(shù)據(jù)仍通過讀引腳三態(tài)緩沖器到內(nèi)部總線,其過程類似于上圖中的讀取指令碼流程圖。P1口結(jié)構(gòu)圖及工作原理在51單片機的P0,P1,P2,P3口中,P1口的結(jié)構(gòu)最簡單,用途也最單一。僅僅只作為普通的數(shù)據(jù)輸入/輸出(I/O)端口使用。

從圖中可以看出,P0口與P1口的主要差別在于:P1端口用內(nèi)部上拉電阻代替了P0端口的場效應(yīng)管,并且輸出的信息只有內(nèi)部總線的信息,沒有了數(shù)據(jù)/地址總線的復(fù)用。1)P1口用作輸入端口如果P1口用作輸入端口,即Q=0,Q非=1;則場效應(yīng)管導(dǎo)通,引腳被直接連到電源的地GND上,即使引腳輸入的是高電平,被直接拉低為“0“,所以,與P0端口一樣,在將數(shù)據(jù)輸入P1端口之前,先要通過內(nèi)部總線向鎖存器寫”1“,這樣/Q=0,場效應(yīng)管截止,P1端口輸入的“1”才可以送到三態(tài)緩沖器的輸入端,此時再給三態(tài)門的讀引腳送一個讀控制信號,引腳上的“1”就可以通過三態(tài)緩沖器送到內(nèi)部總線。具有這種操作特點的輸入/輸出端口,一般稱之為準雙向I/O口,51單片機的P1,P2,P3口都是準雙向口。2)P1口用作輸出端口如果P1口用作輸出端口,應(yīng)給鎖存器的寫鎖存CP端輸入寫脈沖信號,內(nèi)部總線送來的數(shù)據(jù)就可以通過D端進入鎖存器并從Q和/Q端輸出,如果D端輸入“1”,則/Q=0,場效應(yīng)管截止,由于上拉電阻的作用,在P1.X引腳輸出高電平“1”,反之,如果D端輸入“0”,則/Q=1,場效應(yīng)管導(dǎo)通,P1.X引腳連到地線上,從而在引腳輸出“0”。P2口結(jié)構(gòu)圖及工作原理P2口既有片內(nèi)上拉電阻,又有切換開關(guān)MUX,所以P2口在功能上兼有P0和P1端口的特點,這主要體現(xiàn)在輸出功能上。當切換開關(guān)向下接通時,從內(nèi)部總線輸出的一位數(shù)據(jù)經(jīng)反相器和場效應(yīng)管反相后,輸出在端口引腳線上;當多路開關(guān)向上時,輸出的一位地址信號也經(jīng)反相器和場效應(yīng)管反相后,輸出在端口引腳線上。1)P2口用作輸入端口如果P2口用作輸入端口,即Q=0,/Q=1;則場效應(yīng)管導(dǎo)通,引腳被直接連到電源的地GND上,即使引腳輸入的是高電平,被直接拉低為“0“,所以,與P0端口一樣,在將數(shù)據(jù)輸入P2端口之前,先要通過內(nèi)部總線向鎖存器寫”1“,這樣/Q=0,場效應(yīng)管截止,P2端口輸入的“1”才可以送到三態(tài)緩沖器的輸入端,此時再給三態(tài)門的讀引腳送一個讀控制信號,引腳上的“1”就可以通過三態(tài)緩沖器送到內(nèi)部總線。2)P2口用作輸出端口如果P2口用作輸出端口,應(yīng)給鎖存器的寫鎖存CP端輸入寫脈沖信號,內(nèi)部總線送來的數(shù)據(jù)就可以通過D端進入鎖存器并從Q和/Q端輸出,再通過電子開關(guān)、非門和場效應(yīng)管從端口輸出。P3口結(jié)構(gòu)圖及工作原理P3口和P1口的結(jié)構(gòu)相似,區(qū)別僅在于P3端口的個端口線有兩種功能選擇。當處于第一功能時,第二輸出功能線為1,此時,內(nèi)部總線信號經(jīng)鎖存器和場效應(yīng)管輸入/輸出,其作用與P1端口作用相同。當處于第二功能時,鎖存器輸出1,通過第二輸出功能線輸出特定的信號,在輸入方面,既可以通過緩沖器讀入引腳信號。還可以通過替代輸入功能讀入片內(nèi)的特定第二功能信號。1)P3用作輸入端口時,其使用方法與P1和P2類似。2)P3用作輸出端口時,其使用方法與P1和P2類似。使P3端口各引腳處于第二功能的條件是:1、串行I/O處于運行狀態(tài)(RXD,TXD);2、打開了處部中斷(INT0,INT1);3、定時器/計數(shù)器處于外部計數(shù)狀態(tài)(T0,T1)4、執(zhí)行讀寫外部RAM的指令(RD,WR)

在應(yīng)用中,如不設(shè)定P3端口各位的第二功能(WR,RD信號的的產(chǎn)生不用設(shè)置),則P3端口線自動處于第一功能狀態(tài),也就是靜態(tài)I/O端口的工作狀態(tài)。在更多的場合是根據(jù)應(yīng)用的需要,把幾條端口線設(shè)置為第二功能,而另外幾條端口線處于第一功能運行狀態(tài)。在這種情況下,不宜對P3端口作字節(jié)操作,需采用位操作的形式。40信號引腳的第二功能P3口第二功能412.2MCS-51存儲器數(shù)據(jù)存儲器(RAM)--用來存放程序運行中所需要的常數(shù)和變量。當然,全局數(shù)據(jù)也可以放在RAM中。特點:程序存儲器(ROM)、數(shù)據(jù)存儲器(RAM)分開,各有各的尋址系統(tǒng)、控制信號和功能。程序存儲器(ROM)--用來存放程序和始終要保留的數(shù)據(jù)。MCS-51存儲器的劃分方法如下:(1)從物理結(jié)構(gòu)上劃分,有4個存儲空間

片內(nèi)程序存儲器。

片外程序存儲器。

片內(nèi)數(shù)據(jù)存儲器。

片外數(shù)據(jù)存儲器。(2)從邏輯上劃分,有3個存儲器地址空間

片內(nèi)外統(tǒng)一編址的64KB的程序存儲器地址空間。

片內(nèi)(128+128)B的數(shù)據(jù)存儲器地址空間。

片外64KB的數(shù)據(jù)存儲器地址空間。MCS-51(8051)存儲結(jié)構(gòu)如圖2-4所示。圖2-4MCS-51(8051)存儲結(jié)構(gòu)在訪問不同的邏輯存儲空間時,MCS-51提供了不同形式的指令:

MOV指令用于訪問內(nèi)部數(shù)據(jù)存儲器。

MOVC用于訪問片內(nèi)外程序存儲器。

MOVX用于訪問外部數(shù)據(jù)存儲器。45程序存儲器:程序存儲器用于存放已編制好的程序及程序中用到的常數(shù)或表格等。程序存儲器由ROM構(gòu)成,單片機掉電后ROM內(nèi)容不會丟失。程序存儲器以PC(程序計數(shù)器)作地址指針,可尋址空間為64K(0000H—FFFFH)字節(jié)。8051/8751單片機內(nèi)部分別駐留4K(0000H—0FFFH)字節(jié)ROM/EPROM。8031則沒有片內(nèi)程序存儲器。468031單片機接低電平。51系列單片機64K字節(jié)程序存儲器統(tǒng)一編址。程序從片內(nèi)ROM開始執(zhí)行,當PC值超過片內(nèi)ROM容量時會自動轉(zhuǎn)向外部存儲器空間。程序從外部存儲器開始執(zhí)行。4751系列單片機復(fù)位后PC=0000H,系統(tǒng)從0000H開始執(zhí)行程序。安排一條跳轉(zhuǎn)指令。0003H—0032H單元被保留專用于中斷服務(wù)程序(入口地址)。每個中斷服務(wù)程序只有8個字節(jié)單元存放,顯然不夠,故此8個單元通常放一條跳轉(zhuǎn)指令。指向被實際分配的中斷服務(wù)程序段。4849中斷服務(wù)程序首地址:外部中斷0() 0003H定時器0溢出中斷 000BH外部中斷1() 0013H定時器1溢出中斷 001BH串行口中斷 0023H定時器2溢出/T2EX(負跳變) 002BH50數(shù)據(jù)存儲器MCS-51系列單片機的數(shù)據(jù)存儲器在物理和邏輯上都分為兩個地址空間。00H—7FH(0—127)128字節(jié)RAM區(qū);80H—FFH(128—255)128字節(jié)專用寄存器區(qū)。數(shù)據(jù)存儲器用于存放程序運算的中間結(jié)果、狀態(tài)標志位等。數(shù)據(jù)存儲器由RAM構(gòu)成,一旦掉電,其數(shù)據(jù)將丟失。51內(nèi)部RAM低128字節(jié)(00H—7FH)四個通用寄存器區(qū),每個區(qū)有8個工作寄存器R0—R7D4D3=00—0區(qū);D4D3=01—1區(qū);D4D3=10—2區(qū);D4D3=11—3區(qū)根據(jù)程序狀態(tài)字PSW(特殊功能寄存器,地址D0H)中的D4D3位來指示的。通過對PSW的D4D3的修改,便能任意選擇一個工作寄存器區(qū)。寄存器區(qū)52位尋址區(qū)(20H—2FH)16個字節(jié)。16*8=128位,每一位都有一個位地址,范圍為:00H—7FH,位地址區(qū)也可作為一般RAM使用。位尋址區(qū)53用戶RAM區(qū)(數(shù)據(jù)緩沖區(qū))單元地址:30H~7FH在此區(qū)域中,用戶只能以存儲單元(字節(jié))形式使用。通常將堆棧建立在此區(qū)域中。(什么是堆棧?)54

專用功能寄存器(SFR)具體執(zhí)行功能:鎖存器、定時器、串行口數(shù)據(jù)緩沖器、各種控制寄存器、狀態(tài)寄存器等。在片內(nèi)數(shù)據(jù)存儲器的80H~FFH單元(高128B)中,有21個單元作為專用寄存器(SFR),又稱特殊功能寄存器。55●累加器ACC(最常用專用寄存器)暫存寄存器,用于提供操作數(shù)和存放運算結(jié)果。直接與內(nèi)部總線相連。一般信息傳遞和交換都要通過ACC。常用專用功能寄存器56●寄存器B乘法指令兩個操作數(shù)分別取自A、B,其結(jié)果放在A、B寄存器隊中;除法指令,被除數(shù)取自A,除數(shù)取自B,商放A,余數(shù)放B。57●程序狀態(tài)控制字PSWRS1,RS0--選擇工作寄存器區(qū);CY--高位進位標志,8位運算產(chǎn)生進位或借位;AC--輔助進位標志,半字節(jié)進位標志;OV--溢出標志位,用于帶符號數(shù)運算的溢出。P—奇偶校驗標志位,A寄存器中奇偶性判別。“1”的個數(shù)為偶P=0“1”的個數(shù)為奇P=1F0:用戶標志位。58●數(shù)據(jù)指針DPTR16位寄存器,DPH,DPL用來訪問外部RAM的地址寄存器,地址范圍64K。●端口P0—P3專用寄存器P0—P3端口名和寄存器名一一對應(yīng)可采用直接尋址方式參與操作。MOVA,P059●串行數(shù)據(jù)緩沖器SBUF存放欲發(fā)送或已接收的數(shù)據(jù)。雖然用一個緩沖器99H,但卻以兩個獨立的緩沖器出現(xiàn)。一個發(fā)送,一個接收。●定時器/計數(shù)器兩個16為定時/計數(shù)器T0、T1。各有兩個8為獨立寄存器組成,TH0、TL0,TH1、TL1。●其他控制寄存器6061

位處理器(也稱布爾處理機)MCS-51片內(nèi)CPU還是一個性能優(yōu)異的位處理器,也就是說MCS-51實際上又是一個完整而獨立的1位單片機。該布爾處理機除了有自己的CPU、位寄存器、位累加器(即進位標志Cy)、I/O口和位尋址空間外,還有專供位操作的指令系統(tǒng),可以直接尋址對位存儲單元和SFR的某一位進行操作。MCS-51單片機對于位操作(布爾處理)有置位、復(fù)位、取反、測試轉(zhuǎn)移、傳送、邏輯與和邏輯或運算等功能。MCS-51單片機的工作方式包括:復(fù)位方式、程序執(zhí)行方式、節(jié)電方式和EPROM的編程和校驗方式,在不同的情況下,其工作方式也不相同。2.3.1復(fù)位方式單片機在啟動運行時需要復(fù)位,使CPU以及其他功能部件處于一個確定的初始狀態(tài),并從這個狀態(tài)開始工作,單片機應(yīng)用程序必須以此作為設(shè)計前提。2.3MCS-51工作方式2.3.2程序執(zhí)行工作方式程序執(zhí)行方式通常可分為連續(xù)執(zhí)行和單步執(zhí)行兩種工作方式。

1.連續(xù)執(zhí)行方式連續(xù)執(zhí)行方式是所有單片機執(zhí)行工作程序所需要的一種工作方式。2.單步執(zhí)行方式用戶在調(diào)試程序時,常常要一條一條地執(zhí)行程序中的每一條指令。單步執(zhí)行方式就是為用戶調(diào)試程序而設(shè)計出的一種工作方式。

節(jié)電工作方式節(jié)電工作方式是一種能減少單片機功耗的工作方式,通常有空閑方式和掉電方式兩種。1.掉電方式單片機在運行過程中,如果發(fā)生掉電,片內(nèi)RAM和SFR中的信息將會丟失。為防止信息丟失,可以把一組備用電源加到RST/VPD端,當VCC上的電壓低于VPD上的電壓時,備用電源通過VPD端,以低功耗保持內(nèi)部RAM和SFR中的數(shù)據(jù)。2.空閑方式

進入空閑方式后,CPU停止工作,但中斷、串行口和定時器/計數(shù)器可以繼續(xù)工作。基本概念:時序:就是計算機指令執(zhí)行時各種微操作在時間上的順序關(guān)系。時鐘:計算機執(zhí)行指令的過程可分為取指令、分析指令和執(zhí)行指令三個步驟,每個步驟又由許多微操作所組成,這些微操作必須在一個統(tǒng)一的時鐘脈沖的控制下才能按照正確的順序執(zhí)行。時鐘脈沖由時鐘振蕩器產(chǎn)生。2.4MCS-51單片機的時序69

控制器1.時鐘電路(a)內(nèi)部時鐘電路;(b)HMOS型外部振蕩源(C)CHMOS型外部振蕩源CPU時序單片機的時序是指CPU在執(zhí)行指令時所需控制信號的時間順序。時序信號是以時鐘脈沖為基準產(chǎn)生的。CPU發(fā)出的時序信號有兩類:一類用于片內(nèi)各功能部件的控制,另一類信號通過單片機的引腳送到外部。2.MCS-51單片機的取指/執(zhí)行時序取指令階段:把程序計數(shù)器PC中的指令地址送到程序存儲器,選中指定單元并從中取出需要執(zhí)行的指令。指令執(zhí)行階段:對指令操作碼進行譯碼,以產(chǎn)生一系列控制信號完成指令的執(zhí)行。72單片機時間單位振蕩有兩種方式:外部、內(nèi)部振蕩周期(時鐘周期):也稱為晶振周期,振蕩周期是單片機的基本時間單位。73時序定時單位:(1)拍節(jié)P:振蕩脈沖周期,用P表示;(2)狀態(tài)S:振蕩周期的2倍,用S表示;74(3)機器周期:

執(zhí)行一條指令的過程可分為若干個階段,每一階段完成一規(guī)定的操作,完成一個規(guī)定操作所需要的時間稱為一個機器周期。MCS-51采用定時方式,因此有固定的機器周期,一個機器周期等于6個狀態(tài)周期,12個振蕩周期75(4)指令周期(InstructionCycle):取出并執(zhí)行一條指令的時間。由于各條指令的操作功能不同,因此各種指令的指令周期是不盡相同的。可包含一、二、三或四個機器周期。(5)總線周期(BUSCycle):也就是一個訪存儲器或I/O端口操作所用的時間。指令周期、總線周期和時鐘周期之間的關(guān)系:

一個指令周期由若干個總線周期組成,而一個總線周期時間又包含有若干個時鐘周期。一個總線周期包含一個(只有取址周期)或多個機器周期。77當振蕩頻率為12M時,一個機器周期是1微秒(

s)頻率=1/周期,周期=1/頻率一個振蕩周期=1/12(

s),一個機器周期是1(

s)。當振蕩頻率為6M時,一個機器周期是2微秒(

s)MCS-51共有111條指令。按其長度可分為:單字節(jié)指令、雙字節(jié)指令、三字節(jié)指令。MCS-51指令的取指/執(zhí)行時序

程序:指令的集合稱為程序,執(zhí)行程序的過程就是執(zhí)行指令的過程。

單片機執(zhí)行任何一條指令時都可以分為取指階段和

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論