51單片機存儲器內(nèi)部結(jié)構(gòu)_第1頁
51單片機存儲器內(nèi)部結(jié)構(gòu)_第2頁
51單片機存儲器內(nèi)部結(jié)構(gòu)_第3頁
51單片機存儲器內(nèi)部結(jié)構(gòu)_第4頁
51單片機存儲器內(nèi)部結(jié)構(gòu)_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、MCS-51單片機在物理結(jié)構(gòu)上有四個存儲空間:1、片內(nèi)程序存儲器2、片外程序存儲器3、片內(nèi)數(shù)據(jù)存儲器4、片外數(shù)據(jù)存儲器但在邏輯上,即從用戶的角度上,8051單片機有三個存儲空間:1、片內(nèi)外統(tǒng)一編址的64K的程序存儲器地址空間(MOVC)2、256B的片內(nèi)數(shù)據(jù)存儲器的地址空間(MOV)3、以及64K片外數(shù)據(jù)存儲器的地址空間(MOVX)在訪問三個不同的邏輯空間時,應(yīng)采用不同形式的指令(具體我們在后面的指令系統(tǒng)學(xué)習(xí)時將會講解),以產(chǎn)生不同的存儲器空間的選通信號。程序內(nèi)存ROM尋址范圍:0000H FFFFH 容量64KBEA = 1,尋址內(nèi)部ROM;EA = 0,尋址外部ROM地址長度:16位作用:

2、 存放程序及程序運行時所需的常數(shù)。七個具有特殊含義的單元是:0000H 系統(tǒng)復(fù)位,PC指向此處;0003H 外部中斷0入口000BH T0溢出中斷入口0013H 外中斷1入口001BH T1溢出中斷入口0023H 串口中斷入口002BH T2溢出中斷入口內(nèi)部數(shù)據(jù)存儲器RAM      物理上分為兩大區(qū):00H 7FH即128B內(nèi)RAM 和 SFR區(qū)。作用:作數(shù)據(jù)緩沖器用。下圖是8051單片機存儲器的空間結(jié)構(gòu)圖推薦精選程序存儲器    一個微處理器能夠聰明地執(zhí)行某種任務(wù),除了它們強大的硬件外,還需要它們運行的軟件,其

3、實微處理器并不聰明,它們只是完全按照人們預(yù)先編寫的程序而執(zhí)行之。那么設(shè)計人員編寫的程序就存放在微處理器的程序存儲器中,俗稱只讀程序存儲器(ROM)。程序相當(dāng)于給微處理器處理問題的一系列命令。其實程序和數(shù)據(jù)一樣,都是由機器碼組成的代碼串。只是程序代碼則存放于程序存儲器中。   MCS-51具有64kB程序存儲器尋址空間,它是用于存放用戶程序、數(shù)據(jù)和表格等信息。對于內(nèi)部無ROM的8031單片機,它的程序存儲器必須外接,空間地址為64kB,此時單片機的端必須接地。強制CPU從外部程序存儲器讀取程序。對于內(nèi)部有ROM的8051等單片機,正常運行時,則需接高電平,使CPU先從內(nèi)部的程

4、序存儲中讀取程序,當(dāng)PC值超過內(nèi)部ROM的容量時,才會轉(zhuǎn)向外部的程序存儲器讀取程序。    當(dāng)=1時,程序從片內(nèi)ROM開始執(zhí)行,當(dāng)PC值超過片內(nèi)ROM容量時會自動轉(zhuǎn)向外部ROM空間。    當(dāng)=0時,程序從外部存儲器開始執(zhí)行,例如前面提到的片內(nèi)無ROM的8031單片機,在實際應(yīng)用中就要把8031的引腳接為低電平。    8051片內(nèi)有4kB的程序存儲單元,其地址為0000H0FFFH,單片機啟動復(fù)位后,程序計數(shù)器的內(nèi)容為0000H,所以系統(tǒng)將從0000H單元開始執(zhí)行程序。但在程序存儲中有些特殊的單元,這在

5、使用中應(yīng)加以注意:    其中一組特殊是0000H0002H單元,系統(tǒng)復(fù)位后,PC為0000H,單片機從0000H單元開始執(zhí)行程序,如果程序不是從0000H單元開始,則應(yīng)在這三個單元中存放一條無條件轉(zhuǎn)移指令,讓CPU直接去執(zhí)行用戶指定的程序。    另一組特殊單元是0003H002AH,這40個單元各有用途,它們被均勻地分為五段,它們的定義如下:     0003H000AH 外部中斷0中斷地址區(qū)。     000BH0012H 定時/計數(shù)器0中斷地址區(qū)。

6、     0013H001AH 外部中斷1中斷地址區(qū)。     001BH0022H 定時/計數(shù)器1中斷地址區(qū)。     0023H002AH 串行中斷地址區(qū)。    可見以上的40個單元是專門用于存放中斷處理程序的地址單元,中斷響應(yīng)后,按中斷的類型,自動轉(zhuǎn)到各自的中斷區(qū)去執(zhí)行程序。從上面可以看出,每個中斷服務(wù)程序只有8個字節(jié)單元,用8個字節(jié)來存放一個中斷服務(wù)程序顯然是不可能的。因此以上地址單元不能用于存放程序的其他內(nèi)容,只能存放中斷服務(wù)程序。但

7、是通常情況下,我們是在中斷響應(yīng)的地址區(qū)安放一條無條件轉(zhuǎn)移指令,指向程序存儲器的其它真正存放中斷服務(wù)程序的空間去執(zhí)行,這樣中斷響應(yīng)后,CPU讀到這條轉(zhuǎn)移指令,便轉(zhuǎn)向其他地方去繼續(xù)執(zhí)行中斷服務(wù)程序。推薦精選下圖是ROM的地址分配圖:    從上圖中大家可以看到,0000H-0002H,只有三個存儲單元,3個存儲單元在我們的程序存放時是存放不了實際意義的程序的,通常我們在實際編寫程序時是在這里安排一條ORG指令,通過ORG指令跳轉(zhuǎn)到從0033H開始的用戶ROM區(qū)域,再來安排我們的程序語言。從0033開始的用戶ROM區(qū)域用戶可以通過ORG指令任意安排,但在應(yīng)用中應(yīng)注意,不

8、要超過了實際的存儲空間,不然程序就會找不到。數(shù)據(jù)存儲器    數(shù)據(jù)存儲器也稱為隨機存取數(shù)據(jù)存儲器。數(shù)據(jù)存儲器分為內(nèi)部數(shù)據(jù)存儲和外部數(shù)據(jù)存儲。MCS-51內(nèi)部RAM有128或256個字節(jié)的用戶數(shù)據(jù)存儲(不同的型號有分別),片外最多可擴展64KB的RAM,構(gòu)成兩個地址空間,訪問片內(nèi)RAM用“MOV”指令,訪問片外RAM用“MOVX”指令。它們是用于存放執(zhí)行的中間結(jié)果和過程數(shù)據(jù)的。MCS-51的數(shù)據(jù)存儲器均可讀寫,部分單元還可以位尋址。    MCS-51單片機的內(nèi)部數(shù)據(jù)存儲器在物理上和邏輯上都分為兩個地址空間,即:數(shù)據(jù)存儲器空間(低128

9、單元);特殊功能寄存器空間(高128單元);這兩個空間是相連的,從用戶角度而言,低128單元才是真正的數(shù)據(jù)存儲器。下面我們就來詳細的與大家講解一下:推薦精選低128單元:    片內(nèi)數(shù)據(jù)存儲器為8位地址,所以最大可尋址的范圍為256個單元地址,對片外數(shù)據(jù)存儲器采用間接尋址方式,R0、R1和DPTR都可以做為間接尋址寄存器,R0、R1是8位的寄存器,即R0、R1的尋址范圍最大為256個單元,而DPTR是16位地址指針,尋址范圍就可達到64KB。也就是說在尋址片外數(shù)據(jù)存儲器時,尋址范圍超過了256B,就不能用R0、R1做為間接尋址寄存器,而必須用DPTR寄存器做為間接

10、尋址寄存器。從上圖中我們可以看到,8051單片機片內(nèi)RAM共有256個單元(00H-FFH),這256個單元共分為兩部分。其一是地址從00H7FH單元(共128個字節(jié))為用戶數(shù)據(jù)RAM。從80HFFH地址單元(也是128個字節(jié))為特殊寄存器(SFR)單元。從圖1中可清楚地看出它們的結(jié)構(gòu)分布。1、通用寄存器區(qū)(00H-1FH)    在00H1FH共32個單元中被均勻地分為四塊,每塊包含八個8位寄存器,均以R0R7來命名,我們常稱這些寄存器為通用寄存器。這四塊中的寄存器都稱為R0R7,那么在程序中怎么區(qū)分和使用它們呢?聰明的INTEL工程師們又安排了一個寄存器程序狀

11、態(tài)字寄存器(PSW)來管理它們,CPU只要定義這個寄存的PSW的D3和D4位(RS0和RS1),即可選中這四組通用寄存器。對應(yīng)的編碼關(guān)系如下表所示。惹程序中并不需要用4組,那么其余的可用做一般的數(shù)據(jù)緩沖器,CPU在復(fù)位后,選中第0組工作寄存器。推薦精選2、位尋址區(qū)(20H-2FH)片內(nèi)RAM的20H2FH單元為位尋址區(qū),既可作為一般單元用字節(jié)尋址,也可對它們的位進行尋址。位尋址區(qū)共有16個字節(jié),128個位,位地址為00H7FH。位地址分配如下表所示:+CPU能直接尋址這些位,執(zhí)行例如置“1”、清“0”、求“反”、轉(zhuǎn)移,傳送和邏輯等操作。我們常稱MCS-51具有布爾處理功能,布爾處理的存儲空間指的就是這些為尋址區(qū)。3、用戶RAM區(qū)(30H-7FH)在片內(nèi)RAM低128單元中,通用寄存器占去32個單元,位尋址區(qū)占去16個單元,剩下的80個單元就是供用戶使用的一般RAM區(qū)了,地址單元為30H-7FH。對這部份區(qū)域的使用不作任何規(guī)定和限制,但應(yīng)說明的是,堆棧一般開辟在這個區(qū)

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論