第2章單片機(jī)硬件結(jié)構(gòu)_第1頁
第2章單片機(jī)硬件結(jié)構(gòu)_第2頁
第2章單片機(jī)硬件結(jié)構(gòu)_第3頁
第2章單片機(jī)硬件結(jié)構(gòu)_第4頁
第2章單片機(jī)硬件結(jié)構(gòu)_第5頁
已閱讀5頁,還剩70頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 CPUCPU運(yùn)算部件運(yùn)算部件控制部件控制部件B BRAMRAMP0P0口口P2P2口口ROMROM(EPROM)(EPROM)串行口串行口 C / TC / T中斷中斷系統(tǒng)系統(tǒng)SFRSFRP1P1口口8 8P3P3口口8 88 88 8XTALXTAL1 1XTALXTAL2 2PSEN ALEPSEN ALE EA RESET EA RESETVccVccVssVss1.1.微處理器微處理器2.2.數(shù)據(jù)存儲(chǔ)器數(shù)據(jù)存儲(chǔ)器3.3.程序存儲(chǔ)器程序存儲(chǔ)器4.I/O4.I/O口口5.5.串行口串行口6.6.定時(shí)定時(shí)/ /計(jì)數(shù)器計(jì)數(shù)器7.7.中斷系統(tǒng)中斷系統(tǒng)8.8.特殊功能特殊功能寄存器寄存器1、中央

2、處理單元、中央處理單元CPU(8位)位)用于數(shù)據(jù)處理、位操作(位測(cè)試、置位、復(fù)位)用于數(shù)據(jù)處理、位操作(位測(cè)試、置位、復(fù)位)2、存儲(chǔ)器、存儲(chǔ)器Flash ROM(4KB)用于永久性存儲(chǔ)應(yīng)用程序,如果片內(nèi)存儲(chǔ)器程序存儲(chǔ)容量不夠,用于永久性存儲(chǔ)應(yīng)用程序,如果片內(nèi)存儲(chǔ)器程序存儲(chǔ)容量不夠,片外最多可外擴(kuò)程序存儲(chǔ)器至片外最多可外擴(kuò)程序存儲(chǔ)器至64KB3、隨機(jī)存取存取器、隨機(jī)存取存取器RAM片內(nèi)片內(nèi)128B,片外最多可以擴(kuò)展,片外最多可以擴(kuò)展64KB用于程序運(yùn)行中存儲(chǔ)工作變用于程序運(yùn)行中存儲(chǔ)工作變量和數(shù)據(jù)。片內(nèi)量和數(shù)據(jù)。片內(nèi)RAM以高速以高速RAM形式集成在單片機(jī)內(nèi)形式集成在單片機(jī)內(nèi)用作系統(tǒng)總線、擴(kuò)展外存

3、、用作系統(tǒng)總線、擴(kuò)展外存、I / O接口芯片接口芯片4、并行輸入并行輸入/輸出口輸出口I/O(32線)線)7、串行口、串行口串行通信、擴(kuò)展串行通信、擴(kuò)展I / O接口芯片接口芯片6、定時(shí)、定時(shí)/計(jì)數(shù)器計(jì)數(shù)器T/C它與它與CPU之間各自獨(dú)立工作,當(dāng)它計(jì)數(shù)滿時(shí)向之間各自獨(dú)立工作,當(dāng)它計(jì)數(shù)滿時(shí)向CPU中斷中斷8、特殊功能寄存器、特殊功能寄存器SFR共有共有21個(gè)特殊功能寄存器,用于片內(nèi)各功能部件進(jìn)行管理、控制個(gè)特殊功能寄存器,用于片內(nèi)各功能部件進(jìn)行管理、控制和監(jiān)視。實(shí)際上是片內(nèi)各功能部件的控制寄存器和狀態(tài)寄存器和監(jiān)視。實(shí)際上是片內(nèi)各功能部件的控制寄存器和狀態(tài)寄存器五源中斷、兩級(jí)優(yōu)先,可編程進(jìn)行控制。

4、五源中斷、兩級(jí)優(yōu)先,可編程進(jìn)行控制。5、中斷系統(tǒng)、中斷系統(tǒng)X1 X2 EA PSEN ALE RST VCC GND 8051 P0 P1 P2 P3 P00P07 P10P17 P20P27 P30P37 控控制制引引腳腳并行并行I/O口引腳口引腳電源及時(shí)鐘引腳電源及時(shí)鐘引腳電源管腳電源管腳 Vcc:電源端,為:電源端,為5V,允許電源有偏差;,允許電源有偏差;GND(VSS):地。地。 注注:為了防止電源脈沖對(duì)單片機(jī)的影響,一般在:為了防止電源脈沖對(duì)單片機(jī)的影響,一般在VCC和和GND之間接上一個(gè)之間接上一個(gè)1uF的電容。的電容。時(shí)鐘電路管腳時(shí)鐘電路管腳 XTAL1:芯片內(nèi)部反相放大器輸入

5、端,使用外部振蕩器時(shí)需接地。芯片內(nèi)部反相放大器輸入端,使用外部振蕩器時(shí)需接地。XTAL2: 芯片內(nèi)部反相放大器輸出端,使用外部振蕩時(shí)接振蕩器輸芯片內(nèi)部反相放大器輸出端,使用外部振蕩時(shí)接振蕩器輸 入的信號(hào)。入的信號(hào)。 XTAL2XTAL1內(nèi)部振蕩方式內(nèi)部振蕩方式XTAL2XTAL1外部振蕩器外部振蕩器外部振蕩方式外部振蕩方式控制管腳控制管腳 RST/VPD RST: 復(fù)位信號(hào)輸入端,高電平有效。保持兩個(gè)機(jī)器周期以上,單片復(fù)位信號(hào)輸入端,高電平有效。保持兩個(gè)機(jī)器周期以上,單片機(jī)開始從機(jī)開始從0000地址執(zhí)行,即可完成單片機(jī)復(fù)位。單片機(jī)正常工作時(shí)地址執(zhí)行,即可完成單片機(jī)復(fù)位。單片機(jī)正常工作時(shí)該引腳為

6、低于該引腳為低于0.5v的低電平。單片機(jī)復(fù)位不改變片內(nèi)的低電平。單片機(jī)復(fù)位不改變片內(nèi)RAM的值。的值。VPD: 備用電源。備用電源。+5VRESET10uF控制管腳控制管腳 EA*(低電平)(低電平)/Vpp EA*: 外部程序存儲(chǔ)器訪問允許控制端。外部程序存儲(chǔ)器訪問允許控制端。 EA*=1,訪問片內(nèi)程序存儲(chǔ)器,當(dāng)訪問片內(nèi)程序存儲(chǔ)器,當(dāng)PC值超過片內(nèi)存儲(chǔ)值超過片內(nèi)存儲(chǔ)器存儲(chǔ)范圍,將自動(dòng)轉(zhuǎn)向訪問外部存儲(chǔ)器中的程序。器存儲(chǔ)范圍,將自動(dòng)轉(zhuǎn)向訪問外部存儲(chǔ)器中的程序。 EA*=0,單片機(jī)則只訪問外部程序存儲(chǔ)器。單片機(jī)則只訪問外部程序存儲(chǔ)器。Vpp: 對(duì)單片機(jī)施加編程電壓。對(duì)單片機(jī)施加編程電壓。89C51

7、在對(duì)片內(nèi)在對(duì)片內(nèi)Flash固化固化程序時(shí),施加編程電壓程序時(shí),施加編程電壓+5V或或+12V控制線控制線 ALE/PROG ALE: 低低8位地址鎖存允許信號(hào)端。當(dāng)位地址鎖存允許信號(hào)端。當(dāng)CPU訪問片外擴(kuò)展存訪問片外擴(kuò)展存儲(chǔ)器時(shí),儲(chǔ)器時(shí),ALE的負(fù)跳變沿將的負(fù)跳變沿將P0口發(fā)出的低口發(fā)出的低8位地址鎖存位地址鎖存在外接的地址鎖存器中,然后在外接的地址鎖存器中,然后P0口再作為數(shù)據(jù)端口,以口再作為數(shù)據(jù)端口,以實(shí)現(xiàn)實(shí)現(xiàn)P0口的低口的低8位地址和數(shù)據(jù)的分時(shí)傳送。位地址和數(shù)據(jù)的分時(shí)傳送。PROG: 對(duì)片內(nèi)對(duì)片內(nèi)FLASH存儲(chǔ)器編程時(shí),該管腳提供編程寫入存儲(chǔ)器編程時(shí),該管腳提供編程寫入時(shí)的編程脈沖信號(hào)輸

8、入端。時(shí)的編程脈沖信號(hào)輸入端。 控制管腳控制管腳 PSEN PSEN: 片外程序存儲(chǔ)器的讀選通信號(hào)。單片機(jī)讀外部程序片外程序存儲(chǔ)器的讀選通信號(hào)。單片機(jī)讀外部程序存儲(chǔ)器時(shí),此引腳輸出脈沖的負(fù)跳變沿作為讀外部程序存儲(chǔ)器時(shí),此引腳輸出脈沖的負(fù)跳變沿作為讀外部程序存儲(chǔ)器的選通信號(hào)。該管腳一般連程序存儲(chǔ)器的選通信存儲(chǔ)器的選通信號(hào)。該管腳一般連程序存儲(chǔ)器的選通信號(hào)端號(hào)端(OE),在訪問外部,在訪問外部RAM時(shí),時(shí),PSEN無效。無效。I/O口引腳口引腳 P0口:口:8位,漏極開路的雙向位,漏極開路的雙向I/O口口 外擴(kuò)存儲(chǔ)器及外擴(kuò)存儲(chǔ)器及I/O接口芯片時(shí)接口芯片時(shí): P0口作為地址總線(低口作為地址總線(

9、低8位)及數(shù)據(jù)總線的分時(shí)復(fù)用口。位)及數(shù)據(jù)總線的分時(shí)復(fù)用口。 普通普通I/O口使用:口使用: 此時(shí)為準(zhǔn)雙向口,需上拉電阻。當(dāng)作為普通此時(shí)為準(zhǔn)雙向口,需上拉電阻。當(dāng)作為普通I/O口輸入時(shí),應(yīng)口輸入時(shí),應(yīng)先向端口的輸出鎖存器寫入先向端口的輸出鎖存器寫入1.I/O口引腳口引腳 P1口:口:8位,準(zhǔn)雙向位,準(zhǔn)雙向I/O口,具有內(nèi)部上拉電阻口,具有內(nèi)部上拉電阻 為專為用戶使用的準(zhǔn)雙向?yàn)閷橛脩羰褂玫臏?zhǔn)雙向I/O口。當(dāng)作為普通口。當(dāng)作為普通I/O口輸入時(shí),應(yīng)口輸入時(shí),應(yīng)先向端口的輸出鎖存器寫入先向端口的輸出鎖存器寫入1.I/O口引腳口引腳 P2口:口:8位,準(zhǔn)雙向位,準(zhǔn)雙向I/O口,具有內(nèi)部上拉電阻口,具

10、有內(nèi)部上拉電阻 外擴(kuò)存儲(chǔ)器及外擴(kuò)存儲(chǔ)器及I/O接口芯片時(shí)接口芯片時(shí): P2口輸出地址總線高口輸出地址總線高8位。位。 普通普通I/O口使用:口使用: 當(dāng)作為普通當(dāng)作為普通I/O口輸入時(shí),應(yīng)先向端口的輸出鎖存器寫入口輸入時(shí),應(yīng)先向端口的輸出鎖存器寫入1.I/O口引腳口引腳 P3口:口:8位位,準(zhǔn)雙向準(zhǔn)雙向I/O口,具有內(nèi)部上拉電阻口,具有內(nèi)部上拉電阻 通用通用I/O口使用:口使用: 當(dāng)作為普通當(dāng)作為普通I/O口輸入時(shí),應(yīng)先向端口的輸出鎖存器寫入口輸入時(shí),應(yīng)先向端口的輸出鎖存器寫入1.P3口提供第二功能口提供第二功能: 數(shù)據(jù)總線緩沖器 /鎖存器累加器A( 8)暫存寄存器TMP(8)標(biāo)志寄存器F(

11、8)指令寄存器IR(8)指令譯碼器ID累加鎖存器ACT十進(jìn)制調(diào)整多路轉(zhuǎn)換開關(guān)通用寄存器組地址緩沖器 ( 16)堆棧指針 SP(16)程序計(jì)數(shù)器 PC(16)加 1減 1器 /地址鎖存器(16)算術(shù)邏輯單元ALU( 8)寄存器選擇電路定時(shí)與控制中斷請(qǐng)求寫讀I/O請(qǐng)求存儲(chǔ)器請(qǐng)求等待復(fù)位時(shí)鐘D0D7雙向數(shù)據(jù)總線內(nèi)部數(shù)據(jù)總線A0 A15地址總線CPU內(nèi)內(nèi) 部部 結(jié)結(jié) 構(gòu)構(gòu) 框框 圖圖CPU內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)中央處理器中央處理器(CPU)-運(yùn)算器運(yùn)算器 (2)8位累加器位累加器ACC(A):):(3)8位寄存器位寄存器B:(4)8位程序狀態(tài)寄存器位程序狀態(tài)寄存器PSW:(5)布爾處理器:)布爾處理器:(6

12、)2個(gè)個(gè)8位暫存器:位暫存器:運(yùn)算器 可對(duì)可對(duì)4位(半字節(jié)),位(半字節(jié)),8位(單字節(jié))和位(單字節(jié))和16位(雙字節(jié))位(雙字節(jié))數(shù)據(jù)進(jìn)行運(yùn)算操作。包括邏輯運(yùn)算操作和基本算術(shù)操作等數(shù)據(jù)進(jìn)行運(yùn)算操作。包括邏輯運(yùn)算操作和基本算術(shù)操作等運(yùn)算操作。同時(shí)運(yùn)算操作。同時(shí)89C51的的ALU還具有位操作功能。還具有位操作功能。算術(shù)邏輯運(yùn)算單元算術(shù)邏輯運(yùn)算單元ALU 累加器,它是最繁忙的累加器,它是最繁忙的8位特殊功能寄存器,用位特殊功能寄存器,用A表示,表示,也可寫成也可寫成Acc。1)累加器)累加器A是是ALU單元的輸入數(shù)據(jù)源之一,它又是單元的輸入數(shù)據(jù)源之一,它又是ALU運(yùn)算結(jié)果的存放單元運(yùn)算結(jié)果的存

13、放單元2)CPU中的數(shù)據(jù)傳送大多都是通過累加器中的數(shù)據(jù)傳送大多都是通過累加器A,故累加器,故累加器A有相當(dāng)于數(shù)據(jù)的中轉(zhuǎn)站。有相當(dāng)于數(shù)據(jù)的中轉(zhuǎn)站。累加器累加器A 寄存器寄存器B 在執(zhí)行乘法和除法操作中,用在執(zhí)行乘法和除法操作中,用B寄存器暫存寄存器暫存數(shù)據(jù)。在不執(zhí)行乘、除的情況下,可當(dāng)作一個(gè)普通寄數(shù)據(jù)。在不執(zhí)行乘、除的情況下,可當(dāng)作一個(gè)普通寄存器來使用。存器來使用。寄存器寄存器B 8位程序狀態(tài)字寄存器,用于存放指令執(zhí)行后的狀態(tài)信息,位程序狀態(tài)字寄存器,用于存放指令執(zhí)行后的狀態(tài)信息,供程序查詢和判別。供程序查詢和判別。程序狀態(tài)字寄存器程序狀態(tài)字寄存器PSW 程序狀態(tài)字寄存器程序狀態(tài)字寄存器PSW(

14、1)RS1、RS0:工作寄存器組選擇位,用:工作寄存器組選擇位,用于選擇當(dāng)前工作寄存器組于選擇當(dāng)前工作寄存器組(2)CY:進(jìn)位標(biāo)志。在進(jìn)行加法(或減法)運(yùn)算時(shí),:進(jìn)位標(biāo)志。在進(jìn)行加法(或減法)運(yùn)算時(shí),若運(yùn)算結(jié)果最高位有進(jìn)位(或借位)時(shí)若運(yùn)算結(jié)果最高位有進(jìn)位(或借位)時(shí)CY=1,否則,否則CY=0。(3)AC:半進(jìn)位標(biāo)志。在:半進(jìn)位標(biāo)志。在BCD碼進(jìn)行加法(或減法)碼進(jìn)行加法(或減法)運(yùn)算時(shí)用作十位調(diào)整。即若低半字節(jié)向高半字節(jié)有進(jìn)位運(yùn)算時(shí)用作十位調(diào)整。即若低半字節(jié)向高半字節(jié)有進(jìn)位(或借位)時(shí)(或借位)時(shí)AC=1,否則,否則AC=0。(4)OV:溢出標(biāo)志。兩個(gè)帶符號(hào)數(shù)運(yùn)算,若結(jié)果超出:溢出標(biāo)志。兩

15、個(gè)帶符號(hào)數(shù)運(yùn)算,若結(jié)果超出-128+127時(shí)為溢出,時(shí)為溢出,OV=1,否則,否則OV=0。OV=CY C6 ;C6為第為第6位向第位向第7位的進(jìn)(借)位位的進(jìn)(借)位(5)P:奇偶標(biāo)志。若:奇偶標(biāo)志。若A中內(nèi)容中內(nèi)容“1”的個(gè)數(shù)為奇數(shù)個(gè)時(shí)的個(gè)數(shù)為奇數(shù)個(gè)時(shí)P=1,否則,否則P=0。(6)F0:用戶設(shè)定標(biāo)志位:用戶設(shè)定標(biāo)志位。分析:分析:1.若將數(shù)據(jù)當(dāng)作無符號(hào)數(shù)進(jìn)行運(yùn)算,則若將數(shù)據(jù)當(dāng)作無符號(hào)數(shù)進(jìn)行運(yùn)算,則CY=1表示表示結(jié)果大于結(jié)果大于255。2.若將數(shù)據(jù)當(dāng)作帶符號(hào)數(shù)進(jìn)行運(yùn)算,則若將數(shù)據(jù)當(dāng)作帶符號(hào)數(shù)進(jìn)行運(yùn)算,則OV=1表示表示溢出,結(jié)果出錯(cuò);溢出,結(jié)果出錯(cuò);OV=0,結(jié)果正確。,結(jié)果正確。(2

16、2)指令寄存器)指令寄存器(IR)(IR)(3 3)指令譯碼器)指令譯碼器(ID)(ID)(4 4)振蕩器及定時(shí)與控制電路)振蕩器及定時(shí)與控制電路控制器中央處理器中央處理器(CPU)控制器控制器 PC是一個(gè)是一個(gè)16位位的地址寄存器,的地址寄存器,用于存放下一條將用于存放下一條將要執(zhí)行的指令的地址要執(zhí)行的指令的地址。 PC不屬于特殊功能寄存器,不屬于特殊功能寄存器,不可訪問不可訪問,在物理結(jié)構(gòu)在物理結(jié)構(gòu)上是獨(dú)立的。上是獨(dú)立的。16位程序計(jì)數(shù)器位程序計(jì)數(shù)器-PC 執(zhí)行調(diào)用子程序或發(fā)生中斷時(shí),執(zhí)行調(diào)用子程序或發(fā)生中斷時(shí),CPU會(huì)自動(dòng)將當(dāng)會(huì)自動(dòng)將當(dāng)前前PC值壓入堆棧,將子程序入口地址或中斷入口值壓入

17、堆棧,將子程序入口地址或中斷入口地址裝入地址裝入PC;子程序返回或中斷返回時(shí),恢復(fù)原;子程序返回或中斷返回時(shí),恢復(fù)原有被壓入堆棧的有被壓入堆棧的PC值,繼續(xù)執(zhí)行原順序程序指令。值,繼續(xù)執(zhí)行原順序程序指令。 PC的基本工作方式有:的基本工作方式有: 自動(dòng)加自動(dòng)加1。CPU從從ROM中每讀一個(gè)字節(jié),自動(dòng)中每讀一個(gè)字節(jié),自動(dòng)執(zhí)行執(zhí)行PC+1PC; 執(zhí)行轉(zhuǎn)移指令時(shí),執(zhí)行轉(zhuǎn)移指令時(shí),PC會(huì)根據(jù)該指令要求修改下一會(huì)根據(jù)該指令要求修改下一次讀次讀ROM新的地址;新的地址;16位程序計(jì)數(shù)器位程序計(jì)數(shù)器-PC 由由PC內(nèi)容指定的內(nèi)容指定的ROM地址單元中取出的指地址單元中取出的指令,經(jīng)指令寄存器(令,經(jīng)指令寄存

18、器(IR)送至指令譯碼器()送至指令譯碼器(ID)進(jìn)行譯碼,進(jìn)而進(jìn)行譯碼,進(jìn)而CPU產(chǎn)生相應(yīng)的控制信號(hào),執(zhí)行產(chǎn)生相應(yīng)的控制信號(hào),執(zhí)行指令所規(guī)定的操作。指令所規(guī)定的操作。指令存儲(chǔ)器及指令譯碼器指令存儲(chǔ)器及指令譯碼器 常用單片機(jī)的程序存儲(chǔ)器容量:常用單片機(jī)的程序存儲(chǔ)器容量: 隨著單片機(jī)制造技術(shù)的發(fā)展,現(xiàn)在內(nèi)部隨著單片機(jī)制造技術(shù)的發(fā)展,現(xiàn)在內(nèi)部ROM有有64KB,RAM達(dá)達(dá)幾幾KB的都有。在進(jìn)行單片機(jī)應(yīng)用系統(tǒng)開發(fā)時(shí),應(yīng)注意選擇,能不的都有。在進(jìn)行單片機(jī)應(yīng)用系統(tǒng)開發(fā)時(shí),應(yīng)注意選擇,能不擴(kuò)展的盡量不擴(kuò)展。擴(kuò)展的盡量不擴(kuò)展。(片內(nèi)(片內(nèi)128B不包含不包含SFR區(qū))區(qū))存儲(chǔ)空間分布圖存儲(chǔ)空間分布圖三個(gè)邏輯

19、空間:三個(gè)邏輯空間:片內(nèi)外統(tǒng)一尋址的片內(nèi)外統(tǒng)一尋址的64KB64KB程序存儲(chǔ)器程序存儲(chǔ)器空間,地址范圍為空間,地址范圍為0000H0000HFFFFHFFFFH。 64KB64KB的片外數(shù)據(jù)存儲(chǔ)器的片外數(shù)據(jù)存儲(chǔ)器空間,地址范圍也為空間,地址范圍也為0000H0000HFFFFHFFFFH。 256B256B的片內(nèi)數(shù)據(jù)存儲(chǔ)器的片內(nèi)數(shù)據(jù)存儲(chǔ)器空間,地址范圍為空間,地址范圍為00H00HFFHFFH。 0000H 7FH 00H 80H FFH 0FFFH 0FFFH 0000H 0000H EA0 FFFFH SFR RAM EA1 ROM 4KB FFFFH 64KB ROM RAM 64KB

20、(I/O) RAM 片內(nèi)存儲(chǔ)器 1000H 片外擴(kuò)展存儲(chǔ)器 程序存儲(chǔ)器程序存儲(chǔ)器ROM用來存放程序、常數(shù)或表格等。用來存放程序、常數(shù)或表格等。 89C51存儲(chǔ)空間分布如下:存儲(chǔ)空間分布如下: 片內(nèi)有片內(nèi)有4KB的的ROM存儲(chǔ)單元,地址為存儲(chǔ)單元,地址為0000H0FFFH。 片外最多可擴(kuò)至片外最多可擴(kuò)至64KB的的ROM,地址為,地址為1000HFFFFH。 片內(nèi)外片內(nèi)外ROM統(tǒng)一編址。統(tǒng)一編址。 當(dāng)當(dāng)EA(-)引腳接)引腳接高電平高電平時(shí),時(shí),CPU將首先訪問片內(nèi)將首先訪問片內(nèi)ROM,當(dāng)指令地址超過,當(dāng)指令地址超過0FFFH時(shí),自動(dòng)轉(zhuǎn)向片外時(shí),自動(dòng)轉(zhuǎn)向片外ROM取指令。取指令。 當(dāng)當(dāng)EA(-

21、)引腳接)引腳接低電平低電平時(shí),時(shí),CPU只訪問片外只訪問片外ROM。片外片外ROM的地址從的地址從0000H開始編址。開始編址。0FFFH0000H片內(nèi)片內(nèi)4K4KROMROM0000HFFFFH片外片外64KROM0FFFHEA=1EA=0單片機(jī)的程序存儲(chǔ)器的應(yīng)用:?jiǎn)纹瑱C(jī)的程序存儲(chǔ)器的應(yīng)用:l上電復(fù)位時(shí),上電復(fù)位時(shí),PC=0000;PC=0000;l程序存儲(chǔ)器有保留單元:程序存儲(chǔ)器有保留單元:0000H0001H0002H(PC)中斷5中斷4中斷3中斷2中斷10003H000BH0013H001BH0023H002BH外部中斷0定時(shí)器0中斷外部中斷1定時(shí)器1中斷串行口中斷8位位0FFFH0

22、FFEH程序程序存儲(chǔ)器資源分布存儲(chǔ)器資源分布中斷入口地址 數(shù)據(jù)存儲(chǔ)器數(shù)據(jù)存儲(chǔ)器RAM主要用來存放運(yùn)算的主要用來存放運(yùn)算的中間結(jié)果中間結(jié)果和和數(shù)據(jù)數(shù)據(jù)等。等。 在在8051中,其存儲(chǔ)空間分布如下:中,其存儲(chǔ)空間分布如下: 片外片外RAM最多可擴(kuò)展至最多可擴(kuò)展至64KB存儲(chǔ)單元,地址范圍為存儲(chǔ)單元,地址范圍為0000HFFFFH; 片內(nèi)片內(nèi)RAM為為256B存儲(chǔ)單元,地址范圍為存儲(chǔ)單元,地址范圍為00HFFH; 片內(nèi)片外數(shù)據(jù)存儲(chǔ)器片內(nèi)片外數(shù)據(jù)存儲(chǔ)器分別單獨(dú)編址,地址有重疊,靠指分別單獨(dú)編址,地址有重疊,靠指令區(qū)分。令區(qū)分。00H07H08H0FH10H17H18H1FH2FH30H20H7FH用戶

23、RAM區(qū)位尋址區(qū)3組2組1組0組通用工作寄存器通用工作寄存器R0R7低低128B的數(shù)據(jù)的數(shù)據(jù)RAM高高128B的特殊寄存器區(qū)的特殊寄存器區(qū)SFR區(qū)區(qū)80HFFH一、內(nèi)部一、內(nèi)部(片內(nèi)片內(nèi))RAM工作寄存器區(qū)共有工作寄存器區(qū)共有32個(gè)單個(gè)單元,地址元,地址00H1FH,分為,分為4組,每組有組,每組有8個(gè)工作寄存器個(gè)工作寄存器(R0R7)。)。單元地址單元地址位地址(位地址(二進(jìn)制二進(jìn)制位的地址)位的地址)數(shù)據(jù)緩沖數(shù)據(jù)緩沖與堆棧區(qū)與堆棧區(qū)注意:上述存儲(chǔ)區(qū)的劃分不是絕對(duì)的。注意:上述存儲(chǔ)區(qū)的劃分不是絕對(duì)的。1.片內(nèi)數(shù)據(jù)存儲(chǔ)器片內(nèi)數(shù)據(jù)存儲(chǔ)器工作寄存器區(qū)工作寄存器區(qū)2.片內(nèi)數(shù)據(jù)存儲(chǔ)器片內(nèi)數(shù)據(jù)存儲(chǔ)器位尋

24、址區(qū)位尋址區(qū)3.片內(nèi)數(shù)據(jù)存儲(chǔ)器片內(nèi)數(shù)據(jù)存儲(chǔ)器通用通用RAM區(qū)區(qū)00H20H2FH7FH1FH30H80H0FFH特殊功能寄存特殊功能寄存器區(qū)器區(qū)普通普通RAM區(qū)區(qū)位尋址區(qū)位尋址區(qū) 工作寄存器區(qū)工作寄存器區(qū)初始初始SPSP棧頂棧頂數(shù)據(jù)出棧數(shù)據(jù)出棧SP-1指向新的棧指向新的棧頂,即下一個(gè)要頂,即下一個(gè)要出棧的數(shù)據(jù)出棧的數(shù)據(jù) 89C51將操作管理寄存器統(tǒng)一成特殊功能寄存器,將操作管理寄存器統(tǒng)一成特殊功能寄存器,以區(qū)別于通用寄存器。通過以區(qū)別于通用寄存器。通過SFR可實(shí)現(xiàn)可實(shí)現(xiàn)80C51系列單片系列單片機(jī)內(nèi)部資源的運(yùn)行操作。機(jī)內(nèi)部資源的運(yùn)行操作。 89C51中共有中共有21個(gè)特殊功能寄存器,個(gè)特殊功能

25、寄存器,分布在片內(nèi)分布在片內(nèi)RAM 80HFFH區(qū)間。區(qū)間。 特殊功能寄存器特殊功能寄存器(SFR)的初始值除的初始值除P0,P1,P2,P3為為FFH,SP為為07外,其余均為外,其余均為00H。二、特殊功能寄存器二、特殊功能寄存器SFR 二、片外存儲(chǔ)器二、片外存儲(chǔ)器DBCBAB外部外部設(shè)備設(shè)備外部外部設(shè)備設(shè)備PCORG 0000HCONT: MOV R1,#80H;79H 80HMOV R0,#02H;78H 02HMOV A,R0;E8HCPL A;F4HADD A,#1;24H 01HMOV R2,A;FAHMOV A,R1;E9HCPL A;F4HADDC A,#80H;34H 80HMOV R3,A;FEH79H80H78H02HE8HF4H24H01H00000001000200030004000500060007.0FFF0000H00H00H00H.00H000102.7F復(fù)位復(fù)位取指取指譯碼譯碼取操作數(shù)取操作數(shù)執(zhí)行執(zhí)行0000H79H0001H0001H80H00H80H00H.00H0002H0002H78H0003H0003H02H02H80H00H.00H0004H0004HE8H00H00H01H02H0005H西安電子科技大學(xué)出版社西安電子科技大學(xué)出版社西安電子科技大學(xué)出版社西安電子科技大學(xué)出版社西安電子科技大學(xué)出版社

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論