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

下載本文檔

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

文檔簡介

單片機結(jié)構(gòu)存儲器結(jié)構(gòu)第一頁,共二十六頁,2022年,8月28日專用寄存器組專用寄存器組主要用來指示當(dāng)前要執(zhí)行指令的內(nèi)存地址、存放操作數(shù)和指示指令執(zhí)行后的狀態(tài)等。專用寄存器組主要包括以下專用寄存器:1)程序計數(shù)器PC(ProgramCounter)PC是二進制16位的程序地址寄存器,用來存放下一條需要執(zhí)行指令的地址,能自動加1。單片機復(fù)位后PC內(nèi)容為0000H2)累加器ACC(Accumulator)二進制8位寄存器,專門用來存放操作數(shù)或運算結(jié)果。MOVA,#03H;A3ADDA,#05H;AA+05H第二頁,共二十六頁,2022年,8月28日3)通用寄存器B(GeneralPurposeRegister)二進制8位寄存器,專用于乘法和除法,乘除運算前,用于存放乘數(shù)或除數(shù),運算后用于存入乘積的高八位或除法的余數(shù)。MOVA,#05H;A5MOVB,#03H;

B3MULA,B;BAAxB=5*3第三頁,共二十六頁,2022年,8月28日4)程序狀態(tài)字PSW(ProgramStatusWord)PSW用來存放指令執(zhí)行后的有關(guān)狀態(tài)(1)Cy:進位標(biāo)志位,表示加減運算過程中最高位A7(ACC最高位)有無進位或借位。(2)AC:輔助進位位,用于表示加減運算過程中低4位有無向高4位(即A4)進位或借位。(3)F0:用戶標(biāo)志位,由用戶確定。(4)RS1和RS0:工作寄存器組(R0-R7)選擇,用戶通過改變RS1和RS0的狀態(tài)來決定工作寄存器的實際物理地址。主要用于保護R0-R7中的數(shù)據(jù),多用于中斷服務(wù)程序。第四頁,共二十六頁,2022年,8月28日(5)OV:溢出標(biāo)志,指示運算過程中是否發(fā)生了溢出。(6)P:奇偶標(biāo)志位,用于指示運算結(jié)果中1的個數(shù)例:F0=0,RS1=0,RS0=0,執(zhí)行下面指令后,PSW=?MOVA,#0FH;ADDA,#0F8H;OV確定方法:OV=OV=CPCS=11=0

PSW=C1H

第五頁,共二十六頁,2022年,8月28日5)堆棧指針SP(stackpointer)8位寄存器,能自動加1或減1,專門用于存放堆棧的棧頂?shù)刂?。堆棧是一種能按“先進后出”或“后進先出”規(guī)律存取數(shù)據(jù)的RAM區(qū)域(P16),主要用于子程序和中斷服務(wù)程序中保護現(xiàn)場。例:下面指令設(shè)定了棧底地址70HMOVSP,#70H第六頁,共二十六頁,2022年,8月28日6)數(shù)據(jù)指針DPTR16位寄存器,可以用來存入片內(nèi)ROM的地址,也可以用來存放片外RAM或片外ROM的地址.例:設(shè)片外RAM的2000H單元中有一個數(shù)x,若要把它取入累加器A中。MOVDPTR,#2000H;DPTR2000HMOVXA,@DPTR;Ax第七頁,共二十六頁,2022年,8月28日五、MCS—51單片機存儲器及存儲空間1MCS—51單片機存儲器分類及配置

MCS—51單片機存儲器的分類從物理結(jié)構(gòu)上可分為:片內(nèi)、片外程序存儲器(8031和8032沒有片內(nèi)程序存儲器)與片內(nèi)、片外數(shù)據(jù)存儲器4個部分;從尋址空間分布可分為:程序存儲器、內(nèi)部數(shù)據(jù)存儲器和外部數(shù)據(jù)存儲器3大部分;從功能上可分為:程序存儲器、內(nèi)部數(shù)據(jù)存儲器、特殊功能寄存器、位地址空間和外部數(shù)據(jù)存儲器5大部分。片內(nèi)、片外程序存儲器和數(shù)據(jù)存儲器各自總?cè)萘繛?4KB。第八頁,共二十六頁,2022年,8月28日2MCS51單片機的存儲空間64KB的外部ROM地址空間64KB的外部RAM地址空間4KB的片內(nèi)ROM(8051)128B片內(nèi)RAM特殊功能寄存器第九頁,共二十六頁,2022年,8月28日MCS—51單片機存儲器空間結(jié)構(gòu)圖(a)程序存儲器;(b)內(nèi)部數(shù)據(jù)存儲器;(c)外部數(shù)據(jù)存儲器第十頁,共二十六頁,2022年,8月28日3程序存儲器1.程序存儲器的編址計算機的工作是按照事先編制好的程序命令一條條循序執(zhí)行的,程序存儲器就是用來存放這些已編好的程序和表格常數(shù),它由只讀存儲器ROM或EPROM組成。2.程序運行的入口地址實際應(yīng)用時,程序存儲器的容量由用戶根據(jù)需要擴展,而程序地址空間原則上也可由用戶任意安排。但程序最初運行的入口地址,MCS—51單片機是固定的,用戶不能更改。程序存儲器中有復(fù)位和中斷源共7個固定的入口地址。第十一頁,共二十六頁,2022年,8月28日MCS—51單片機復(fù)位、中斷入口地址第十二頁,共二十六頁,2022年,8月28日單片機復(fù)位后程序計數(shù)器PC的內(nèi)容為0000H,故必須從0000H單元開始取指令來執(zhí)行程序。0000H單元是系統(tǒng)的起始地址,一般在該單元存放一條無條件轉(zhuǎn)移指令,用戶設(shè)計的程序是從轉(zhuǎn)移后的地址開始存放執(zhí)行的。可以用MOVC指令訪問程序存儲器(ROM),使用PSEN信號選通片外ROM。單片機EA引腳接地,從片內(nèi)ROM取指,接+5V,則從片內(nèi)ROM取指。訪問程序存儲器一定用16位地址。第十三頁,共二十六頁,2022年,8月28日4內(nèi)部數(shù)據(jù)存儲器

1.內(nèi)部數(shù)據(jù)存儲器的編址MCS—51系列單片機的內(nèi)部數(shù)據(jù)存儲器由讀寫存儲器RAM組成,用于存儲數(shù)據(jù)。它由RAM塊和特殊功能寄存器(SFR)塊組成。2.內(nèi)部數(shù)據(jù)存儲器RAM塊內(nèi)部數(shù)據(jù)存儲器RAM塊共分為工作寄存器區(qū)、位尋址區(qū)和數(shù)據(jù)緩沖區(qū)3個部分。1)工作寄存器區(qū)內(nèi)部RAM塊的00H~1FH區(qū),共分4個組,每組有8個工作寄存器R0~R7,共32個內(nèi)部RAM單元。第十四頁,共二十六頁,2022年,8月28日工作寄存器和RAM地址對照表第十五頁,共二十六頁,2022年,8月28日工作寄存器共有4組,但程序每次只用1組,其它各組不工作。哪1組寄存器工作由程序狀態(tài)字PSW中的PSW.3(RS0)和PSW.4(RS1)兩位來選擇,其對應(yīng)關(guān)系如表2―6所示。CPU通過軟件修改PSW中RS0和RS1兩位的狀態(tài),就可任選一個工作寄存器工作,這個特點使MCS—51單片機具有快速現(xiàn)場保護功能,對于提高程序的效率和響應(yīng)中斷的速度是很有利的。若程序中并不要4個工作寄存器組,那么剩下的工作寄存器組所對應(yīng)的單元也可以作為一般的數(shù)據(jù)緩沖區(qū)使用。第十六頁,共二十六頁,2022年,8月28日2)位尋址區(qū)20H~2FH單元為位尋址區(qū),這16個單元(共計128位)的每1位都有一個8位表示的位地址,位地址范圍為00H~7FH。位尋址區(qū)的每1位都可當(dāng)作軟件觸發(fā)器,由程序直接進行位處理。通??梢园迅鞣N程序狀態(tài)標(biāo)志,位控制變量存于位尋址區(qū)內(nèi)。同樣,位尋址的RAM單元也可以按字節(jié)操作作為一般的數(shù)據(jù)緩沖第十七頁,共二十六頁,2022年,8月28日內(nèi)部RAM中位地址表第十八頁,共二十六頁,2022年,8月28日3)數(shù)據(jù)緩沖區(qū)用于存放運算數(shù)據(jù)和結(jié)果。30H~7FH是數(shù)據(jù)緩沖區(qū),也即用戶RAM區(qū),共80個單元,還包括不使用的可以位尋址的字節(jié)和不使用的工作寄存器區(qū)都可以作用數(shù)據(jù)緩沖區(qū)。第十九頁,共二十六頁,2022年,8月28日4)堆棧與堆棧指針堆棧是在片內(nèi)RAM中臨時開辟的暫存區(qū),堆棧主要是為子程序調(diào)用和中斷操作而設(shè)立的。其具體功能有兩種:保護現(xiàn)場和保護斷點。MCS—51單片機堆棧區(qū)不是固定的,原則上可設(shè)在內(nèi)部RAM的任意區(qū)域內(nèi),但為了避開工作寄存器區(qū)和位尋址區(qū),一般設(shè)在30H以后的范圍內(nèi),棧頂?shù)奈恢糜蓪iT設(shè)置的堆棧指針寄存器SP(8位)指出。MCS—51單片機的堆棧屬向上生長型,如左圖所示。第二十頁,共二十六頁,2022年,8月28日堆棧用堆棧指針SP指示棧頂?shù)刂?。堆棧的?shù)據(jù)存放是后進先出,或先進后出。堆棧有兩種操作,即進棧和出棧操作,兩者都是對堆棧的棧頂單元進行的。進棧操作:先SP+1,再寫入數(shù)據(jù)出棧操作:先從SP指示的單元讀出數(shù)據(jù),再SP-1。第二十一頁,共二十六頁,2022年,8月28日3.特殊功能寄存器SFR塊特殊功能寄存器SFR,又稱為專用寄存器。它專用于控制、管理單片機內(nèi)算術(shù)邏輯部件、并行I/O口鎖存器、串行口數(shù)據(jù)緩沖器、定時器/計數(shù)器、中斷系統(tǒng)等功能模塊的工作,SFR的地址空間為80H~FFH。8051的SFR有18個占21個字節(jié);其中3個雙字節(jié)寄存器,它們是DPTR,T0,T1;SFR的地址可以被8整除的可以使用位尋址,共11個字節(jié)。80H~FFH之間的地址,除SFR外,其余地址無效。注意SFR都有復(fù)位值,因此凡用到的SFR,在單片機復(fù)位后應(yīng)重新賦值。8052還有3個SFR,占5個單元。程序計數(shù)器PC不是SFR。第二十二頁,共二十六頁,2022年,8月28日特殊功能寄存器名稱、標(biāo)識符、地址一覽表第二十三頁,共二十六頁,2022年,8月28日第二十四頁,共二十六頁,2022年,8月28日4.位尋址空間在MCS—51單片機的內(nèi)部數(shù)據(jù)寄存器RAM塊和特殊功能寄存器SFR塊中,有一部分地址空間可以按位尋址,按位尋址的地址空間又稱之為位尋址空間。位尋址空間一部分在內(nèi)部RAM的20H~2FH的16個字節(jié)內(nèi),共128位;另一部分在SFR的80H~FFH空間內(nèi),凡字節(jié)地址能被8整除的專用寄存器都有位地址,共93位。因此,MC

溫馨提示

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

評論

0/150

提交評論