片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)_第1頁
片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)_第2頁
片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)_第3頁
片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)_第4頁
片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)_第5頁
已閱讀5頁,還剩45頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、高等職業(yè)教育計(jì)算機(jī)類課程規(guī)劃教材單片機(jī)原理與接口技術(shù)片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 第2章 MCS-51單片機(jī)的基本結(jié)構(gòu)2.1 單片機(jī)內(nèi)部組成及引腳功能2.2 中央處理器2.3 MCS-51單片機(jī)的存儲結(jié)構(gòu)2.4 輸入/輸出端口2.5 時鐘電路與時序2.6 單片機(jī)工作過程2.7 MCS-51 單片機(jī)工作方式2.8 MCS-51 單片機(jī)的最小應(yīng)用系統(tǒng) 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)2.1.1 MCS-51單片機(jī)系列 MCS-51系列單片機(jī)在功能上有基本型和增強(qiáng)型兩類,用芯片型號的末位數(shù)字來進(jìn)行區(qū)分,即: “1”為基本型,“2”為增強(qiáng)型。 如8031/8051/8751

2、,80C31/80C51/87C51為基本型; 8032/8052/8752,80C32/80C52/87C52為增強(qiáng)型。 在制造技術(shù)上,MCS-51系列單片機(jī)按兩種工藝生產(chǎn),一種是HMOS工藝,另一種是CHMOS工藝。 CHMOS是 CMOS和HMOS的結(jié)合,它既保持了HMOS高速度和高密度的特點(diǎn),又具有CMOS低功耗的特點(diǎn),如8051功耗約為630mW,而80C51的功耗只有120mW。 2.1 單片機(jī)內(nèi)部組成及引腳功能 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 在產(chǎn)品型號中凡帶有字母 “C” 的芯片即為 CHMOS芯片,不帶有字母“C” 的即為 HMOS芯片。 2.1.2 MCS-5

3、1單片機(jī)內(nèi)部結(jié)構(gòu) 在MCS-51系列單片機(jī)中,以8051為例,來介紹其結(jié)構(gòu)及功能。 8051單片機(jī)的內(nèi)部結(jié)構(gòu)框圖如圖2-1所示。 分析圖2-1,并按其功能部件劃分可以看出,MCS-51 系列單片機(jī)是由8大部分組成的。圖2-2為按功能劃分的MCS-51系列單片機(jī)內(nèi)部結(jié)構(gòu)簡化框圖。 這8大部分是: (1)一個8位中央處理器CPU (2)128個字節(jié)(MCS-52子系列為256字節(jié))的片內(nèi)數(shù)據(jù)存儲器RAM (3)4KB(MCS-52子系列為8KB)的片內(nèi)程序存儲器ROM或EPROM片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)圖2-1 MCS-51系列單片機(jī)的內(nèi)部結(jié)構(gòu) 片機(jī)原理與接口技術(shù)MCS51單片

4、機(jī)的基本結(jié)構(gòu) (4)18個(MCS-52子系列為21個)特殊功能寄存器SFR (5)4個8位并行輸入輸出I/O接口 (6)1個串行I/O接口,完成單片機(jī)與其他微機(jī)之間的串行通信。 (7)2個(MCS-52子系列為3個)16位定時器/計(jì)數(shù)器T0、T1。 圖2-2 MSC-51系列單片機(jī)內(nèi)部結(jié)構(gòu)簡化框圖 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) (8)具有5個(MCS-52 子系列為6個或7個)中斷源,2個可編程優(yōu)先級的中斷系統(tǒng),它可以接收外部中斷申請,定時器/ 計(jì)數(shù)器中斷申請和串行口中斷申請。2.1.3 MCS-51的引腳功能 MCS-51 系列單片機(jī)芯片均為40個引腳,HMOS工藝制造的芯

5、片采用雙列直插(DIP)方式封裝,引腳示意及功能分類如圖2-3所示。 CMOS 工藝制造的低功耗芯片也有采用方型封裝的,但為44個引腳,其中4個引腳是不使用的,引腳的功能見表2-1。 (見教材P16頁)圖2-3 MCS-5140引腳配置圖 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)2.2.1 運(yùn)算器 1.算術(shù)邏輯單元 ALU 算術(shù)邏輯單元 ALU不僅能完成8位二進(jìn)制數(shù)的加(帶進(jìn)位加)、減(帶借位減)、乘、除、加1、減 1及 BCD加法的十進(jìn)制調(diào)整等算術(shù)運(yùn)算,還能對8位變量進(jìn)行邏輯“與”、“或”、“異或”、求補(bǔ)、清零等邏輯運(yùn)算,并具有數(shù)據(jù)傳送、程序轉(zhuǎn)移等功能。 2.暫存寄存器 TMP1、TMP

6、2 用來存放參與算術(shù)運(yùn)算和邏輯運(yùn)算的另一個操作數(shù),對用戶不開放。 3.累加器 Acc 累加器Acc簡稱累加器A,為一個8位寄存器,它是CPU中使用最頻繁的寄存器。用來存放參與算術(shù)運(yùn)算和邏輯運(yùn)算的一個操作數(shù)或運(yùn)算結(jié)果。 2.2 中央處理器 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 4.寄存器B 寄存器B是為ALU進(jìn)行乘除法運(yùn)算設(shè)置的。 5.程序狀態(tài)字寄存器PSW 程序狀態(tài)字寄存器PSW(8位)是一個標(biāo)志寄存器,它保存指令執(zhí)行結(jié)果的特征信息,以供程序查詢和判別,比如作為程序轉(zhuǎn)移的條件,其中有些位是在指令執(zhí)行中由硬件自動設(shè)置的,而有些位則由用戶設(shè)定。 其程序狀態(tài)字格式及含義見表2-2。 表2-2

7、 PSW的程序狀態(tài)字格式及含義位編號 PSW.7 PSW.6 PSW.5 PSW.4 PSW.3 PSW.2 PSW.1 PSW.0位定義 Cy AC F0 RS1 RS0 OV P位地址 D7H D6H D5H D4H D3H D2H D1H D0H片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) Cy(PSW.7)進(jìn)位標(biāo)志位。 AC(PSW.6)輔助進(jìn)位(或稱半進(jìn)位)標(biāo)志位。 F0(PSW.5)由用戶定義的標(biāo)志位。 RS1(PSW.4)、RS0(PSW.3)工作寄存器組選擇位。 RS1、RS0狀態(tài)與工作寄存器R0R7的物理地址關(guān)系見表2-3。 表2-3 工作寄存器組選擇 RS1 RS0 工作寄

8、存器組號 R0R7的物理地址 0 0 0 00H07H 0 1 1 08H0FH 1 0 2 10H17H 1 1 3 18H1FH OV(PSW.2)溢出標(biāo)志位。 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) PSW.1未定義位。 P(PSW.0)奇偶標(biāo)志位。 6.布爾處理器 單片機(jī)主要用于各種控制,MCS-51系列單片機(jī)既是8位機(jī),同時也是一個功能完善的1位機(jī)。 作為1位機(jī)時,它有自己的CPU、位存儲區(qū)(位于內(nèi)部RAM的20H2FH單元)、位寄存器,如將進(jìn)位標(biāo)志Cy作為 “位累加器”,以及具有完整的位操作指令,包括置1、清零、非(取反)、與、或、異或、傳送、測試轉(zhuǎn)移等。2.2.2 控制器

9、控制器是單片機(jī)內(nèi)部按一定時序協(xié)調(diào)工作的控制核心,是分析和執(zhí)行指令的部件。 1.程序計(jì)數(shù)器PC 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 程序計(jì)數(shù)器PC是一個16位專用計(jì)數(shù)器,其作用十分重要,用于存放CPU下一條要執(zhí)行指令的地址,即程序存儲器地址。 CPU根據(jù)PC中的地址到ROM中去讀取程序指令碼和數(shù)據(jù),并送給指令寄存器IR進(jìn)行分析。每取出現(xiàn)行指令的一個字節(jié)后,PC就自動加 1,即(PC)+1PC,指向下一個要讀取字節(jié)的地址。 PC本身是沒有地址的,是不可以尋址的,用戶不能對它進(jìn)行讀寫操作,但可以通過分支/跳轉(zhuǎn)/調(diào)用/中斷/復(fù)位等操作指令改變PC值,實(shí)現(xiàn)程序的轉(zhuǎn)移。 2.指令寄存器IR、指令

10、譯碼器ID和定時控制電路 指令寄存器IR用于存放CPU根據(jù)PC地址從ROM中讀出的指令操作碼。 指令譯碼器ID是用于分析指令操作的部件,指令操作碼經(jīng)譯碼后產(chǎn)生相應(yīng)于某一特定操作的信號。 定時控制邏輯中定時部件用來產(chǎn)生脈沖序列和多種節(jié)拍脈沖。 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 控制邏輯根據(jù)指令譯碼器產(chǎn)生的操作信號,按一定時間順序發(fā)出一系列節(jié)拍脈沖控制信號來完成指令所規(guī)定的全部操作。 3.數(shù)據(jù)指針DPTR 數(shù)據(jù)指針DPTR是一個16位的專用寄存器,由DPH(數(shù)據(jù)指針高8位)和DPL(數(shù)據(jù)指針低8位)組成。 既可以作為一個16位寄存器使用,也可作為兩個獨(dú)立的 8位寄存器DPH和DPL使用

11、,DPTR通常用于存放外部數(shù)據(jù)存儲器的存儲單元地址。 4.堆棧指針SP 堆棧指針SP是一個8位的特殊功能寄存器,用于指出堆棧棧頂?shù)牡刂?。?shù)據(jù)被壓入堆棧,SP自動加1;數(shù)據(jù)從堆棧中彈出,SP自動減1。 5.中斷控制、串行口控制及定時電路 與中斷相關(guān)的寄存器(2個): 中斷允許控制寄存器IE,中斷優(yōu)先級控制寄存器IP。 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 與串行口相關(guān)的寄存器(3個): 串行口數(shù)據(jù)緩沖器SBUF,串行口控制寄存器SCON,串行通訊波特率倍增寄存器PCON。 與定時器/計(jì)數(shù)器相關(guān)的寄存器(6個): 定時器/計(jì)數(shù)器T0的兩個8位計(jì)數(shù)初值寄存器TH0、TL0,它們可以構(gòu)成16位

12、的計(jì)數(shù)器,TH0存放高8位,TL0存放低8位; 定時器/計(jì)數(shù)器T1的兩個8位計(jì)數(shù)初值寄存器TH1、TL1,它們可以構(gòu)成16位的計(jì)數(shù)器,TH1存放高8位,TL1存放低8位; 定時器/計(jì)數(shù)器的工作方式寄存器TMOD; 定時器/計(jì)數(shù)器的控制寄存器TCON。 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)2.3.1 MCS-51存儲器特點(diǎn) 8051單片機(jī)的存儲器從物理上分四個存儲空間:片內(nèi)程序存儲器、片外程序存儲器、片內(nèi)數(shù)據(jù)存儲器、片外數(shù)據(jù)存儲器。 從用戶的角度考慮,8051單片機(jī)的存儲器又可分三個邏輯空間(如圖2-4所示): (1)片內(nèi)、片外統(tǒng)一編址的64KB(0000HFFFFH)程序存儲器地址空間

13、(使用16位地址線)。 (2)256B的片內(nèi)數(shù)據(jù)存儲器地址空間(00HFFH,其中80HFFH內(nèi)僅有二十幾個字節(jié)單元供特殊功能寄存器專用)。 (3)片外可擴(kuò)展的64KB(0000HFFFFH)數(shù)據(jù)存儲器地址空間(使用16位地址線)。 2.3 MCS-51單片機(jī)的存儲結(jié)構(gòu) 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)圖2-4 8051單片機(jī)的存儲器地址空間分布圖片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)2.3.2 程序存儲器ROM 1.片內(nèi)ROM的配置形式 無ROM型,應(yīng)用時要在片外擴(kuò)展程序存儲器。 掩膜ROM型,用戶程序由芯片生產(chǎn)廠寫入。 EPROM型,用戶程序通過寫入裝置寫入,通過紫外線照

14、射擦除。 FlashROM型,用戶程序可以電寫入或擦除。 OTPROM型,具有較高的環(huán)境適應(yīng)性和可靠性。 2.程序存儲器的編址 計(jì)算機(jī)的工作是按照事先編制好的程序命令一條條循序執(zhí)行的,程序存儲器就是用來存放這些已編好的程序和表格常數(shù),它由只讀存儲器ROM或EPROM組成。 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 8051/8751 都共有64KB程序存儲器空間,片內(nèi) ROM/EPROM的容量為4KB,地址為0000H0FFFH; 片外最多可擴(kuò)展至64KB的ROM/EPROM,地址為1000HFFFFH,片內(nèi)外是統(tǒng)一編址的。 當(dāng)引腳EA接高電平時,8051的PC在0000H0FFFH范圍內(nèi)

15、執(zhí)行片內(nèi)ROM中的程序; 當(dāng)指令超過0FFFH時,就自動轉(zhuǎn)向片外ROM取指令。 當(dāng)EA接低電平時,8051片內(nèi)ROM不起作用,CPU只能從片外ROM/EPROM中取指令。對于8031芯片,因其片內(nèi)無ROM,故應(yīng)使EA接低電平,這樣才能直接從外部擴(kuò)展的EPROM中取指令。 3.程序運(yùn)行的入口地址 實(shí)際應(yīng)用時,程序存儲器的容量由用戶根據(jù)需要擴(kuò)展,而程序地址空間原則上也可由用戶任意安排,但程序最初運(yùn)行的入口地址是固定的,用戶不能更改。 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 程序存儲器中有7個固定的入口地址,見表2-4。表2-4 程序運(yùn)行入口地址 存儲單元 保留目的 0000H0002H 復(fù)位

16、后初始化引導(dǎo)程序地址 0003H000AH 外部中斷0 000BH0012H 定時器0溢出中斷 0013H001AH 外部中斷1 001BH0022H 定時器1溢出中斷 0023H002AH 串行口中斷 002BH 定時器2中斷(8052才有)2.3.3 數(shù)據(jù)存儲器RAM 數(shù)據(jù)存儲器一般采用隨機(jī)存取存儲器(RAM)。這種存儲器是一種在使用過程中利用程序隨時可以寫入信息,又可以隨時讀出信息的存儲器。 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) MCS-51單片機(jī)數(shù)據(jù)存儲器有片內(nèi)和片外之分。片內(nèi)有256個字節(jié)RAM,地址范圍為00HFFH(如圖2-5所示)。片外數(shù)據(jù)存儲器可擴(kuò)展64KB存儲空間,

17、地址范圍為0000HFFFFH,但兩者的地址空間是分開的,各自獨(dú)立的。 1.片內(nèi)低128B RAM (1)通用寄存器區(qū) 將內(nèi)容內(nèi)部RAM的 00H1FH區(qū),共分 4個組,每組有 8個工作寄存器R0R7,共32個內(nèi)部RAM單元。見表2-5。(見教材P23頁) (2)位尋址區(qū) 20H2FH單元為位尋址區(qū),這16個單元(共計(jì)128位)的每1位都有一個對應(yīng)的位地址,位地址范圍為00H7FH,見表2-6。(見教材P24頁) (3)用戶RAM區(qū) 30H7FH是數(shù)據(jù)緩沖區(qū),也是用戶RAM區(qū),共80個單元。 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)圖2-5 片內(nèi)數(shù)據(jù)存儲器分布圖 片機(jī)原理與接口技術(shù)MCS5

18、1單片機(jī)的基本結(jié)構(gòu) (4)堆棧區(qū) 在片內(nèi)RAM中,常常要指定一個專門的區(qū)域來存放某些特別的數(shù)據(jù),它遵循后進(jìn)先出或先進(jìn)后出的原則按順序存取,這個RAM區(qū)叫堆棧。 堆棧功用: 子程序調(diào)用和中斷服務(wù)時,CPU自動將當(dāng)前PC值入棧保存,返回時自動將PC值出棧。 保護(hù)/恢復(fù)現(xiàn)場。 數(shù)據(jù)傳輸。 2.片內(nèi)高 128B的RAM特殊功能寄存器 MCS-51單片機(jī)內(nèi)高128B的RAM中,集合了一些特殊用途的寄存器SFR,專用于控制、選擇、管理、存放單片機(jī)內(nèi)部各部分的工作方式、條件、狀態(tài)、結(jié)果。不同的SFR管理不同的硬件模塊,負(fù)責(zé)不同的功能。 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 它們包括程序狀態(tài)字寄存器、

19、累加器、I/O口鎖存器、定時器/計(jì)數(shù)器、串口數(shù)據(jù)緩沖器、數(shù)據(jù)指針等,其地址分散在80HFFH之間,見表2-7。(見教材P25頁) 2.3.4 外部數(shù)據(jù)存儲器 外部數(shù)據(jù)存儲器一般由靜態(tài)RAM芯片組成。 擴(kuò)展存儲器容量的大小,由用戶根據(jù)需要而定,但MCS-51單片機(jī)訪問外部數(shù)據(jù)存儲器可用 1個特殊功能寄存器數(shù)據(jù)指針寄存器DPTR進(jìn)行尋址。 由于DPTR為16位,可尋址的范圍可達(dá)64KB,所以擴(kuò)展外部數(shù)據(jù)存儲器的最大容量是64KB。片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 在 MCS-51單片機(jī)中有4個雙向并行I/O端口P0P3,每個端口都有8條端口線,共32條線,并都配有端口鎖存器、輸出驅(qū)動器

20、和輸入緩沖器,用于CPU與外部設(shè)備之間交換信息。這 4個I/O口在電路結(jié)構(gòu)上不完全相同,因此在功能和使用上有各自的特點(diǎn)。2.4.1 P0端口 1.端口結(jié)構(gòu) P0口是一個三態(tài)雙向口,其 1位的結(jié)構(gòu)原理如圖 2-6所示。 2.4 輸入/輸出端口 圖2-6 P0口位結(jié)構(gòu)圖 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) P0口由 8個這樣的電路組成。 鎖存器起輸出鎖存作用,8個鎖存器構(gòu)成了特殊功能寄存器P0; 場效應(yīng)管T1、T2組成輸出驅(qū)動器,以增大帶負(fù)載能力; 三態(tài)門 1是引腳輸入緩沖器; 三態(tài)門 2是用于讀鎖存器端口; 與門3、反相器4及模擬轉(zhuǎn)換開關(guān)MUX構(gòu)成輸出控制電路。 2.通用I/O接口功能

21、 當(dāng)系統(tǒng)不進(jìn)行片外的ROM擴(kuò)展,也不進(jìn)行片外RAM擴(kuò)展時,P0用作通用I/O口。 在這種情況下,單片機(jī)硬件自動使多路開關(guān) “控制” 信號為 “0”(低電平),MUX開關(guān)接鎖存器的Q輸出端。 另外,與門輸出的 “0” 使輸出驅(qū)動器的上拉場效應(yīng)管T1處于截止?fàn)顟B(tài)。此時,輸出級是漏極開路。 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) (1)P0作為輸出口 作輸出口時,CPU執(zhí)行口的輸出指令,內(nèi)部數(shù)據(jù)總線上的數(shù)據(jù)在“寫鎖存器”信號的作用下由D端進(jìn)入鎖存器,經(jīng)鎖存器的反相端送至場效應(yīng)管T2,再經(jīng)T2反相,在P0.x引腳出現(xiàn)的數(shù)據(jù)正好是內(nèi)部總線的數(shù)據(jù)。 (2)P0作為輸入口 作輸入口時,數(shù)據(jù)可以讀自口的

22、鎖存器,也可以讀自口的引腳。這要根據(jù)輸入操作采用的是 “讀鎖存器” 指令還是 “讀引腳” 指令來決定。 3.地址/數(shù)據(jù)分時復(fù)用功能 當(dāng)系統(tǒng)進(jìn)行片外的ROM擴(kuò)展或進(jìn)行片外RAM擴(kuò)展時,P0用作地址/數(shù)據(jù)總線。 在這種情況下,單片機(jī)內(nèi)硬件自動使多路開關(guān) “控制” 信號為 “1”(高電平),MUX開關(guān)接反相器的輸出端,這時與門的輸出由地址/數(shù)據(jù)線的狀態(tài)決定。片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 4.端口操作 在 MCS-51單片機(jī)中,沒有專門的輸入輸出指令,而是將I/O接口與存儲器一樣看待,使用和讀寫 RAM一樣的指令實(shí)現(xiàn)輸入輸出功能,端口在RAM中的字節(jié)地址和位地址見表2-7。 當(dāng)向I/O

23、端口寫入數(shù)據(jù)時,即通過相應(yīng)引腳向外輸出; 當(dāng)從I/O讀入數(shù)據(jù)時,則將通過引腳將外設(shè)狀態(tài)信號輸入到單片機(jī)內(nèi). (1)使用數(shù)據(jù)傳送類MOV指令輸入/輸出字節(jié)數(shù)據(jù),例如: MOV A,P0 MOV P0,A (2)使用位操作指令輸出各位數(shù)據(jù),例如: SETB P0.0 MOV C,P0.0片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) (3)使用讀-修改-寫指令改變輸出數(shù)據(jù),例如: ANL P0,A2.4.2 P1端口 P1口位結(jié)構(gòu)如圖2-7所示。 圖2-7 P1口位結(jié)構(gòu)圖 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 在結(jié)構(gòu)上,與P0相比,主要有兩個不同: 一是不需要多路開關(guān); 二是本身具備上拉電阻

24、。 在應(yīng)用上,P1口只能作一般I/O口使用,除了作輸出口使用時不必外接上拉電阻外,其他應(yīng)用特點(diǎn)及注意事項(xiàng)與P0口完全一樣。2.4.3 P2端口 P2口位結(jié)構(gòu)如圖2-8所示。 圖2-8 P2口位結(jié)構(gòu)圖 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 在結(jié)構(gòu)上,與P0口相比有兩個不同: 一是多路開關(guān)MUX的一個輸入端只是 “地址”,而不是 “地址/數(shù)據(jù)”; 二是P2口自身具備上拉電阻。 在應(yīng)用上分兩種情況: 一是作一般I/O口使用,與P1口相同; 二是用于為外部擴(kuò)展存儲器或I/O口提供高8位地址。2.4.4 P3端口 P3口位結(jié)構(gòu)如圖2-9所示。 與P1口結(jié)構(gòu)相比,多了一個與非門 3和一個輸入緩沖器

25、 4,當(dāng) CPU不對P3口進(jìn)行字節(jié)或位尋址時,內(nèi)部硬件自動將口鎖存器的Q端置1。這時,P3口作為第二功能使用,引腳的第二功能見表2-8。 1.P3口用作第二功能使用片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)圖2-9 P3口位結(jié)構(gòu)圖 表2-8 P3口8位口線第二功能 口線 第二功能 P3.0 RXD(串行口輸入) P3.1 TXD(串行口輸出) P3.2 INT0(外部中斷0輸入) P3.3 INT1(外部中斷1輸入) P3.4 T0(定時器0的外部輸入) P3.5 T1(定時器1的外部輸入) P3.6 WR(片外數(shù)據(jù)存儲器寫選通) P3.7 RD(片外數(shù)據(jù)存儲器讀選通) 片機(jī)原理與接口技術(shù)M

26、CS51單片機(jī)的基本結(jié)構(gòu) (1)輸入第二功能信號時 此時鎖存器輸出端及 “第二輸出功能” 信號端均應(yīng)保持高電平。第二功能輸入信號通過P3.x引腳通過緩沖器4的輸出端輸入到單片機(jī)內(nèi)部。 (2)輸出第二功能信號時 此時鎖存器應(yīng)預(yù)先置“1”,以保持與非門對第二功能信號的輸出能順利進(jìn)行。 2.P3口作為一般的I/O口使用 當(dāng) CPU對P3口進(jìn)行字節(jié)或位尋址時,單片機(jī)內(nèi)部的硬件自動將第二功能輸出線置1。這時,對應(yīng)的口線為通用I/O口方式,其應(yīng)用特點(diǎn)與注意事項(xiàng)與P0口相同。 在實(shí)際應(yīng)用中,P0和P2口多用于構(gòu)建系統(tǒng)的數(shù)據(jù)總線和地址總線,P0口用作構(gòu)建 8位數(shù)據(jù)總線和低 8位地址總線,而P2口用來構(gòu)建高 8

27、位地址總線。片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) P3 口多用于第二功能,真正用作一般 I/O口的往往是 P1口,如圖2-10所示。 圖2-10 三總線構(gòu)成示意圖 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)2.5.1 時鐘電路 1.內(nèi)部振蕩器方式 采用內(nèi)部振蕩器方式時,如圖2-11(a)所示。 2.外部引入方式 外部脈沖信號由 XTAL2端引腳輸入,送至內(nèi)部時鐘電路。 如圖2-11(b)所示。2.5.2 時 序 單片機(jī)與其他計(jì)算機(jī)的工作方式相同,即采用 “存儲程序” 的方式,事先把程序加載到單片機(jī)的存儲器中,CPU 再按程序中的指令一條一條地執(zhí)行。 2.5 時鐘電路與時序 片機(jī)原理與

28、接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 單片機(jī)在執(zhí)行指令時,通常將一條指令分解為若干基本的微操作,這些微操作所對應(yīng)的脈沖信號在時間上的先后次序稱為的時序。 1.時序的相關(guān)概念 振蕩周期: 為單片機(jī)提供定時信號的振蕩源的周期。 振蕩脈沖的周期也稱為節(jié)拍,用P表示。振蕩周期又稱為時鐘周期。 圖2-11 MCS-51時鐘方式片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 狀態(tài)周期: CPU從一個狀態(tài)轉(zhuǎn)換到另一狀態(tài)所需的時間。 一個狀態(tài)周期由一個或一個以上的時鐘周期組成。 在MCS-51中,一個狀態(tài)周期由兩個時鐘周期組成。 2個振蕩周期為1個狀態(tài)周期,用S表示,這樣一個狀態(tài)包含兩個節(jié)拍,分別用P1和P2表示

29、。 機(jī)器周期: 是計(jì)算機(jī)完成一次完整的、基本的操作所需要的時間。 MCS-51一個機(jī)器周期由6個狀態(tài)周期組成,用S1、S2、S6表示,共12個振蕩周期。 1個機(jī)器周期=6個狀態(tài)周期=12個振蕩周期 指令周期: 執(zhí)行一條指令所需的時間,指令周期往往由一個或一個以上的機(jī)器周期組成。 指令周期的長短與指令所執(zhí)行的操作有關(guān)。 MCS-51系列單片機(jī)的指令周期通常為14個機(jī)器周期。 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) MCS-51系列單片機(jī)一個機(jī)器周期由12個振蕩周期組成,分為六個狀態(tài),分別稱為S1、S2、S3、S4、S5、S6,每個狀態(tài)都包含P1、P2兩相。 振蕩周期、狀態(tài)周期、機(jī)器周期和指

30、令周期的關(guān)系如圖2-12所示。 圖2-12 MCS-51各種周期的關(guān)系 例如: 外接晶振為12MHz時,MCS-51單片機(jī)4個時間周期的具體值為: 振蕩周期=1/12s; 狀態(tài)周期=1/6s; 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 機(jī)器周期=1s; 指令周期=14s。 2.MCS-51系列單片機(jī)指令時序 MCS-51系列單片機(jī)共有111條指令,全部指令按其長度分為單字節(jié)、雙字節(jié)和三字節(jié)指令。 執(zhí)行這些指令所需要的機(jī)器周期是不同的,包括以下幾種情況: 單字節(jié)單機(jī)器周期、單字節(jié)雙機(jī)器周期、雙字節(jié)單機(jī)器周期和雙字節(jié)雙機(jī)器周期。 三字節(jié)指令均為雙機(jī)器周期,單字節(jié)乘除指令為四機(jī)器周期。 圖2-1

31、3是典型指令的時序圖。 (1)單字節(jié)單周期指令(如:INC A指令) (2)雙字節(jié)單周期指令(如:ADD A,#data指令) 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)圖2-13 MCS-51指令執(zhí)行時序 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) (3)單字節(jié)雙周期指令(如:INC DPTR指令) (4)雙字節(jié)雙周期指令(如:MOVX類指令) 2.6 單片機(jī)工作過程 單片機(jī)工作過程就是從程序存儲器0000H單元開始逐條執(zhí)行已編好、并存儲在程序存儲器中的指令的過程。 一條指令的執(zhí)行過程為: 取操作碼(取指令第一字節(jié))譯碼(對指令操作碼進(jìn)行翻譯,指示控制器給出相應(yīng)的控制信號)取操作數(shù)(取出

32、剩余的指令字節(jié),指令第一字節(jié),即操作碼字節(jié)將告訴 CPU該指令的長短)執(zhí)行指令規(guī)定的操作。 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 單片機(jī)執(zhí)行程序是執(zhí)行完一條指令后接著執(zhí)行下一條指令,所以單片機(jī)工作過程是不斷重復(fù) “取操作碼譯碼取操作數(shù)執(zhí)行” 的過程,直到程序結(jié)束。 下面以MOV A,50H指令的執(zhí)行過程為例,結(jié)合指令執(zhí)行過程示意圖(圖2-14)來說明單片機(jī)的工作過程。 單片機(jī)開機(jī)時,PC=0000H,即從0000H開始執(zhí)行指令: 1.取操作碼 將程序計(jì)數(shù)器 PC中的內(nèi)容,即第一條指令所在的存儲單元地址0000H通過地址總線送到地址寄存器AR中。 PC內(nèi)容自動加1,指向下一存儲單元。 地

33、址寄存器 AR中的內(nèi)容通過地址總線 AB將地址信息0000H送到存儲器地址總線上。 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu)圖2-14 指令執(zhí)行過程示意圖 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 存儲器芯片內(nèi)的地址譯碼器對地址信號進(jìn)行譯碼,并選中存儲器芯片內(nèi)的0000H單元。 CPU給出存儲器讀控制信號,被選中0000H單元中的內(nèi)容“E5”經(jīng)數(shù)據(jù)總線DB送到CPU內(nèi)部的數(shù)據(jù)存儲器DR中。 將DR寄存器中的E5H送入指令寄存器IR中保存,完成了第一條指令操作碼的取出過程。 2.譯碼 指令譯碼器 ID對指令寄存器 IR中的內(nèi)容(即操作碼)進(jìn)行譯碼,以確定指令所要執(zhí)行的操作,指示CPU內(nèi)的

34、控制器給出相應(yīng)的控制信號,完成指令的譯碼。 譯碼后,能確定該指令有無操作數(shù),如果有操作數(shù),根據(jù)操作數(shù)個數(shù)及存放位置取操作數(shù);如果無操作數(shù),則進(jìn)入執(zhí)行指令階段,執(zhí)行指令.片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) 3.取操作數(shù) 將程序計(jì)數(shù)器 PC內(nèi)容(當(dāng)前為0001)傳送到AR寄存器中,同時程序計(jì)數(shù)器 PC自動加 1,指向下一存儲單元,即 0002H單元。 地址寄存器 AR內(nèi)容(目前為0001H)通過地址總線 AB輸出到存儲器地址總線上。存儲器芯片內(nèi)的地址譯碼器對地址信號進(jìn)行譯碼,并選中存儲器芯片內(nèi)的0001H單元。 CPU給出存儲器讀控制信號,將0001H存儲單元中的內(nèi)容 “50” 經(jīng)數(shù)據(jù)總

35、線DB送到CPU內(nèi)部的數(shù)據(jù)存儲器DR中。由于第二字節(jié)是指令操作數(shù)所在存儲單元地址的低8位,因此數(shù)據(jù)寄存器DR中的內(nèi)容通過內(nèi)部數(shù)據(jù)總線送入暫存器中。 4.執(zhí)行指令 由于這條指令第二字節(jié)是操作數(shù)所在存儲單元地址,因此在執(zhí)行階段將存放在DR中的內(nèi)容送AR的低8位,形成操作數(shù)16位地址碼,經(jīng)AR輸出。 片機(jī)原理與接口技術(shù)MCS51單片機(jī)的基本結(jié)構(gòu) AR輸出的地址信號經(jīng)存儲器芯片內(nèi)的地址譯碼器譯碼后,在存儲器讀信號的控制下,即可將50H單元中的內(nèi)容經(jīng)存儲器數(shù)據(jù)總線DB輸入CPU內(nèi)部數(shù)據(jù)寄存器DR,然后傳送到累加器A中,完成了該指令的執(zhí)行過程。 單片機(jī)程序的執(zhí)行過程就是一直重復(fù)上述步驟,直到特定任務(wù)程序中的所有指令執(zhí)行完畢。 2.7 MCS-51 單片機(jī)工作方式 2.7.1 復(fù)位方式及復(fù)位狀態(tài) 1.復(fù)位方式 MCS-51系列單片機(jī)的復(fù)位靠外部電路實(shí)現(xiàn),信號由RST(RESET)引腳輸入,高電平有效(一般復(fù)位正脈沖寬度大于10ms)。 復(fù)位分為上電復(fù)位和按鈕復(fù)位,上電復(fù)位電路如圖2-15(a)所示;按鈕復(fù)位有電平方式和脈沖方式,電路如圖2-15(b)、(c)所示。 片機(jī)原理與接口技術(shù)MCS

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論