日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]AT89S51單片機(jī)存儲(chǔ)器結(jié)構(gòu)的特點(diǎn)之一是將程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開(稱為哈佛結(jié)構(gòu)),并有各自的對(duì)這兩個(gè)不同的存儲(chǔ)器空間的訪問指令。

AT89S51單片機(jī)存儲(chǔ)器結(jié)構(gòu)的特點(diǎn)之一是將程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開(稱為哈佛結(jié)構(gòu)),并有各自的對(duì)這兩個(gè)不同的存儲(chǔ)器空間的訪問指令。

AT89S51的存儲(chǔ)器空間可劃分為如下4類。

1.程序存儲(chǔ)器空間

單片機(jī)能夠按照一定的次序工作是由于程序存儲(chǔ)器中存放了經(jīng)調(diào)試正確的程序。程序存儲(chǔ)器可以分為片內(nèi)和片外兩部分。

AT89Ssl單片機(jī)的片內(nèi)程序存儲(chǔ)器為4 KB的Flash存儲(chǔ)器,編程和擦除完全是電氣實(shí)現(xiàn),且速度快??墒褂猛ㄓ玫木幊唐鲗?duì)其編程,也可在線編程。

當(dāng)AT89S51片內(nèi)的4 KB的Flash存儲(chǔ)器不夠用時(shí),用戶可在片外擴(kuò)展程序存儲(chǔ)器,最多可擴(kuò)展至64 KB。

2.數(shù)據(jù)存儲(chǔ)器空間

數(shù)據(jù)存儲(chǔ)器空間分為片內(nèi)與片外兩部分。

AT89S51單片機(jī)內(nèi)部有128 B的RAM(增強(qiáng)型的52子系列為256 B),用來存放可讀/寫的數(shù)據(jù)。

當(dāng)AT89S51的片內(nèi)RAM不夠用時(shí),又給用戶提供了在片外可擴(kuò)展至64 KB RAM的功能。至于究竟擴(kuò)展多少RAM,則根據(jù)用戶實(shí)際需要來定。

3.特殊功能寄存器(SFR,Special Function Register)

特殊功能寄存器實(shí)際上是AT89S51片內(nèi)各功能部件的控制寄存器及狀態(tài)寄存器。SFR綜合反映了整個(gè)單片機(jī)基本系統(tǒng)內(nèi)部實(shí)際的工作狀態(tài)及工作方式。

4.位地址空間

AT89S51單片機(jī)內(nèi)共有211個(gè)可尋址位,構(gòu)成了位地址空間。它們位于內(nèi)部RAM(共128位)和特殊功能寄存器區(qū)(共83位)中。

程序存儲(chǔ)器空間

程序存儲(chǔ)器是只讀存儲(chǔ)器(ROM),用于存放程序和表格之類的固定常數(shù)。AT89S51單片機(jī)的片內(nèi)程序存儲(chǔ)器為4 KB的Flash存儲(chǔ)器,地址范圍為0000H~0FFFH。AT89S51有16位地址線,可外擴(kuò)的程序存儲(chǔ)器空間最大為64KB,地址范圍為0000H~FFFFH。片內(nèi)與片外擴(kuò)展的程序存儲(chǔ)器在使用時(shí)應(yīng)注意以下問題:

(1)整個(gè)程序存儲(chǔ)器空間可以分為片內(nèi)和片外兩部分,CPU究竟是訪問片內(nèi)的還是片外的程序存儲(chǔ)器,可由EA(的反)引腳上所接的電平來確定。

EA(的反)引腳接高電平時(shí),CPU從片內(nèi)OOOOH開始取指令,當(dāng)PC值沒有超出OFFFH(0000H~0FFFH為片內(nèi)4 KB的Flash存儲(chǔ)器的地址范圍)時(shí),CPU只訪問片內(nèi)的Flash程序存儲(chǔ)器,當(dāng)PC值超出0FFFH會(huì)自動(dòng)轉(zhuǎn)向讀取片外程序存儲(chǔ)器空間1000H~FFFFH內(nèi)的程序。

EA(的反)引腳接地時(shí),單片機(jī)只能執(zhí)行片外程序存儲(chǔ)器(地址范圍為0000H~FFFFH)中的程序。

CPU不理會(huì)片內(nèi)4 KB的Flash存儲(chǔ)器(地址范圍0000H~0FFFH)。

(2)程序存儲(chǔ)器的某些單元被固定用于各中斷源的中斷服務(wù)程序的入口地址。

64 KB程序存儲(chǔ)器空間中有5個(gè)特殊單元分別對(duì)應(yīng)于5個(gè)中斷源的中斷服務(wù)程序的人口地址,見表2-3。AT89 S51復(fù)位后,程序存儲(chǔ)器地址指針PC的內(nèi)容為OOOOH,程序從程序存儲(chǔ)器中的OOOOH地址開始執(zhí)行。一般在該單元存放一條跳轉(zhuǎn)指令,跳向主程序的入口地址。

表2-3 5個(gè)中斷源的中斷入口地址

通常在這5個(gè)中斷入口地址處都放一條跳轉(zhuǎn)指令跳向?qū)?yīng)的中斷服務(wù)子程序,而不是直接存放中斷服務(wù)子程序。這是因?yàn)閮蓚€(gè)中斷入口間隔僅有8個(gè)單元,如果這8個(gè)單元存放中斷服務(wù)子程序,往往是不夠用的,所以中斷入口地址處都放一條跳轉(zhuǎn)指令,來跳向?qū)?yīng)的中斷服務(wù)子程序。

數(shù)據(jù)存儲(chǔ)器空間

該空間分為片內(nèi)與片外兩部分。

1.片內(nèi)數(shù)據(jù)存儲(chǔ)器

AT89S51的片內(nèi)數(shù)據(jù)存儲(chǔ)器(RAM)共有128個(gè)單元,字節(jié)地址為OOH~7FH。圖2-4為AT89S51片內(nèi)數(shù)據(jù)存儲(chǔ)器的結(jié)構(gòu)。

地址為00H~1FH的32個(gè)單元是4組通用工作寄存器區(qū),每個(gè)區(qū)包含8B的工作寄存器,編號(hào)為R7~RO。用戶可以通過指令改變特殊功能寄存器PSW中的RS1、RSO這兩位來切換當(dāng)前選擇的工作寄存器區(qū)。

地址為20H~2FH的16個(gè)單元的128位可進(jìn)行位尋址,也可以進(jìn)行字節(jié)尋址。

地址為30H~7FH的單元為用戶RAM區(qū),只能進(jìn)行字節(jié)尋址,用于存放數(shù)據(jù)以及作為堆棧區(qū)使用。

2.片外數(shù)據(jù)存儲(chǔ)器

當(dāng)片內(nèi)128B的RAM不夠用時(shí),需要外擴(kuò)數(shù)據(jù)存儲(chǔ)器,AT89S51最多可外擴(kuò)64KB的RAM。注意,片內(nèi)RAM與片外RAM兩個(gè)空間是相互獨(dú)立的,片內(nèi)RAM與片外RAM的低128B的地址是相同的,但由于使用的是不同的訪問指令,所以不會(huì)發(fā)生沖突。

特殊功能寄存器

AT89S51中的CPU對(duì)片內(nèi)各功能部件的控制是采用特殊功能寄存器集中控制方式。特殊功能寄存器(SFR)的單元地址映射在片內(nèi)RAM的80H~FFH區(qū)域中,共有26個(gè),離散地分布在該區(qū)域中,表2-4是SFR的名稱及其分布。其中有些SFR還可以進(jìn)行位尋址,其位地址已在表2-4中列出。

表2-4 SFR的名稱及其分布

與AT89C51相比,新增加的5個(gè)SFR是:DPIL、DPIH、AUXR、AUXR1和WDTRST,已在表2-4中標(biāo)出。

從表2-4中可以發(fā)現(xiàn),凡是可以進(jìn)行位尋址的SFR,其字節(jié)地址的末位只能是OH或8H。

另外,若讀/寫沒有定義的單元,將得到一個(gè)不確定的隨機(jī)數(shù)。

SFR塊中的累加器A和程序狀態(tài)字寄存器PSW已在前面介紹過,下面簡單介紹SFR塊中的某些SFR。

1.堆棧指針SP

堆棧指針SP的內(nèi)容指示出堆棧頂部在內(nèi)部RAM塊中的位置。它可指向內(nèi)部RAM OOH~7FH的任何單元。AT89S51的堆棧結(jié)構(gòu)屬于向上生長型的堆棧(即每向堆棧壓人1個(gè)字節(jié)數(shù)據(jù)時(shí),SP的內(nèi)容自動(dòng)增1)。單片機(jī)復(fù)位后,SP中的內(nèi)容為07H,使得堆棧實(shí)際上從08H單元開始,考慮到08H~1FH單元分別是屬于1~3組的工作寄存器區(qū),若在程序設(shè)計(jì)中用到這些工作寄存器區(qū),最好在復(fù)位后且運(yùn)行程序前,把SP值改置為60H或更大的值,以避免堆棧區(qū)與工作寄存器區(qū)發(fā)生沖突。

堆棧主要是為子程序調(diào)用和中斷操作而設(shè)立的。堆棧的具體功能有兩個(gè):保護(hù)斷點(diǎn)和現(xiàn)場(chǎng)保護(hù)。

(1)保護(hù)斷點(diǎn)。因?yàn)闊o論是子程序調(diào)用操作還是中斷服務(wù)子程序調(diào)用操作,最終都要返回主程序。因此,應(yīng)預(yù)先把主程序的斷點(diǎn)在堆棧中保護(hù)起來,為程序的正確返回做準(zhǔn)備。

(2)現(xiàn)場(chǎng)保護(hù)。在單片機(jī)執(zhí)行子程序或中斷服務(wù)子程序時(shí),很可能要用到單片機(jī)中的一些寄存器單元,這會(huì)破壞主程序運(yùn)行時(shí)這些寄存器單元中的原有內(nèi)容。所以在執(zhí)行子程序或中斷服務(wù)程序之前,要把單片機(jī)中有關(guān)寄存器單元的內(nèi)容保存起來,送入堆棧,這就是所謂的“現(xiàn)場(chǎng)保護(hù)”。

堆棧的操作有兩種:一種是數(shù)據(jù)壓入(PUSH)堆棧,另一種是數(shù)據(jù)彈出(POP)堆棧。每次當(dāng)一個(gè)字節(jié)數(shù)據(jù)壓人堆棧以后,SP自動(dòng)加1;一個(gè)字節(jié)數(shù)據(jù)彈出堆棧后,SP自動(dòng)減1。例如,(SP)=60H,CPU執(zhí)行一條子程序調(diào)用指令或響應(yīng)中斷后,PC內(nèi)容(斷點(diǎn)地址)進(jìn)棧,PC的低8位PCL的內(nèi)容壓人到61H單元,PC的高8位PCH的內(nèi)容壓人到62H,此時(shí),(SP)=62H。

2.寄存器B

寄存器B是為執(zhí)行乘法和除法操作設(shè)置的。在不執(zhí)行乘、除法操作的情況下,可把它當(dāng)作一個(gè)普通寄存器來使用。

乘法中,兩個(gè)乘數(shù)分別在A、B中,執(zhí)行乘法指令后,乘積存放在BA寄存器對(duì)中。B中放乘積的高8位,A中放乘積的低8位。

除法中,被除數(shù)取自A,除數(shù)取自B,商存放在A中,余數(shù)存放于B中。

3.AUXR寄存器

AUXR是輔助寄存器,其格式如圖2-5所示。

圖中:

DISALE:ALE的禁止/允許位。

DISALE=0,ALE有效,發(fā)出恒定頻率脈沖。

DISALE=1,ALE僅在CPU執(zhí)行MOVC和MOVX類指令時(shí)有效,不訪問外部存儲(chǔ)器時(shí),ALE不輸出脈沖信號(hào)。

DISRTO:禁止/允許WDT溢出時(shí)的復(fù)位輸出。

DISRTO=0,WDT溢出時(shí),在RST引腳輸出一個(gè)高電平脈沖。

DISRTO=1,RST引腳僅為輸入腳。

WDIDLE:WDT在空閑模式下的禁止/允許位。

WDIDLE=0,WDT在空閑模式下繼續(xù)計(jì)數(shù)。

WDIDLE=1,WDT在空閑模式下暫停計(jì)數(shù)。

4.數(shù)據(jù)指針DPTRO和DPTR1

DPTRO和DPTR1是雙數(shù)據(jù)指針寄存器。為了便于訪問數(shù)據(jù)存儲(chǔ)器,AT89S51設(shè)置了兩個(gè)數(shù)據(jù)指針寄存器。DPTRO為AT89C51單片機(jī)原有的數(shù)據(jù)指針,DPTR1為AT89S51新增加的數(shù)據(jù)指針。AUXR1的DPS位用于選擇這兩個(gè)數(shù)據(jù)指針。當(dāng)DPS=0時(shí),選用DPTRO;當(dāng)DPS=1時(shí),選用DPTR1。AT89C51復(fù)位時(shí),默認(rèn)選用DPTRO。

DPTRO(或DPTR1)是一個(gè)16位的SFR,其高位字節(jié)寄存器用DPOH(或DPIH)表示,低位字節(jié)寄存器用DPOL(或DPIL)表示。DPTRO(或DPTR1)既可以作為一個(gè)16位寄存器使用,也可以作為兩個(gè)獨(dú)立的8位寄存器DPOH(或DPIH)和DPOL(或DPIL)使用。

5.AUXR1寄存器

AUXR1是輔助寄存器,其格式如圖2-6所示。

圖中:

DPS:數(shù)據(jù)指針寄存器選擇位。

DPS=0,選擇數(shù)據(jù)指針寄存器DPTRO。

DPS=1,選擇數(shù)據(jù)指針寄存器DPTR1。

6.看門狗定時(shí)器WDT

看門狗定時(shí)器WDT包含一個(gè)14位計(jì)數(shù)器和看門狗定時(shí)器復(fù)位寄存器(WDTRST)。當(dāng)CPU由于干擾,程序陷入死循環(huán)或“跑飛”狀態(tài)時(shí),看門狗定時(shí)器WDT提供了一種使程序恢復(fù)正常運(yùn)行的有效手段。

有關(guān)WDT在抗干擾設(shè)計(jì)中的應(yīng)用以及低功耗模式下運(yùn)行的狀態(tài),將在相應(yīng)的章節(jié)中具體介紹。

上面介紹的特殊功能寄存器除了前兩個(gè)SP和B以外,其余的均為AT89S51在AT89C51的基礎(chǔ)上新增加的SFR。

位地址空間

AT89S51在RAM和SFR中共有211個(gè)尋址位的位地址,位地址范圍為OOH~FFH,其中OOH~7FH這128位處于片內(nèi)RAM字節(jié)地址20H~2FH單元中,見表2-5。其余的83個(gè)可尋址位分布在特殊功能寄存器SFR中,見表2-6??杀晃粚ぶ返募拇嫫饔?1個(gè),共有位地址88個(gè),其中5個(gè)位未用,其余83個(gè)位的位地址離散地分布于片內(nèi)數(shù)據(jù)存儲(chǔ)器區(qū)字節(jié)地址為80H~FFH的范圍內(nèi),其最低的位地址等于其字節(jié)地址,并且其字節(jié)地址的末位都為OH或8H。

表2-5 AT89S51片內(nèi)RAM的可尋址位及其位地址

 

表2-6 SFR中的位地址分布

作為對(duì)AT89S51存儲(chǔ)器結(jié)構(gòu)的總結(jié),圖2-7給出了AT89S51中各類存儲(chǔ)器的結(jié)構(gòu)圖。從圖2-7中可以清楚地看出AT89S51的各類存儲(chǔ)器在存儲(chǔ)器空間的位置。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

June 24, 2025 ---- 近期市場(chǎng)對(duì)于NVIDIA RTX PRO 6000系列產(chǎn)品的討論聲量高,預(yù)期在需求支撐下,整體出貨將有不俗表現(xiàn)。然而,TrendForce集邦咨詢資深研究副總吳雅婷認(rèn)為,該系列產(chǎn)品受...

關(guān)鍵字: 存儲(chǔ)器 供應(yīng)鏈 邊緣AI

在人工智能訓(xùn)練、實(shí)時(shí)圖形渲染與科學(xué)計(jì)算領(lǐng)域,存儲(chǔ)器帶寬已成為制約系統(tǒng)性能的核心瓶頸。HBM3與GDDR7作為當(dāng)前顯存技術(shù)的兩大巔峰之作,分別通過三維堆疊與信號(hào)調(diào)制技術(shù)的突破,為不同應(yīng)用場(chǎng)景提供了差異化解決方案。本文從架構(gòu)...

關(guān)鍵字: 存儲(chǔ)器 HBM3

傳統(tǒng)存儲(chǔ)器技術(shù)逼近物理極限,鐵電場(chǎng)效應(yīng)晶體管(FeFET)憑借其獨(dú)特的極化翻轉(zhuǎn)機(jī)制與非易失性邏輯特性,成為突破馮·諾依曼架構(gòu)瓶頸的關(guān)鍵技術(shù)。FeFET通過將鐵電材料集成至晶體管柵極,實(shí)現(xiàn)了存儲(chǔ)與邏輯功能的深度融合,其物理...

關(guān)鍵字: FeFET 存儲(chǔ)器

數(shù)字化轉(zhuǎn)型與人工智能技術(shù)驅(qū)動(dòng),數(shù)據(jù)中心存儲(chǔ)架構(gòu)正經(jīng)歷從傳統(tǒng)磁盤陣列向全閃存與新型內(nèi)存技術(shù)的深度變革。全閃存陣列(AFA)憑借亞毫秒級(jí)延遲與高IOPS性能重塑存儲(chǔ)性能基準(zhǔn),而持久化內(nèi)存(PMEM)則通過填補(bǔ)DRAM與SSD...

關(guān)鍵字: 數(shù)據(jù)中心 存儲(chǔ)器

AI算力與數(shù)據(jù)中心規(guī)模持續(xù)擴(kuò)張,存儲(chǔ)器糾錯(cuò)碼(ECC)技術(shù)已成為保障數(shù)據(jù)完整性的核心防線。從硬件加速架構(gòu)到算法優(yōu)化,ECC技術(shù)正通過多維度創(chuàng)新,將內(nèi)存錯(cuò)誤率降低至每萬億小時(shí)1次以下,為關(guān)鍵任務(wù)系統(tǒng)提供接近零故障的可靠性保...

關(guān)鍵字: 存儲(chǔ)器 ECC

存儲(chǔ)器供應(yīng)鏈安全已成為國家戰(zhàn)略的核心命題,從晶圓代工到封裝測(cè)試,中國存儲(chǔ)器產(chǎn)業(yè)正通過關(guān)鍵環(huán)節(jié)的技術(shù)突破與生態(tài)重構(gòu),走出一條從“受制于人”到“自主可控”的替代之路。這條路徑不僅關(guān)乎產(chǎn)業(yè)安全,更承載著數(shù)字經(jīng)濟(jì)時(shí)代的技術(shù)主權(quán)。

關(guān)鍵字: 存儲(chǔ)器 國產(chǎn)化替

AI算力需求爆炸式增長,存儲(chǔ)器封裝技術(shù)正經(jīng)歷從2.5D到3D異構(gòu)集成的范式變革。這種變革不僅重構(gòu)了芯片間的物理連接方式,更對(duì)散熱設(shè)計(jì)與信號(hào)完整性提出了全新挑戰(zhàn)。本文從封裝架構(gòu)演進(jìn)、散熱機(jī)制創(chuàng)新與信號(hào)完整性保障三個(gè)維度,解...

關(guān)鍵字: 存儲(chǔ)器 散熱

數(shù)據(jù)成為核心生產(chǎn)要素的時(shí)代,存儲(chǔ)器安全技術(shù)已成為保障數(shù)字資產(chǎn)隱私與完整性的關(guān)鍵防線。從早期基于硬件的加密引擎到現(xiàn)代可信執(zhí)行環(huán)境(TEE)的生態(tài)構(gòu)建,存儲(chǔ)器安全技術(shù)經(jīng)歷了從單一防護(hù)到體系化協(xié)同的演進(jìn)。本文從硬件加密引擎、存...

關(guān)鍵字: 存儲(chǔ)器 TEE

May 13, 2025 ---- 根據(jù)TrendForce集邦咨詢最新半導(dǎo)體封測(cè)研究報(bào)告,2024年全球封測(cè)(OSAT)市場(chǎng)面臨技術(shù)升級(jí)和產(chǎn)業(yè)重組的雙重挑戰(zhàn)。從營收分析,日月光控股、Amkor(安靠)維持領(lǐng)先地位,值得...

關(guān)鍵字: 自制化 AI 汽車電子 存儲(chǔ)器

像任何行業(yè)幫助開發(fā)可編程邏輯應(yīng)用程序一樣,我們使用標(biāo)準(zhǔn)接口來實(shí)現(xiàn)重用和簡化設(shè)計(jì)。在FPGA開發(fā)中最流行的接口是Arm可擴(kuò)展接口(AXI),它為開發(fā)人員提供了一個(gè)完整的高性能,如果需要的話,還可以緩存相干存儲(chǔ)器映射總線。

關(guān)鍵字: FPGA ARM 存儲(chǔ)器
關(guān)閉