官术网_书友最值得收藏!

第二節(jié) 存儲器結(jié)構(gòu)

MCS-51單片機(jī)的存儲器結(jié)構(gòu)與常見的微型計(jì)算機(jī)的配置方式不同,它把程序存儲器與數(shù)據(jù)存儲器分開編址,各有自己的尋址方式、控制信號和功能。MCS-51單片機(jī)的存儲器結(jié)構(gòu)如圖2-6所示。

圖2-6 MCS-51單片機(jī)的存儲器結(jié)構(gòu)

一、程序存儲器

MCS-51的程序存儲器空間為64KB,其地址指針為16位的程序計(jì)數(shù)器PC,程序存儲器如圖2-6(a)所示。低4KB的程序存儲器(某些單片機(jī)為8KB或16KB)可以在單片機(jī)的內(nèi)部也可以在單片機(jī)的外部,這是由輸入到引腳EA的電平所確定的。

對于內(nèi)部有4KB程序存儲器的單片機(jī)(如8051或8751),若EA接VCC(+5V),則

程序計(jì)數(shù)器PC的值在0~0FFFH之間時(shí),CPU取指令時(shí)訪問內(nèi)部的程序存儲器;PC值大于0FFFH時(shí),則訪問外部的程序存儲器。如果EA接VSS(地),則內(nèi)部的程序存儲器被忽略,CPU總是從外部的程序存儲器中取指令。MCS-51的引腳PSEN輸出外部程序存儲器的讀選通信號,僅當(dāng)CPU訪問外部程序存儲器時(shí),PSEN才有效。

對于內(nèi)部沒有程序存儲器的單片機(jī)(如8031)必須在外部接程序存儲器,引腳EA必須接地。

二、內(nèi)部數(shù)據(jù)存儲器RAM

MCS-51單片機(jī)內(nèi)部RAM的空間為256B,但實(shí)際提供給用戶使用的RAM容量,各個(gè)不同型號的單片機(jī)是不同的,有的為128B(如8051),有的為256B(如8032)。內(nèi)部RAM中不同的地址區(qū)域從功能和用途方面來分,可以劃分為如圖2-6(b)所示的三個(gè)區(qū)域:工作寄存器區(qū)、位尋址區(qū)、堆棧和數(shù)據(jù)緩沖器區(qū)。

內(nèi)部RAM的00H~1FH為四組工作寄存器,每個(gè)區(qū)有八個(gè)工作寄存器R0~R7。寄存器和RAM單元地址對應(yīng)關(guān)系如表2-2所示。

表2-2

工作寄存器和RAM單元地址對應(yīng)關(guān)系

四個(gè)寄存器組中的每一組都可被選為CPU的工作寄存器,這是通過程序狀態(tài)字寄存

器PSW中的PSW.3(RS0)和PSW.4(RS1)兩位的狀態(tài)來選擇確定的,見表2-3。通

過程序改變RS1、RS0的狀態(tài),就可更換工作寄存器組,這對提高CPU的工作效率和響應(yīng)中斷的速度是很有利的。

表2-3

工作寄存器區(qū)選擇

內(nèi)部RAM中的20H~2FH單元除可作為一般的字節(jié)尋址單元使用外,這16個(gè)單元共128位中的每一位又可單獨(dú)視作一個(gè)軟件觸發(fā)器,用于存放各種程序標(biāo)志、位控制變量,具有位尋址功能,其位地址范圍為00H~7FH。

字節(jié)地址為30H~7FH(或30H~0FFH)的這部分存儲區(qū)域可作為8位數(shù)據(jù)緩沖區(qū)使用。一般用戶把堆棧就設(shè)置在這部分區(qū)域中。

內(nèi)部RAM中除了作為工作寄存器、位標(biāo)志和堆棧區(qū)以外的單元都可以作為數(shù)據(jù)緩沖器使用,存放輸入的數(shù)據(jù)或運(yùn)算結(jié)果。

三、特殊功能寄存器SFR

MCS-51內(nèi)部的I/O口鎖存器以及定時(shí)器、串行口、中斷等各種控制和狀態(tài)寄存器都稱為特殊功能寄存器,它們離散地分布在80H~0FFH的特殊功能寄存器地址空間。在這空間中有些單元是空著的,這些單元是為MCS-51的新型單片機(jī)保留的。不同型號的單片機(jī)內(nèi)部I/O功能不同,實(shí)際存在的特殊功能寄存器數(shù)量差別較大。MCS-51最基本的特殊功能寄存器列于表2-4中。其中帶*的是8052所增加的特殊功能寄存器。

表2-4

特殊功能寄存器地址映象

這些特殊功能寄存器在以后的I/O口、定時(shí)器、串行口和中斷等章節(jié)中作詳細(xì)的討論。

四、位存儲器

位存儲器空間由兩部分組成:一部分是在內(nèi)部RAM中字節(jié)地址為20H~2FH的128個(gè)位,這些位編址為00H~7FH,如表2-5所示;另一部分在特殊功能寄存器中,其中地址碼能被8整除的特殊功能寄存器,可以按位尋址,如表2-6所示。

表2-5

RAM位尋址區(qū)地址映象

表2-6

特殊功能寄存器位地址映象

續(xù)表

五、外部數(shù)據(jù)存儲器和I/O口

MCS-51的外部RAM存儲器和輸入/輸出端口是統(tǒng)一編址的,都在同一個(gè)64KB外部數(shù)據(jù)存儲器空間內(nèi),如圖2-6(c)所示,CPU對它們具有相同操作功能。

主站蜘蛛池模板: 佛山市| 昌宁县| 大同县| 岚皋县| 花莲市| 寿光市| 焉耆| 浦江县| 韶山市| 桦甸市| 阿勒泰市| 大英县| 吉安市| 林芝县| 云和县| 沙坪坝区| 江山市| 黄石市| 静宁县| 石狮市| 自贡市| 任丘市| 尖扎县| 灌南县| 九龙县| 平利县| 迭部县| 镇原县| 芒康县| 兴安盟| 乾安县| 敖汉旗| 曲周县| 兴国县| 新竹市| 永昌县| 乌兰县| 定安县| 彭州市| 常山县| 东乡族自治县|