




已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
本節(jié)主要介紹8051單片機的存貯器結構,23 8051存儲器配置,3.3.1 微機的存貯器結構分類,普林斯頓結構和哈佛結構 普林斯頓結構 微機只有一個地址空間,ROM和RAM可以隨意安排在這一地址范圍內不同的空間,即ROM和RAM的地址同在一個隊列里分配不同的地址空間。CPU訪問存儲器時,一個地址對應唯一的存儲器單元,可以是ROM也可以是RAM,并用同類訪問指令。,哈佛結構,哈佛結構 程序存儲器和數據存儲器分開的結構形式 8051的存儲器在物理結構上采用哈佛結構; 分程序存儲器空間和數據存儲器空間; 有四個存儲空間: 片內程序存儲器 片外程序存儲器 片內數據存儲器 片外數據存儲器空間,3.3.2 51存儲器的結構,從用戶使用的角度,8051存儲器地址空間分為三類: 程序存儲器地址: 片內、片外統(tǒng)一編址0000HFFFFH 64K字節(jié)的(用16位地址) ; 數據存儲器: 64K字節(jié)片外部地址空間, 地址也從0000HFFFFH(用16位地址); 256字節(jié)片內 數據存儲器地址空間 (用8位地址)。,51存儲器空間配置圖,8051CPU區(qū)分RAM的方法,上述三個存儲空間地址是重迭的,如何區(qū)別這三個不同的邏輯空間呢? 8051的指令系統(tǒng)設計了不同的數據傳送指令符號: 訪問片內、片外ROM指令用MOVC, 訪問片外RAM指令用MOVX, 訪問片內RAM指令用MOV。,一、程序存儲器地址空間,程序存儲器用于存放編好的程序和表格常數。 程序存儲器通過16位程序計數器(PC)尋址,尋址能力為64K字節(jié)。這使得能在64K地址空間內任意尋址, 沒有指令使程序能控制從程序存儲器空間轉移到數據存儲器空間。,805l8751的64K程序存儲器空間; 片內ROM/PROM為4K字節(jié),地址為O000H0FFFH; 片外最多可擴至64K字節(jié)ROMEPROM,地址1FFFHFFFFH,片內外是統(tǒng)一編址的; 當引腳EA接高電平時,8051的程序計數器PC在0000H0FFFH范圍內(即前4K字節(jié)地址)執(zhí)行片內ROM中的程序;當指令地址超過0FFFH后,就自動地轉向片外ROM取指令; 當引腳EA接低電平(接地)時,8051片內ROM不起作用,CPU只能從片外ROMEPROM中取指令,地址從0000H開始編址。這種接法特別適用于采用8031單片機的場合,由于8031片內不帶ROM,所以使用時必須使EA0,以便能夠從外部擴展EPROM(如2764,2732)中取指令; 8051從片內程序存儲器和片外程序存儲器取指時執(zhí)行速度相同。,程序存儲器的某些單元留給系統(tǒng)使用,存儲單元 保留目的 0000H一0002H 復位后初始化引導程序 0003H一000AH 外部中斷0 000BH一0012H 定時器0溢出中斷 0013H一001AH 外部中斷1 001BH一002AH 定時器1溢出中斷 0023H一002AH 串行端口中斷 002BH 定時器2中斷(8052才有),存儲單元0000H一0002H用作8051上電復位后引導程序存放單元。 因為805180318751上電復位后程序計數器PC的內容為0000H,所以CPU總是從0000H開始執(zhí)行程序。 在這三個單元中存有轉移指令,那么程序就被引導到轉移指令指定的ROMEPROM空間去執(zhí)行。 因此,在8051的程序存貯器的開頭都安排的是一條轉移指令 AJMP #add13 ; LJMP #add16 ;,中斷矢量區(qū),0003H002AH單元均勻地分為五段,用作五個中斷服務程序的入口。 例如,外部中斷引腳INT0(P32)有效時,即引起中斷申請, CPU響應中斷后自動將地址0003H裝入PC,程序就自動轉向0003H單元開始執(zhí)行。 如果事先在0O03H000AH存有引導(轉移)指令,程序就被引導(轉移指令)到指定的中斷服務程序空間去執(zhí)行。 0003H稱中斷矢量地址。,中斷矢量地址表,中斷源 中斷服務程序入口地址 外部中斷0 0003H 定時計數器0溢出 000BH 外部中斷1 0013H 定時計數器1溢出 001BH 串行口 0023H,二、數據存儲器地址空間,數據存儲器RAM用于存放運算的中間結果、數據暫存和緩沖、標志位等。 數據存儲器空間也分成片內和片外兩大部分,即片內RAM和片外RAM。 8051片外數據存儲器空間為64K,從OO00HFFFFH; 片內存儲器空間為256字節(jié),地址從0000H00FFH。,(一)片外RAM,片外數據存儲器與片內數據存儲器空間低地址0000H00FFH是重迭的, 如何區(qū)別片內、片外RAM空間呢? 8051有MOV和MOVX兩種指令、用以區(qū)分片內、片外RAM空間。 片內RAM使用MOV指令, 片外64K RAM空間專門為MOVX指令所用。,(二)片內RAM,片內數據存儲器最大可尋址256個單元, 它們又分為兩個部分: 低128字節(jié)(00H一7FH)是 真正的RAM區(qū), 高128字節(jié)(80HFFH)為 特殊功能寄存器(SFR)區(qū)。,1.低128字節(jié)RAM (00H7FH),分為三個區(qū): 工作寄存器 區(qū)(00H1FH) 位尋址區(qū) (20H2FH) 真正的RAM區(qū) (30H7FH),工作寄存器 區(qū)(00H1FH),00HlFH地址安排為四組工作寄存器區(qū), 每組有8個工作寄存器(R0一R7),共占32個單元。 通過對程序狀態(tài)字PSW中RSl、RS0的設置, 每組寄存器均可選作CPU的當前工作寄存器組。 若程序中并不需要四組,那么其余可用作一般RAM單元。 CPU復位后,選中第0組工作寄存器。,工作寄存器組 選擇,位尋址區(qū) (20H2FH),字節(jié)地址 D7 D6 D5 D4 D3 D2 D1 D0 2FH 7FH 7EH 7DH 7CH 7BH 7AH 79H 78H 2EH 77H 76H 75H 74H 73H 72H 7 1H 70H 20H 07H 06H 05H 04H 03H 02H 01H 00H,低128字節(jié)RAM單元地址范圍也是00H一7FH, 805l采用不同尋址方式來加以區(qū)分, 即訪問128個位地址用位尋址方式, 訪問低128字節(jié)單元用直接尋址和間接尋址,這樣就可以區(qū)分開00H一7FH是位地址還是字節(jié)地址。 這些可尋址位,通過執(zhí)行指令可直接對某一位操作,如置1、清0或判l(wèi)、判0等,可用作軟件標志位或用于位(布爾)處理。 這種位尋址能力是8051的一個重要特點。,真正的RAM區(qū),地址范圍:30H7FH 真正用作RAM:非常靈活 應合理安排;如:堆棧區(qū),顯示區(qū) 單片機軟件水平的高低 與RAM區(qū)的應用有很大關系,2. 高128字節(jié)RAM一特殊功能寄存器(SFR),8051片內高128字節(jié)RAM中,除程序計數器PC外,有21個專用寄存器(SFR),也稱特殊功能寄存器, 它們離散地分布在80HFFH的RAM空間中。 訪問特殊功能僅允許使用直接尋址方式。 在21個特殊功能寄存器SFR中,有11個特殊功能寄存器具有位尋址能力,它們的字節(jié)地址正好能被8整除,,下面介紹部分特殊功能寄存器(SFR),其余將在后續(xù)的章節(jié)中講述。 累加器ACC(E0H) 累加器ACC是8051最常用、最繁忙的8位特殊功能寄存器,許多指令的操作數取自于ACC,許多運算結果也存放于ACC中。在指令系統(tǒng)中采用A作為累加器ACC的助記符。 寄存器B(FOH) 在乘、除指令中,用到了8位B寄存器。乘法指令的兩個操作數分別取自A和B,乘積存于B、A兩個8位寄存器中。除法指令中,A中存放被除數,B中放除數,商存放于A中,B中存放余數。 在其它指令中,B可作為一般通用寄存器或一個RAM單元使用。,程序狀態(tài)寄存器PSW(D0H) PSW是一個8位特殊功能寄存器,它的各位包含了程序執(zhí)行后的狀態(tài)信息,供程序查詢或判別之用。各位的含義及其格式如下:,CY(PSW7) 進位標志位。在執(zhí)行加法(或減法)運算指令時,如果運算結果最高位(位7)向前有進位(或借位),CY位由硬件自動置“1”;如運算結果最高位(位7)無進位(或借位),則CY清“0”。CY也是8051在進行位操作(布爾操作)時的位累加器。 AC(PSW6) 半進位標志位,也稱輔助進位標志。當執(zhí)行加法(或減法)操作時,其運算結果(和或差)產生由低半字節(jié)(位3)向高半字節(jié)有半進位(或借位)時,AC位將被硬件自動置“1”,否則AC被自動情“0”。 F0(PSW5) 用戶標志位。用戶可以根據自己的需要對F0位賦予一定的含義,由用戶置拉、復位,作為軟件標志。 RSO和RSl(PSW4和PSW5) 工作寄存器組選擇控 制位。,OV(PSW2) 溢出標志位。當進行補碼運算時,如有溢出,即當運算結果超出+127128的范圍時,OV位由硬件自動置OV1;無溢出時,OV0。 PSW1為保留位,805l末用,8052為Fl用戶標志位。 P(PSWo) 奇偶檢驗標志位。每條指令執(zhí)行完后,該位始終跟蹤指示累加器A中“l(fā)”的個數:如結果A中有奇數個“l(fā)”,則置P1,否則P0。常用于校驗串行通訊中的數據傳送是否出錯。,(4) 棧指針SP(81H),8051同一般微處理器一樣,設有堆棧。在片內RAM中專門開辟出來一個區(qū)域,數據的存取是以“后進先出”的結構方式處理的。這種數據結構方式對于處理中斷、調用子程序都非常方便。 堆棧指針SP為8位特殊功能寄存器,SP的內容即堆棧指針可指向8051片內00H7FH RAM的任何單元。 實際堆棧區(qū)只能在30H7FH之間 系統(tǒng)復位后,SP初始化為07H,即指向07H的RAM單元。,8051的堆棧結構屬于向上生長型的堆棧。 在使用堆棧之前,先給SP賦值,以規(guī)定堆棧的起始位置,稱為棧底。 當數據壓入堆棧后,SP自動加1,即RAM地址單元加1以指出當前棧頂位置。,(5) 數據指針DPTR(83H,82H),DPTR是一個16位的特殊功能寄存器,其高位字節(jié)寄存器用DPH表示(地址83H),低位字節(jié)寄存器用DPL表示(地址82H)。 DPTR既可以作為一個16位寄存器來處理
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 藥品配送召回管理制度
- 藥庫防盜安全管理制度
- 藥店處方調劑管理制度
- 藥店藥品服務管理制度
- 營運客車員工管理制度
- 設備公司行政管理制度
- 設備安裝改造管理制度
- 設備改造報廢管理制度
- 設備清理保養(yǎng)管理制度
- 設備缺陷閉環(huán)管理制度
- 2025年度安全生產月培訓課件
- 2025春季學期國開電大本科《人文英語4》一平臺機考真題及答案(第七套)
- 2025年全國二卷高考英語作文深度解析及寫作指導
- 2025年河北省萬唯中考定心卷生物(一)
- 2025-2030中國食物病原體檢測行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析研究報告
- 托里縣鐵廠溝鎮(zhèn)工業(yè)固廢垃圾填埋場項目環(huán)境影響報告書
- 中草藥種植技術課件
- T/CHES 63-2022活塞式調流調壓閥技術導則
- T/CCMA 0048-2017二手工程機械評估師
- 傳染病防治法試題(答案)
- 家居建材聯(lián)盟協(xié)議書
評論
0/150
提交評論