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

下載本文檔

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

文檔簡介

1、2.4 AT89C51存貯器結(jié)構(gòu)與單片機的存儲器相關(guān)的幾個概念:數(shù)據(jù)存儲器 RAM (Random Access Memory ;程序存儲器 ROM (Read Only Memory ;閃速存儲器 Flash Memory;EPROM (UV Erazible Programmable ROM;EEPROM/E2PROM Electrical Erasable Programmable ROM;靜態(tài)存儲器 SRAM Static RAM(動態(tài)存儲器 DRAM Dynamic RAM ;按字節(jié)尋址:每個字節(jié) (8個位 占一個地址;按位尋址:有的存儲器每一個位就有一個地址。MCS-51的存儲器結(jié)

2、構(gòu):1、從物理上分四個區(qū):A 、片內(nèi)數(shù)據(jù)存儲器(基本型:128字 節(jié);增強型 256字節(jié) ;B 、片外數(shù)據(jù)存儲器(可擴展到 64K ;C 、片內(nèi)程序存儲器(51:4K ; 52:8K ; 31:0K ;D 、片外程序存儲器(可擴展到 64K 。2、從邏輯上分三個地址空間:A 、片內(nèi)外 64K 統(tǒng)一的程序存儲器;B 、片內(nèi) 128/256字節(jié)數(shù)據(jù)存儲器;C 、片外 64K 數(shù)據(jù)存儲器。程序存貯器的作用是:主要存放單片機的系統(tǒng)程序、應(yīng)用程序和表格。首先把我們用高級語言或匯編語言編寫的程序由編譯程序變換成二進制數(shù)或十六進制 數(shù)(HEX ,再用相應(yīng)的編程器寫入到程序存貯器中,用以控制單片機的工作。80

3、31內(nèi)部無程序存貯器,因此在使用這種單片機時必須在片外擴展程序存貯器; AT89C51內(nèi)部有 4KB 的程序存貯器,可以用編程器給其寫入程序,若其不夠用時要進行外 擴,外擴最多為 64KB 。程序存貯器的使用應(yīng)注意以下幾點:(1 EA 接高電平時程序?qū)钠瑑?nèi)程序存貯器開始執(zhí)行, 當(dāng) PC 值超過片內(nèi) ROM 容量時自 動轉(zhuǎn)向片外程序存貯器空間執(zhí)行程序。 EA 接低電平時, 單片機只能執(zhí)行片外程序存貯器中 的程序。 AT89C51的 EA 應(yīng)接高電平。(2 程序存貯器的某些單元被固定用于存放中斷源的中斷服務(wù)程序的入口地址。MCS-51單片機復(fù)位后,程序存貯器的內(nèi)容是 0000H ,故所有的單片機

4、系統(tǒng)必須從 0000H 單元開始取指令,執(zhí)行程序。程序存貯器中的 0000H 地址是系統(tǒng)程序的啟動地址, 一般在此單元中存放一條絕對跳轉(zhuǎn)指令, 跳向用戶的主程序的起始地址。 另外還有 5個單元 具有特殊用途,它們是 5個中斷源的中斷服務(wù)程序的入口地址,見表: 通常在這些入口處都放一條絕對跳轉(zhuǎn)指令, 其目的是由于兩個中斷入口間隔僅有 8個單 元,存放中斷服務(wù)程序一般是不夠的。程序存貯器分布圖(89C51為例 程序存儲器 64K , 地址指針為 16位 的程序計數(shù)器 PC 。 EA =1,從內(nèi)部 ROM 的 4K 開始訪問, PC 值大于 0FFFH (4K 時,自動轉(zhuǎn)向外部程序存儲器空間。 EA

5、 =0, 忽略內(nèi)部 ROM 的 4K 空間, CPU 在外部 程序存儲器空間中取指令。 低 4K 的程序 存儲器(某些位 8K 或 16K ,可以在片 內(nèi)也可以在片外,到底訪問內(nèi)部或外部 ROM ,由引腳 EA 的電平?jīng)Q定。PSEN 外部程序存儲器讀選通信號,僅當(dāng) CPU 訪問外部 ROM 時,由單片機輸出負脈沖。AT89C51內(nèi)部有 128個(增強型的 256個字節(jié)的 RAM , 其字節(jié)地址為 00H7FH, 作為用戶的數(shù) 據(jù)寄存器和數(shù)據(jù)緩沖器。片內(nèi) RAM 的結(jié)構(gòu)如圖所 示。 地址 00H1FH的 32個單元是 4組通用工作寄 存器區(qū),每個區(qū)含有 8個 8位的寄存器,其編號為 R0R7。

6、用戶可以通過指令來改變 PSW 中的 RS0和 RS1這兩位來切換當(dāng)前的工作寄存器區(qū),在中斷中 為實現(xiàn)工作時現(xiàn)場內(nèi)容保護提供了極大的方便。 地址為 20H2FH的 16個單元可以進行共 128位的位尋址 (00H 7FH ,它們是一位位處理機的存 貯器空間。單元中的每一位都有自己的位地址,這16個單元也可以進行字節(jié)尋址。地址為 30H7FH的單元為堆棧和數(shù)據(jù)緩沖區(qū),只能進行字節(jié)尋址。 A 、工作寄存器區(qū)片內(nèi)程序存儲器 片外程序存儲器 0000H0000H4K 字節(jié) 0FFFH0FFFH 1000HFFH 00H 1FH 20H2FH30H 7FH 80H128字節(jié)地址為 00H1FH的 32個

7、單元是 4組通用工作寄存器區(qū),每個區(qū)含有 8個 8位的寄存 器,其編號為 R0R7。用戶可以通過指令來改變 PSW 中的 RS0和 RS1這兩位來切換當(dāng)前 的工作寄存器區(qū),在中斷中為實現(xiàn)工作時現(xiàn)場內(nèi)容保護提供了極大的方便。如果不需要 4個工作寄存器區(qū),那么這個區(qū)域中多余單元可以作為一般數(shù)據(jù)緩沖器使用。 B 、位尋址區(qū)MCS-51具有一個位處理機,指令系統(tǒng)中有一個位處理指令的子集,這些指令處理的是 一位二進制數(shù)。共有 211個可尋址位,內(nèi)部 RAM 中由 128個,特殊功能寄存器區(qū)中有 83個。地址為 20H2FH的 16個單元可以進行共 128位的位尋址,它們是一位位處理機的存貯 器空間。單元中的每一位都有自己的位地址,這 16個單元也可以進行字節(jié)尋址。C 、堆棧和數(shù)據(jù)緩沖區(qū)地址為 30H7FH的單元為堆棧和數(shù)據(jù)緩沖區(qū)區(qū),只能進行字節(jié)尋址。堆棧原則上可以 設(shè)在內(nèi)部 RAM (00H7FH或 00HFFH的任意區(qū)域,但 00H1FH和 20H2FH有別的用 途,堆棧一般設(shè)在 30HFFH.區(qū)間。 3. 特殊功能寄存器(SFR FFH00H1FH 20H 2FH 30

溫馨提示

  • 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

提交評論