MCS-51單片機(jī)硬件結(jié)構(gòu)和原理課件_第1頁(yè)
MCS-51單片機(jī)硬件結(jié)構(gòu)和原理課件_第2頁(yè)
MCS-51單片機(jī)硬件結(jié)構(gòu)和原理課件_第3頁(yè)
MCS-51單片機(jī)硬件結(jié)構(gòu)和原理課件_第4頁(yè)
MCS-51單片機(jī)硬件結(jié)構(gòu)和原理課件_第5頁(yè)
已閱讀5頁(yè),還剩100頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

單片機(jī)原理與接口技術(shù)電子工業(yè)出版社第2章MCS-51單片機(jī)

硬件結(jié)構(gòu)和原理2023/11/11MCS-51單片機(jī)硬件結(jié)構(gòu)和原理熟悉MCS-51單片機(jī)CPU內(nèi)部組成結(jié)構(gòu)、各功能部件的作用;掌握MCS-51單片機(jī)引腳功能;掌握存儲(chǔ)器的組織結(jié)構(gòu);掌握P0~P3并行I/O口結(jié)構(gòu);掌握時(shí)鐘電路、CPU時(shí)序和復(fù)位電路。本章教學(xué)要求

2023/11/12MCS-51單片機(jī)硬件結(jié)構(gòu)和原理本章目錄2.1MCS-51系列單片機(jī)分類2.2單片機(jī)硬件結(jié)構(gòu)

2.2.1單片機(jī)的引腳功能

2.2.2單片機(jī)的內(nèi)部結(jié)構(gòu) 2.3中央處理器(CPU)

2.3.1運(yùn)算器2.3.2控制器 2.3.3布爾(位)處理器 2.4存儲(chǔ)器

2.4.1程序存儲(chǔ)器

2.4.2數(shù)據(jù)存儲(chǔ)器2023/11/13MCS-51單片機(jī)硬件結(jié)構(gòu)和原理本章目錄2.7單片機(jī)的工作方式

2.7.1復(fù)位方式

2.7.2程序執(zhí)行方式

2.7.3低功耗運(yùn)行方式習(xí)題與思考題2.5并行輸入/輸出端口

2.5.1P1口

2.5.2P2口

2.5.3P3口

2.5.4P0口

2.5.5并行口的應(yīng)用2.6時(shí)鐘電路和時(shí)序

2.6.1時(shí)鐘電路

2.6.2時(shí)序2023/11/14MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.1MCS-51系列單片機(jī)的分類

自從Intel公司于20世紀(jì)80年代初推出MCS-51系列單片機(jī)以后,所有的51系列單片機(jī)都是以Intel公司最早的典型產(chǎn)品8051為核心,增加一定的功能部件后構(gòu)成的。本章以8051為主闡述MCS-51系列單片機(jī)的系統(tǒng)結(jié)構(gòu)、工作原理和應(yīng)用中的一些技術(shù)問(wèn)題。

MCS-51系列可分為兩大系列:51子系列和52子系列。51子系列主要有8031、8051和8751三種機(jī)型。52子系列主要有8032、8052和8752三種機(jī)型。2023/11/15MCS-51單片機(jī)硬件結(jié)構(gòu)和原理表2-1MCS-51系列單片機(jī)的性能一覽表

2.1MCS-51系列單片機(jī)的分類

2023/11/16MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.2單片機(jī)硬件結(jié)構(gòu)

芯片引腳按功能分成3類,即:2.2.1單片機(jī)的引腳功能51單片機(jī)的引腳功能數(shù)據(jù)總線地址總線控制總線2023/11/17MCS-51單片機(jī)硬件結(jié)構(gòu)和原理1.主電源引腳Vcc和VssVcc(+5V)電源輸入端Vss(GND)共用接地端2.2.1單片機(jī)的引腳功能51單片機(jī)電源引腳2023/11/18MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.時(shí)鐘振蕩電路引腳XTAL1和XTAL2

XTAL1和XTAL2分別用做晶體振蕩電路的反相器輸入端和輸出端。在使用內(nèi)部振蕩電路時(shí),這兩個(gè)端子用來(lái)外接石英晶體,振蕩頻率為晶體振蕩頻率,振蕩信號(hào)送至內(nèi)部時(shí)鐘電路產(chǎn)生時(shí)鐘脈沖信號(hào)。2.2.1單片機(jī)的引腳功能51單片機(jī)時(shí)鐘引腳2023/11/19MCS-51單片機(jī)硬件結(jié)構(gòu)和原理3.控制信號(hào)引腳RST為復(fù)位信號(hào)輸入端VPD為內(nèi)部RAM的備用電源輸入端PSEN外部程序存儲(chǔ)器的讀選通信號(hào)ALE地址鎖存允許信號(hào)2.2.1單片機(jī)的引腳功能復(fù)位/外部存儲(chǔ)器/地址鎖存引腳2023/11/110MCS-51單片機(jī)硬件結(jié)構(gòu)和原理

復(fù)位信號(hào)輸入端RST當(dāng)RST(RESET)端保持兩個(gè)機(jī)器周期(24個(gè)時(shí)鐘周期)以上的高電平時(shí),單片機(jī)完成復(fù)位操作。VPD為內(nèi)部RAM的備用電源輸入端。當(dāng)主電源Vcc一旦發(fā)生斷電或電壓降到一定值時(shí),可通過(guò)VPD為單片機(jī)內(nèi)部RAM提供電源,以保護(hù)片內(nèi)RAM中的信息不丟失,使Vcc上電后能繼續(xù)正常運(yùn)行。2.2.1單片機(jī)的引腳功能復(fù)位引腳2023/11/111MCS-51單片機(jī)硬件結(jié)構(gòu)和原理外部程序存儲(chǔ)器的讀選通信號(hào)。當(dāng)訪問(wèn)外部ROM時(shí),產(chǎn)生負(fù)脈沖作為外部ROM的選通信號(hào)。2.2.1單片機(jī)的引腳功能ALE與PSEN引腳

地址鎖存允許信號(hào)ALE在訪問(wèn)外部存儲(chǔ)器時(shí),ALE用來(lái)鎖存P0送出的低8位地址信號(hào)。PROG是對(duì)8751內(nèi)部EPROM編程時(shí)的編程脈沖輸入端。

讀選通信號(hào)PSEN2023/11/112MCS-51單片機(jī)硬件結(jié)構(gòu)和原理

外部程序存儲(chǔ)器控制信號(hào)EAEA=0:訪問(wèn)外部程序存儲(chǔ)器。EA=1:訪問(wèn)片內(nèi)與片外程序存儲(chǔ)器。VPP為8751EPROM的21V編程電源輸入端。2.2.1單片機(jī)的引腳功能內(nèi)外程序存儲(chǔ)器控制引腳2023/11/113MCS-51單片機(jī)硬件結(jié)構(gòu)和原理P0端口P0端口(P0.0~P0.7)第一功能:是一個(gè)8位漏極開(kāi)路型的雙向I/O口,這時(shí)P0口可看成用戶數(shù)據(jù)總線;第二功能:是在訪問(wèn)外部存儲(chǔ)器時(shí),分時(shí)提供低8位地址和8位雙向數(shù)據(jù)總線,這時(shí)先用做地址總線再用做數(shù)據(jù)總線。4.P0、P1、P2、P3端口2.2.1單片機(jī)的引腳功能2023/11/114MCS-51單片機(jī)硬件結(jié)構(gòu)和原理P1口(P1.0~P1.7)內(nèi)部帶上拉電阻的8位準(zhǔn)雙向I/O口。

P2口(P2.0~P2.7)第一功能:一個(gè)內(nèi)部帶上拉電阻的8位準(zhǔn)雙向I/O口。第二功能:在訪問(wèn)外部存儲(chǔ)器時(shí),輸出高8位地址。

P3口(P3.0~P3.7)第一功能:內(nèi)部帶上拉電阻的8位準(zhǔn)雙向I/O口。在系統(tǒng)中,這8個(gè)引腳都有各自的第二功能。2.2.1單片機(jī)的引腳功能P1、P2和P3端口2023/11/115MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.2.2單片機(jī)的內(nèi)部結(jié)構(gòu)一個(gè)8位CPU;4KB程序存儲(chǔ)器,采用ROM或EPROM(8031無(wú)ROM);128B通用數(shù)據(jù)存儲(chǔ)器;21個(gè)特殊功能寄存器(SFR);4個(gè)8位并行口,其中P0、P2、P3是復(fù)用口(P0和P2為地址/數(shù)據(jù)線,可尋址64KBROM和64KBRAM);一個(gè)可編程全雙工串行口;具有5個(gè)中斷源,兩個(gè)優(yōu)先級(jí)嵌套結(jié)構(gòu);兩個(gè)16位定時(shí)/計(jì)數(shù)器;一個(gè)片內(nèi)振蕩器與時(shí)鐘電路。51單片機(jī)內(nèi)部主要器件2023/11/116MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.2.2單片機(jī)的內(nèi)部結(jié)構(gòu)51單片機(jī)內(nèi)部主要部件2023/11/117MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.3中央處理器(CPU)

單片機(jī)的核心部分是CPU,由運(yùn)算器、控制器和布爾(位)處理器組成。2023/11/118MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.3.1運(yùn)算器

運(yùn)算器——算術(shù)邏輯單元(ALU)包括:累加器(ACC)程序狀態(tài)字(PSW)暫存器B寄存器等部件運(yùn)算器的組成2023/11/119MCS-51單片機(jī)硬件結(jié)構(gòu)和原理1.累加器累加器是一個(gè)8位寄存器。在指令系統(tǒng)中,累加器在直接尋址時(shí)的助記符為ACC。除此之外全部用助記符A表示。2.3.1運(yùn)算器

累加器2023/11/120MCS-51單片機(jī)硬件結(jié)構(gòu)和原理算術(shù)/邏輯部件

算術(shù)/邏輯部件ALU是用于對(duì)數(shù)據(jù)進(jìn)行算術(shù)運(yùn)算和邏輯操作的執(zhí)行部件,由加法器和其他邏輯電路(移位電路和判斷電路等)組成。在控制信號(hào)的作用下,完成算術(shù)加、減、乘、除和邏輯與、或、異或等運(yùn)算,以及循環(huán)移位操作、位操作等功能。2.3.1運(yùn)算器2.算術(shù)/邏輯部件2023/11/121MCS-51單片機(jī)硬件結(jié)構(gòu)和原理程序狀態(tài)字寄存器程序狀態(tài)字寄存器PSW是一個(gè)8位寄存器,用來(lái)存放運(yùn)算結(jié)果的一些特征。進(jìn)位標(biāo)志位半進(jìn)位標(biāo)志位用戶自定義標(biāo)志位工作寄存器組選擇位溢出標(biāo)志位奇偶校驗(yàn)標(biāo)志位2.3.1運(yùn)算器3.程序狀態(tài)字寄存器

2023/11/122MCS-51單片機(jī)硬件結(jié)構(gòu)和原理RS1、RS0與片內(nèi)工作寄存器組的對(duì)應(yīng)關(guān)系

2.3.1運(yùn)算器片內(nèi)四組工作寄存器的選擇2023/11/123MCS-51單片機(jī)硬件結(jié)構(gòu)和原理4.B寄存器

在進(jìn)行乘法、除法運(yùn)算時(shí),B寄存器作為ALU的輸入之一,與ACC配合完成運(yùn)算,并存放運(yùn)算結(jié)果。在無(wú)乘除運(yùn)算時(shí),它可作為內(nèi)部RAM的一個(gè)單元。2.3.1運(yùn)算器寄存器2023/11/124MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.3.2控制器定時(shí)控制邏輯指令寄存器數(shù)據(jù)指針(DPTR)程序計(jì)數(shù)器(PC)堆棧指針(SP)地址寄存器地址緩沖器控制器的組成控制器是CPU的大腦中樞,它包括:2023/11/125MCS-51單片機(jī)硬件結(jié)構(gòu)和原理1.程序計(jì)數(shù)器

程序計(jì)數(shù)器(ProgramCounter,PC)用來(lái)存放下一條要執(zhí)行的指令的地址。當(dāng)按照PC所指的地址從存儲(chǔ)器中取出一條指令后,PC會(huì)自動(dòng)加l,即指向下一條指令。2.3.2控制器程序計(jì)數(shù)器2023/11/126MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.堆棧指針

堆棧指針(StackPointer,SP)是指在片內(nèi)RAM的l28B(52子系列為256B)空間中開(kāi)辟的堆棧區(qū)的棧頂?shù)刂?,并隨時(shí)跟蹤棧頂?shù)刂纷兓6褩J前聪冗M(jìn)后出的原則存取數(shù)據(jù)的,開(kāi)機(jī)復(fù)位后,單片機(jī)棧底地址為07H。2.3.2控制器堆棧指針2023/11/127MCS-51單片機(jī)硬件結(jié)構(gòu)和原理3.指令寄存器和指令譯碼器

指令寄存器和指令譯碼器(InstructionRegister,IR)的功能是對(duì)將要執(zhí)行的指令進(jìn)行存儲(chǔ)和譯碼。當(dāng)指令送入指令寄存器后,對(duì)該指令進(jìn)行譯碼,即把指令轉(zhuǎn)變成所需的電平信號(hào),CPU根據(jù)譯碼輸出的電平信號(hào),使定時(shí)控制電路產(chǎn)生執(zhí)行該指令所需的各種控制信號(hào),以便計(jì)算機(jī)能正確地執(zhí)行指令所要求的操作。2.3.2控制器指令寄存與譯碼2023/11/128MCS-51單片機(jī)硬件結(jié)構(gòu)和原理4.數(shù)據(jù)指針

由于8051系列單片機(jī)可以外接64KB的數(shù)據(jù)存儲(chǔ)器和I/O接口電路,故在單片機(jī)內(nèi)設(shè)置了l6位的數(shù)據(jù)指針寄存器(DataPointer,DPTR)。它可以對(duì)64KB的外部數(shù)據(jù)存儲(chǔ)器和I/O進(jìn)行尋址,DPTR可分為高8位數(shù)據(jù)指針寄存器(DPH)和低8位數(shù)據(jù)指針寄存器(DPL),地址分別為83H和82H。2.3.2控制器數(shù)據(jù)指針2023/11/129MCS-51單片機(jī)硬件結(jié)構(gòu)和原理5.布爾(位)處理器

在8051單片機(jī)系統(tǒng)中,與字節(jié)處理器相對(duì)應(yīng),還特別設(shè)置布爾(位)處理器。Cy:進(jìn)位標(biāo)志位位尋址寄存器位尋址的并行I/O口位操作指令系統(tǒng)2.3.2控制器位處理器2023/11/130MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.4存儲(chǔ)器8051在物理結(jié)構(gòu)上有4個(gè)存儲(chǔ)空間:片內(nèi)程序存儲(chǔ)器片外程序存儲(chǔ)器(ROM)片內(nèi)數(shù)據(jù)存儲(chǔ)器片外數(shù)據(jù)存儲(chǔ)器(RAM)從用戶使用的角度上,MSC-51有3個(gè)存儲(chǔ)空間:片內(nèi)外統(tǒng)一編址的64KB程序存儲(chǔ)器空間(用16位地址)256B片內(nèi)數(shù)據(jù)存儲(chǔ)器空間(用8位地址)64KB片外數(shù)據(jù)存儲(chǔ)器地址空間51單片機(jī)存儲(chǔ)器布局2023/11/131MCS-51單片機(jī)硬件結(jié)構(gòu)和原理存儲(chǔ)器結(jié)構(gòu)2.4存儲(chǔ)器2023/11/132MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.4.1程序存儲(chǔ)器

程序存儲(chǔ)器用于存放編好的程序或表格常數(shù)。51子系列片內(nèi)有4KBROM,52子系列片內(nèi)有8KBROM,二者片外地址線均為16位,最多可擴(kuò)展64KBROM,片內(nèi)片外統(tǒng)一編址。若EA端保持低電平,則所有取指令操作均在片外程序存儲(chǔ)器中進(jìn)行,0000H地址在片外。若EA端保持高電平,0000H地址在片內(nèi),所有取指令操作均在片內(nèi)程序存儲(chǔ)器中進(jìn)行。程序存儲(chǔ)器的用途2023/11/133MCS-51單片機(jī)硬件結(jié)構(gòu)和原理程序存儲(chǔ)器

在程序存儲(chǔ)器的開(kāi)始部分,定義了一段具有特殊功能的地址段,用作程序起始和各種中斷的入口。2.4.1程序存儲(chǔ)器程序入口地址2023/11/134MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.4.2數(shù)據(jù)存儲(chǔ)器

數(shù)據(jù)存儲(chǔ)器用于存放中間運(yùn)算結(jié)果、數(shù)據(jù)暫存和緩沖、標(biāo)志位等。

MCS-51系列單片機(jī)的片內(nèi)數(shù)據(jù)存儲(chǔ)器除RAM塊外,還有特殊功能寄存器(SFR)塊。 片內(nèi)數(shù)據(jù)存儲(chǔ)器的容量很小,常需要擴(kuò)展片外數(shù)據(jù)存儲(chǔ)器。MCS-51系列單片機(jī)有一個(gè)數(shù)據(jù)指針寄存器,可用于尋址程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器單元,它有16位,尋址范圍可達(dá)64KB。 數(shù)據(jù)存儲(chǔ)器分為片外數(shù)據(jù)存儲(chǔ)器、片內(nèi)數(shù)據(jù)存儲(chǔ)器、特殊功能存儲(chǔ)器,以下分別加以介紹。數(shù)據(jù)存儲(chǔ)器的用途2023/11/135MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.4.2數(shù)據(jù)存儲(chǔ)器片內(nèi)通用數(shù)據(jù)存儲(chǔ)器有:工作寄存器區(qū)位尋址區(qū)數(shù)據(jù)緩沖區(qū)片內(nèi)數(shù)據(jù)存儲(chǔ)器3個(gè)區(qū)域1.片內(nèi)通用數(shù)據(jù)存儲(chǔ)器2023/11/136MCS-51單片機(jī)硬件結(jié)構(gòu)和原理片內(nèi)數(shù)據(jù)存儲(chǔ)器2.4.2數(shù)據(jù)存儲(chǔ)器工作寄存器區(qū)位尋址區(qū)數(shù)據(jù)緩沖器區(qū)2023/11/137MCS-51單片機(jī)硬件結(jié)構(gòu)和原理(1)工作寄存器區(qū)

工作寄存器也稱為通用寄存器,供用戶編程時(shí)使用,用于臨時(shí)存儲(chǔ)8位數(shù)據(jù)信息。 工作寄存器地址為00H~1FH的32個(gè)單元,并分成4個(gè)工作寄存器組,每個(gè)組有8個(gè)工作寄存器,名稱為R0~R7。工作寄存器和RAM地址的對(duì)應(yīng)關(guān)系如表所示。2.4.2數(shù)據(jù)存儲(chǔ)器工作寄存器區(qū)

每個(gè)工作寄存器組都可被選為CPU的當(dāng)前工作寄存器,通過(guò)改變程序狀態(tài)字寄存器(PSW)中的RS1、RS0兩位來(lái)實(shí)現(xiàn)。2023/11/138MCS-51單片機(jī)硬件結(jié)構(gòu)和原理(2)位尋址區(qū)內(nèi)部RAM中地址為20H~2FH的16個(gè)單元,CPU不僅具有字節(jié)尋址功能,而且還具有位尋址功能。這16個(gè)單元共1282.4.2數(shù)據(jù)存儲(chǔ)器位尋址區(qū)位,每一位都賦予1個(gè)位地址,位地址范圍是00H~7FH。2023/11/139MCS-51單片機(jī)硬件結(jié)構(gòu)和原理(3)數(shù)據(jù)緩沖區(qū)30H~7FH是數(shù)據(jù)緩沖區(qū),即用戶RAM區(qū),共80個(gè)單元。52子系列片內(nèi)RAM有256個(gè)單元,工作寄存器區(qū)和位尋址區(qū)的單元數(shù)與地址都和51子系列的一致,而數(shù)據(jù)緩沖區(qū)有208個(gè)單元,地址范圍是30H~FFH。2.4.2數(shù)據(jù)存儲(chǔ)器數(shù)據(jù)緩沖區(qū)2023/11/140MCS-51單片機(jī)硬件結(jié)構(gòu)和原理(4)堆棧與堆棧指針堆棧是一種執(zhí)行“后進(jìn)先出”算法的數(shù)據(jù)結(jié)構(gòu)。是在內(nèi)存中的一個(gè)存儲(chǔ)區(qū)域,數(shù)據(jù)一個(gè)一個(gè)順序地存入(也就是“壓入—push”)這個(gè)區(qū)域之中。有一個(gè)地址指針(堆棧指針)總指向最后一個(gè)壓入堆棧的數(shù)據(jù)所在的存儲(chǔ)單元,存放這個(gè)地址指針的寄存器就叫做堆棧指示器。開(kāi)始放入數(shù)據(jù)的單元叫做“棧底”。數(shù)據(jù)一個(gè)一個(gè)地存入,這個(gè)過(guò)程叫做“壓?!?。讀取這些數(shù)據(jù)時(shí),按照堆棧指示器中的地址讀取數(shù)據(jù),堆棧指示器中的地址數(shù)自動(dòng)減1。這個(gè)過(guò)程叫做“彈出pop”。如此就實(shí)現(xiàn)了后進(jìn)先出的原則。2.4.2數(shù)據(jù)存儲(chǔ)器堆棧指針2023/11/141MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.特殊功能寄存器概念

特殊功能寄存器(SpecialFunctionRegister,SFR)也稱為專用寄存器,用于控制、管理單片機(jī)內(nèi)部算術(shù)邏輯部件、并行I/O口、串行I/O口、定時(shí)器/計(jì)數(shù)器、中斷系統(tǒng)等功能模塊的工作。使用系統(tǒng)初始化時(shí)針對(duì)使用的功能部件編程設(shè)定。2.4.2數(shù)據(jù)存儲(chǔ)器特殊功能寄存器2023/11/142MCS-51單片機(jī)硬件結(jié)構(gòu)和原理表2-6特殊功能寄存器地址對(duì)照表2.4.2數(shù)據(jù)存儲(chǔ)器特殊功能寄存器2023/11/143MCS-51單片機(jī)硬件結(jié)構(gòu)和原理PSW與ACC(1)程序狀態(tài)字寄存器(PSW)

PSW是8位寄存器,存放程序運(yùn)行狀態(tài)的標(biāo)志,字節(jié)地址為D0H??梢赃M(jìn)行位尋址。(2)累加器(ACC)

ACC是8位寄存器,用于算術(shù)或邏輯操作的輸入和運(yùn)算結(jié)果的輸出。在指令系統(tǒng)中累加器的助記符為A,作為直接地址時(shí)助記符為ACC。2.4.2數(shù)據(jù)存儲(chǔ)器PSW與ACC2023/11/144MCS-51單片機(jī)硬件結(jié)構(gòu)和原理(3)數(shù)據(jù)指針寄存器(DPTR)16位的專用地址指針寄存器??蓪?duì)外部存儲(chǔ)器和I/O口進(jìn)行尋址,也可拆成高字節(jié)DPH和低字節(jié)DPL兩個(gè)獨(dú)立的8位寄存器,在CPU內(nèi)分別占據(jù)83H和82H兩個(gè)地址。當(dāng)對(duì)64KB外部數(shù)據(jù)存儲(chǔ)器尋址時(shí),DPTR可作為間接尋址寄存器使用:從外部數(shù)據(jù)存儲(chǔ)器取數(shù)MOVXA,@DPTR送數(shù)到外部數(shù)據(jù)存儲(chǔ)器MOVX@DPTR,A2.4.2數(shù)據(jù)存儲(chǔ)器DPTR2023/11/145MCS-51單片機(jī)硬件結(jié)構(gòu)和原理(4)B寄存器X*YX/Y

在乘、除法運(yùn)算中用B寄存器暫存數(shù)據(jù)。乘法指令的兩個(gè)操作數(shù)分別取自A和B,結(jié)果再存于B和A中,即A存低字節(jié),B存高字節(jié)。除法指令中被除數(shù)取自A,除數(shù)取自B,結(jié)果商存于A中,余數(shù)存放在B中。在其他指令中,B寄存器可作為RAM中的一個(gè)單元使用。B寄存器的地址為B0H。2.4.2數(shù)據(jù)存儲(chǔ)器B寄存器2023/11/146MCS-51單片機(jī)硬件結(jié)構(gòu)和原理(5)堆棧指針(SP)

堆棧是個(gè)特殊的存儲(chǔ)區(qū),主要功能是暫時(shí)存放數(shù)據(jù)和地址,通常用來(lái)保護(hù)斷點(diǎn)和現(xiàn)場(chǎng)。它的特點(diǎn)是按照先進(jìn)后出的原則存取數(shù)據(jù),這里的進(jìn)與出是指進(jìn)棧與出棧操作。2.4.2數(shù)據(jù)存儲(chǔ)器堆棧指針(SP)與P0~P3鎖存器(6)端口P0~P3特殊功能寄存器P0~P3分別是I/O端口P0~P3的鎖存器。2023/11/147MCS-51單片機(jī)硬件結(jié)構(gòu)和原理(7)定時(shí)器/計(jì)數(shù)器TL0、TH0、TL1、TH1MSC-51單片機(jī)中有兩個(gè)16位的定時(shí)器/計(jì)數(shù)器T0和T1,它們由4個(gè)8位寄存器(TH0、TL0、TH1和TL1)組成。

兩個(gè)16位定時(shí)器/計(jì)數(shù)器是完全獨(dú)立的,可以單獨(dú)對(duì)這4個(gè)寄存器尋址。2.4.2數(shù)據(jù)存儲(chǔ)器定時(shí)器/計(jì)數(shù)器2023/11/148MCS-51單片機(jī)硬件結(jié)構(gòu)和原理(8)串行數(shù)據(jù)緩沖器(SBUF)功能:存放需要發(fā)送和接收的數(shù)據(jù)。組成:由兩個(gè)獨(dú)立的寄存器構(gòu)成,一個(gè)是發(fā)送緩沖器,一個(gè)是接收緩沖器,但寄存器名稱統(tǒng)一為SUBF。使用:發(fā)送指令MOVSUBF,A;使用發(fā)送緩沖器。

接收指令MOVA,SUBF;使用接收緩沖器。2.4.2數(shù)據(jù)存儲(chǔ)器串行數(shù)據(jù)緩沖器2023/11/149MCS-51單片機(jī)硬件結(jié)構(gòu)和原理(9)控制寄存器控制寄存器有5種。中斷優(yōu)先級(jí)控制寄存器(IP)中斷允許控制寄存器(IE)定時(shí)器/計(jì)數(shù)器控制寄存器(TCON)串行口控制寄存器(SCON)電源控制寄存器(PCON)它們將在后續(xù)章節(jié)中詳細(xì)介紹。2.4.2數(shù)據(jù)存儲(chǔ)器控制寄存器2023/11/150MCS-51單片機(jī)硬件結(jié)構(gòu)和原理可位尋址的位地址分布MCS-51可直接位尋址的空間有216位。其中內(nèi)部RAM的20H~2FH這16個(gè)單元具有128個(gè)位地址空間,位地址為00H~7FH;另一部分位地址在特殊功能寄存器中,這些特殊功能寄存器是一些能被8整除的字節(jié)單元,地址在80H~FFH區(qū)間,只用了11個(gè)字節(jié),它們都可進(jìn)行位尋址,共計(jì)88位。如表2-8所示。2.4.2數(shù)據(jù)存儲(chǔ)器可位尋址的位地址分布2023/11/151MCS-51單片機(jī)硬件結(jié)構(gòu)和原理可位尋址的位地址分布2.4.2數(shù)據(jù)存儲(chǔ)器可位尋址的位地址分布2023/11/152MCS-51單片機(jī)硬件結(jié)構(gòu)和原理位操作與字節(jié)操作

盡管位地址和字節(jié)地址有重疊,讀/寫(xiě)位尋址空間時(shí)也采用MOV指令形式,但所有的位操作指令都是以位地址為一個(gè)操作數(shù),以進(jìn)位位(Cy)為另一個(gè)操作數(shù)。例如,讀位地址90H,用指令:MOVC,90H或MOVC,P1.0

寫(xiě)位地址90H,用指令:MOV90H,C或MOVP1.0,C2.4.2數(shù)據(jù)存儲(chǔ)器位操作與字節(jié)操作2023/11/153MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.5并行輸入/輸出(I/O)端口接口的主要功能包括:緩沖與鎖存數(shù)據(jù)、地址譯碼、信息格式轉(zhuǎn)換、傳遞狀態(tài)(外設(shè)狀態(tài))和發(fā)布命令等。I/O接口有:并行接口、串行接口、定時(shí)/計(jì)數(shù)器、A/D、D/A等。根據(jù)外設(shè)的不同情況和要求選擇不同的接口。本節(jié)介紹MCS-51單片機(jī)的并行輸入/輸出接口。2023/11/154MCS-51單片機(jī)硬件結(jié)構(gòu)和原理并行輸入/輸出接口 MCS-51單片機(jī)有P0、P1、P2、P3四個(gè)8位雙向并行I/O口,每個(gè)端口可以按字節(jié)輸入或輸出,也可以按位進(jìn)行輸入或輸出,4個(gè)并行口共有32根端口線,用做位控制十分方便。并行I/O口具有如下特點(diǎn)。2.5并行輸入/輸出(I/O)端口2023/11/155MCS-51單片機(jī)硬件結(jié)構(gòu)和原理并行I/O口特點(diǎn)(1)4個(gè)并行I/O口都是雙向的。P0口為漏極開(kāi)路驅(qū)動(dòng);P1、P2、P3口均具有內(nèi)部上拉電阻驅(qū)動(dòng),它們有時(shí)稱為準(zhǔn)雙向口。(2)32根端口線都可用做輸入或輸出,還可進(jìn)行位操作。(3)當(dāng)并行I/O口作為輸入時(shí),該口的鎖存器必須先寫(xiě)入“1”,這是一個(gè)重要條件。否則,該口不能讀入正確數(shù)據(jù)。2.5并行輸入/輸出(I/O)端口2023/11/156MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.5.1P1口MCS-51單片機(jī)的Pl口只有一種功能,即通用輸入/輸出接口。P1口每位的內(nèi)部結(jié)構(gòu)如圖2-5所示。圖2-5P1口每位的內(nèi)部結(jié)構(gòu)示意圖2023/11/157MCS-51單片機(jī)硬件結(jié)構(gòu)和原理1.輸出方式當(dāng)CPU執(zhí)行寫(xiě)P1口的指令(如MOVPl,#data)時(shí),P1口工作于輸出方式,此時(shí)數(shù)據(jù)data經(jīng)內(nèi)部總線送入鎖存器鎖存。如果某位的數(shù)據(jù)為1,則該位鎖存器輸出端Q=1,而使T截止,從而在引腳P1.x上出現(xiàn)高電平,即輸出數(shù)據(jù)“1”。反之,如果數(shù)據(jù)為0,則Q=0,而使T導(dǎo)通,P1.x上出現(xiàn)低電平,即輸出數(shù)據(jù)“0”。2.5.1P1口P1口工作原理2023/11/158MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.輸入方式

當(dāng)CPU執(zhí)行讀P1口的指令(如MOVA,P1)時(shí),P1口工作于輸入方式。2.5.1P1口P1口工作原理2023/11/159MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.5.2P2口P2口有兩種用途:通用I/O口或高8位地址總線。P2口內(nèi)部結(jié)構(gòu)圖2-6P2口每位的內(nèi)部結(jié)構(gòu)示意圖通用I/O與地址線的選擇可根據(jù)指令由控制信號(hào)完成。2023/11/160MCS-51單片機(jī)硬件結(jié)構(gòu)和原理MOVXA,@Ri或MOVX@Ri,A此時(shí),Ri寄存器提供的是8位地址,由P0口送出,不需要P2口,P2口引腳原有的數(shù)據(jù)在訪問(wèn)片外RAM期間不受影響,故P2口仍可用做通用I/O口。當(dāng)片外RAM容量較大需要由P2口和P0口送出16位地址時(shí),P2口不再用做通用I/O口。P2口用作地址線/通用I/O口2.5.2P2口P2口用作地址線當(dāng)P2口作為準(zhǔn)雙向通用I/O口使用時(shí),其功能與P1口相同,工作方式、負(fù)載能力也相同。P2口用作通用I/O口2023/11/161MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.5.3P3口P3口是雙功能口,默認(rèn)為第一功能(通用I/O),通過(guò)編程可設(shè)定為第二功能。通用I/O口狀態(tài)圖2-7P3口每位的內(nèi)部結(jié)構(gòu)示意圖1.通用I/O口狀態(tài)

P3口用做準(zhǔn)雙向通用I/O口時(shí),其功能與P1口相同。2023/11/162MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.第二功能狀態(tài)2.5.3P3口第二功能狀態(tài)P3口作為第二功能操作時(shí),其鎖存器Q端必須為高電平(可用輸出指令向端口寫(xiě)1,以使Q=1。單片機(jī)復(fù)位時(shí),鎖存器輸出端為高電平),否則無(wú)法輸入或輸出第二功能信號(hào)。P3口第二功能中的輸入信號(hào)經(jīng)三態(tài)門(mén)2輸入,可直接進(jìn)入內(nèi)部總線。P3口第二功能定義如表2-8所示。2023/11/163MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.5.3P3口第二功能狀態(tài)表2-8P3口第二功能2023/11/164MCS-51單片機(jī)硬件結(jié)構(gòu)和原理P3口使用P3口的每一位都可獨(dú)立地定義為第一功能I/O或第二功能使用。P3的第二功能涉及到串行口、外部中斷、定時(shí)器,與特殊功能寄存器有關(guān),它們的結(jié)構(gòu)、功能等在后面章節(jié)中再作進(jìn)一步介紹。2.5.3P3口P3口使用P3口的地址為B0H,對(duì)應(yīng)P3.0~P3.7的位地址為B0H~B7H。2023/11/165MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.5.4P0口地址/數(shù)據(jù)分時(shí)復(fù)用總線通用I/O口P0口的功能圖2-8P0口每位的內(nèi)部結(jié)構(gòu)示意圖P0口有兩種功能P0口內(nèi)部無(wú)上拉電阻,作為I/O口時(shí),必須外接上拉電阻。2023/11/166MCS-51單片機(jī)硬件結(jié)構(gòu)和原理地址/數(shù)據(jù)總線狀態(tài)2.5.4P0口P0口作為地址/數(shù)據(jù)總線的工作原理(輸出)P0口作為輸入端口的工作原理(輸入)P0口作為通用I/O口時(shí)的工作原理圖2-8P0口每位的內(nèi)部結(jié)構(gòu)示意圖2023/11/167MCS-51單片機(jī)硬件結(jié)構(gòu)和原理當(dāng)CPU向端口輸出數(shù)據(jù)時(shí),寫(xiě)脈沖加在鎖存器的時(shí)鐘端CL上。由于輸出驅(qū)動(dòng)級(jí)是漏極開(kāi)路電路(因VT0截止),在作為I/O口使用時(shí)應(yīng)外接10K的上拉電阻。當(dāng)CPU從端口讀數(shù)據(jù)時(shí),端口中兩個(gè)三態(tài)門(mén)用于讀操作。P0口讀/寫(xiě)數(shù)據(jù)2.5.4P0口圖2-8P0口每位的內(nèi)部結(jié)構(gòu)示意圖2023/11/168MCS-51單片機(jī)硬件結(jié)構(gòu)和原理P0口讀-修改-寫(xiě)當(dāng)執(zhí)行“讀-修改-寫(xiě)”指令(即讀端口信息,在片內(nèi)加以運(yùn)算修改后,再輸出到該端口的某些指令如:ANLP0,A指令),即是讀鎖存器Q的數(shù)據(jù)。究竟是讀引腳還是讀鎖存器,CPU內(nèi)部會(huì)自行判斷是發(fā)讀引腳脈沖還是讀鎖存器脈沖,讀者不必在意。2.5.4P0口P0口的讀-修改-寫(xiě)操作2023/11/169MCS-51單片機(jī)硬件結(jié)構(gòu)和原理

當(dāng)作輸入端口使用時(shí),應(yīng)先對(duì)該口寫(xiě)入“1”以使場(chǎng)效應(yīng)管VT1截止,再進(jìn)行讀入操作,以防場(chǎng)效應(yīng)管處于導(dǎo)通狀態(tài)而使引腳箝位到零,引起誤讀。讀引腳時(shí)注意2.5.4P0口P0口用作輸入端時(shí)應(yīng)注意2023/11/170MCS-51單片機(jī)硬件結(jié)構(gòu)和原理4個(gè)并行口使用注意事項(xiàng)(1)如果單片機(jī)內(nèi)部有程序存貯器,不需要擴(kuò)展外部存貯器和I/O接口,單片機(jī)的4個(gè)口均可作為I/O口使用;(2)4個(gè)口在作為輸入口使用時(shí),均應(yīng)先對(duì)其寫(xiě)“1”,以避免誤讀;(3)P0口作為I/O口使用時(shí)應(yīng)外接10K的上拉電阻,其它口則可不必;(4)P2口某幾根口線作地址使用時(shí),剩下的口線不能作為I/O口線使用;(5)P3口的某些口線作第二功能時(shí),剩下的口線可以單獨(dú)作為I/O口線使用。2.5.4P0口P0、P1、P2、P3并行端口使用注意事項(xiàng)2023/11/171MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.5.5并行口的應(yīng)用

并行接口是單片機(jī)用得最多的部分,可直接連接外部設(shè)備(需要注意電平的匹配)。現(xiàn)以最簡(jiǎn)單的外部設(shè)備——開(kāi)關(guān)和發(fā)光二極管為例說(shuō)明并行口的應(yīng)用設(shè)計(jì)。2023/11/172MCS-51單片機(jī)硬件結(jié)構(gòu)和原理I/O端口應(yīng)用設(shè)計(jì)例2-1

設(shè)計(jì)一電路,監(jiān)視某開(kāi)關(guān)(K),用發(fā)光二極管(LED)顯示開(kāi)關(guān)狀態(tài)。如果K閉合,則LED亮;如果K斷開(kāi),則LED熄滅。分析:通過(guò)程序監(jiān)視P1.1端口的狀態(tài)。若:P1.1=1,P1.0=0

若:P1.1=0,P1.0=12.5.5并行口的應(yīng)用2023/11/173MCS-51單片機(jī)硬件結(jié)構(gòu)和原理匯編語(yǔ)言程序代碼如下:

CLRP1.0 ;使LED滅AGA:SETBP1.1 ;先對(duì)P1.1口寫(xiě)入“1”,

;以便能正確讀入P1.1口數(shù)據(jù)JB P1.1,LIG ;判斷P1.1口狀態(tài)(0或1),

;“1”為K斷開(kāi),轉(zhuǎn)LIGSETBP1.0 ;K閉合時(shí),置位P1.0,LED亮SJMPAGA ;循環(huán)執(zhí)行,方便反復(fù)調(diào)整開(kāi)關(guān)

;狀態(tài),觀察執(zhí)行結(jié)果LIG:CLRP1.0 ;K斷開(kāi)時(shí),P1.0清0,LED滅SJMPAGA ;循環(huán)執(zhí)行,2.5.5并行口的應(yīng)用I/O端口應(yīng)用設(shè)計(jì)2023/11/174MCS-51單片機(jī)硬件結(jié)構(gòu)和原理例2-2

在圖2-10所示電路中,P1.4~P1.7接4個(gè)LED管,P1.0~P1.3接4個(gè)開(kāi)關(guān),編程序?qū)㈤_(kāi)關(guān)的狀態(tài)反映到LED上。2.5.5并行口的應(yīng)用I/O端口應(yīng)用設(shè)計(jì)2023/11/175MCS-51單片機(jī)硬件結(jié)構(gòu)和原理ORG 0000HMOV P1,#0FFH ;高四位的LED全滅,低四位輸入線送“1”ABC:MOV A,P1 ;讀P1口引腳開(kāi)關(guān)狀態(tài),并送入ASWAP A ;低四位開(kāi)關(guān)狀態(tài)換到高四位

ANL A,#0F0H ;保留高四位

MOV P1,A ;從P1口輸出,驅(qū)動(dòng)四位LEDORL P1,#0FH ;保持高四位不變,低四位送“1”,

;準(zhǔn)備再讀開(kāi)關(guān)

SJMP ABC ;循環(huán)執(zhí)行,方便反復(fù)調(diào)整開(kāi)關(guān)狀態(tài),

;觀察執(zhí)行結(jié)果上述程序中每次讀取開(kāi)關(guān)狀態(tài)之前,輸入位都先置“1”,保證了開(kāi)關(guān)狀態(tài)的正確讀入。2.5.5并行口的應(yīng)用I/O端口應(yīng)用設(shè)計(jì)匯編語(yǔ)言程序代碼如下:2023/11/176MCS-51單片機(jī)硬件結(jié)構(gòu)和原理sfrP1=0x90;main(){ P1=0xff; /*P1低4位置“1”,高4位燈全滅*/ while(1)

{P1=P1<<4; /*讀入P1引腳狀態(tài),左移四位,將低四位的開(kāi)關(guān)狀態(tài)移至高四位后從P1口輸出,以驅(qū)動(dòng)LED*/ P1=P1|0x0f; /*P1高4位不變,低4位置“1”,準(zhǔn)備下再讀開(kāi)關(guān)狀態(tài)*/

}}2.5.5并行口的應(yīng)用C語(yǔ)言程序代碼如下:I/O端口應(yīng)用設(shè)計(jì)2023/11/177MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.5.5并行口的應(yīng)用I/O端口應(yīng)用設(shè)計(jì)例2-3

用P1.0輸出1kHz和500Hz的音頻信號(hào)驅(qū)動(dòng)揚(yáng)聲器,作為報(bào)警信號(hào),要求1kHz信號(hào)響100ms,500Hz信號(hào)響200ms,交替進(jìn)行。P1.7接一開(kāi)關(guān)進(jìn)行控制,當(dāng)開(kāi)關(guān)合上(高電平)時(shí)發(fā)出報(bào)警信號(hào),當(dāng)開(kāi)關(guān)斷開(kāi)(低電平)時(shí)報(bào)警信號(hào)停止。設(shè)單片機(jī)晶振頻率為12MHz。編程實(shí)現(xiàn)上述功能。2023/11/178MCS-51單片機(jī)硬件結(jié)構(gòu)和原理500Hz信號(hào)周期為2ms,信號(hào)電平為每1ms改變1次。1kHz的信號(hào)周期為1ms,信號(hào)電平每500μs改變1次。編寫(xiě)一個(gè)延時(shí)500μs的子程序,延時(shí)1ms只需調(diào)用2次。用R2控制音響時(shí)間長(zhǎng)短,A作為音響頻率交換控制的標(biāo)志。A=0FFH時(shí)產(chǎn)生500Hz信號(hào),A=00H時(shí)產(chǎn)生1kHz信號(hào)。2.5.5并行口的應(yīng)用I/O端口應(yīng)用設(shè)計(jì)分析:2023/11/179MCS-51單片機(jī)硬件結(jié)構(gòu)和原理匯編語(yǔ)言程序代碼如下:

ORG 0000H CLR A ;A作為1kHz,500Hz轉(zhuǎn)換控制標(biāo)志BEG: JNBP1.7,$;檢測(cè)P1.7的開(kāi)關(guān)狀態(tài),等待開(kāi)關(guān)閉合

MOV R2,#200;R2置音響控制時(shí)間初值DV: CPLP1.0 ;改變P1.0狀態(tài)

CJNE A,#0FFH,N1;A≠0FFH,延時(shí)500μs ACALLD500 ;A=0FFH,延時(shí)1msN1: ACALLD500 DJNZ R2,DV CPL A SJMP BEGD500: MOV R7,#250;延時(shí)500μs子程序

DJNZ R7,$;l執(zhí)行該指令用2μs RET END2.5.5并行口的應(yīng)用匯編程序?qū)崿F(xiàn)2023/11/180MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.6時(shí)鐘電路及時(shí)序單片機(jī)工作是在統(tǒng)一的時(shí)鐘脈沖控制下一拍一拍地進(jìn)行的,這個(gè)脈沖是單片機(jī)控制器中的時(shí)序電路發(fā)出的。MCS-51系列單片機(jī)內(nèi)部有一個(gè)高增益反相放大器,用于構(gòu)成振蕩器,但要形成時(shí)鐘脈沖,外部還需附加電路。MCS-51的時(shí)鐘產(chǎn)生方法有以下兩種。2.6.1時(shí)鐘電路2023/11/181MCS-51單片機(jī)硬件結(jié)構(gòu)和原理內(nèi)部時(shí)鐘方式利用芯片內(nèi)部的振蕩器,然后在引腳XTALl和XTAL2兩端跨接晶體振蕩器(簡(jiǎn)稱晶振),就構(gòu)成了穩(wěn)定的自激振蕩器,發(fā)出的脈沖直接送入內(nèi)部時(shí)鐘電路。外接晶振時(shí),Cl和C2的值通常選擇為30pF左右;Cl、C2對(duì)頻率有微調(diào)作用,晶振或陶瓷諧振器的頻率范圍可在1.2~12MHz之間選擇。2.6.1時(shí)鐘電路1.內(nèi)部時(shí)鐘方式2023/11/182MCS-51單片機(jī)硬件結(jié)構(gòu)和原理外部時(shí)鐘方式此方式是利用外部振蕩脈沖接入XTALl或XTAL2。HMOS和CHMOS單片機(jī)外時(shí)鐘信號(hào)接入方式不同,如表所示。單片機(jī)(HMOS型)外部時(shí)鐘電路如圖所示。2.6.1時(shí)鐘電路2.外部時(shí)鐘方式2023/11/183MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.6.2時(shí)序CPU執(zhí)行指令的一系列動(dòng)作都是在時(shí)序電路控制下進(jìn)行的,由于指令的字節(jié)數(shù)不同,取這些指令所需要的時(shí)間就不同,既使是字節(jié)數(shù)相同的指令,由于執(zhí)行操作有較大差別,不同的指令執(zhí)行時(shí)間也不一定相同,即所需要的節(jié)拍數(shù)不同。為了便于對(duì)CPU時(shí)序進(jìn)行分析,人們按指令的執(zhí)行過(guò)程規(guī)定了幾種周期,即時(shí)鐘周期、狀態(tài)周期、機(jī)器周期和指令周期,也稱為時(shí)序定時(shí)單位。2023/11/184MCS-51單片機(jī)硬件結(jié)構(gòu)和原理時(shí)鐘周期時(shí)鐘周期也稱為振蕩周期,定義為時(shí)鐘脈沖頻率(fosc)的倒數(shù),它是計(jì)算機(jī)中最基本的、最小的時(shí)間單位。在一個(gè)時(shí)鐘周期內(nèi),CPU僅完成一個(gè)最基本的動(dòng)作。為方便描述,振蕩周期用P表示。2.6.2時(shí)序1.時(shí)鐘周期2023/11/185MCS-51單片機(jī)硬件結(jié)構(gòu)和原理狀態(tài)周期時(shí)鐘周期經(jīng)2分頻后成為內(nèi)部的時(shí)鐘信號(hào),用作單片機(jī)內(nèi)部各功能部件按序協(xié)調(diào)工作的控制信號(hào),稱為狀態(tài)周期,用S表示。這樣,一個(gè)狀態(tài)周期就有兩個(gè)時(shí)鐘周期,前半狀態(tài)周期相應(yīng)的時(shí)鐘周期定義為P1,后半狀態(tài)周期相應(yīng)的時(shí)鐘周期定義為P2。2.6.2時(shí)序2.狀態(tài)周期2023/11/186MCS-51單片機(jī)硬件結(jié)構(gòu)和原理機(jī)器周期完成一個(gè)基本操作所需要的時(shí)間稱為機(jī)器周期。MCS-51有固定的機(jī)器周期,規(guī)定一個(gè)機(jī)器周期有6個(gè)狀態(tài),分別表示為S1~S6,而一個(gè)狀態(tài)包含兩個(gè)時(shí)鐘周期,那么一個(gè)機(jī)器周期就有12個(gè)時(shí)鐘周期,可以表示為S1P1,S1P2,…,S6P1,S6P2。一個(gè)機(jī)器周期共包含12個(gè)振蕩脈沖,即機(jī)器周期就是振蕩脈沖的12分頻。顯然,如果使用6MHz的時(shí)鐘頻率,一個(gè)機(jī)器周期就是2μs,而如果使用12MHz的時(shí)鐘頻率,一個(gè)機(jī)器周期就是1μs。2.6.2時(shí)序3.機(jī)器周期2023/11/187MCS-51單片機(jī)硬件結(jié)構(gòu)和原理指令周期指令周期是執(zhí)行一條指令所需要的時(shí)間,一般由若干個(gè)機(jī)器周期組成,指令不同,所需要的機(jī)器周期數(shù)也不同。2.6.2時(shí)序4.指令周期單周期指令雙周期指令4周期指令2023/11/188MCS-51單片機(jī)硬件結(jié)構(gòu)和原理5.MCS-51指令的取指/執(zhí)行時(shí)序ALE信號(hào)是用于鎖存地址的選通信號(hào),由時(shí)鐘頻率6分頻得到的,多數(shù)指令在整個(gè)指令執(zhí)行過(guò)程中ALE信號(hào)是周期信號(hào)。通常,在每個(gè)機(jī)器周期內(nèi)ALE信號(hào)出現(xiàn)兩次,時(shí)刻為S1P2和S4P2,信號(hào)的有效寬度為一個(gè)S狀態(tài)。每出現(xiàn)一次ALE信號(hào),CPU進(jìn)行一次讀指令操作,但并不是每條指令在ALE信號(hào)生效時(shí)都能有效地讀取指令。如果是單周期指令,則在S4P2期間仍有操作,但讀出的字節(jié)被丟棄,且讀后的PC值不加1。如果是雙周期指令,則在S4P2期間讀二字節(jié),在S6P2時(shí)結(jié)束指令。2.6.2時(shí)序2023/11/189MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.6.2時(shí)序51單片機(jī)時(shí)序圖2023/11/190MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.7單片機(jī)的工作方式復(fù)位是單片機(jī)的初始化操作。單片機(jī)系統(tǒng)在上電啟動(dòng)運(yùn)行時(shí),都需要先復(fù)位。其作用是使CPU和系統(tǒng)中其他部件都處于一個(gè)確定的初始狀態(tài),并從這個(gè)狀態(tài)開(kāi)始工作。2.7.1復(fù)位方式復(fù)位的作用2023/11/191MCS-51單片機(jī)硬件結(jié)構(gòu)和原理復(fù)位電路2.7.1復(fù)位方式(1)上電復(fù)位上電復(fù)位利用電容器的充電實(shí)現(xiàn)。在時(shí)鐘電路工作后,在RST端連續(xù)給出2個(gè)機(jī)器周期的高電平就可完成復(fù)位操作。1.復(fù)位電路單片機(jī)的外部復(fù)位電路有上電自動(dòng)復(fù)位和按鍵手動(dòng)復(fù)位兩種。2023/11/192MCS-51單片機(jī)硬件結(jié)構(gòu)和原理上電加按鍵復(fù)位

當(dāng)復(fù)位按鍵按下后,復(fù)位端通過(guò)51Ω的小電阻與+5V電源接通,迅速放電,使RST引腳為高電平;當(dāng)復(fù)位按鍵彈起后,+5V電源通過(guò)2K電阻對(duì)22μF電容重新充電,RST引腳端出現(xiàn)復(fù)位正脈沖。其持續(xù)時(shí)間取決于RC電路的時(shí)間常數(shù)。2.7.1復(fù)位方式(2)上電加按鍵復(fù)位2023/11/193MCS-51單片機(jī)硬件結(jié)構(gòu)和原理復(fù)位狀態(tài)復(fù)位后MCS-51片內(nèi)各特殊功能寄存器的狀態(tài)如表所示,表中“x”為不定數(shù)。2.7.1復(fù)位方式2.復(fù)位狀態(tài)2023/11/194MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.7.2程序執(zhí)行方式MCS-51單片機(jī)的基本工作方式是程序執(zhí)行方式,它分為連續(xù)執(zhí)行工作方式和單步執(zhí)行工作方式。單片機(jī)在復(fù)位后,其PC值為0000H。一般在0000H地址放一條無(wú)條件轉(zhuǎn)移指令(LJMP),以便跳轉(zhuǎn)到用戶程序的入口地址處連續(xù)執(zhí)行用戶程序。1.連續(xù)執(zhí)行工作方式連續(xù)執(zhí)行方式2023/11/195MCS-51單片機(jī)硬件結(jié)構(gòu)和原理單步執(zhí)行方式單步執(zhí)行工作方式是用戶調(diào)試程序的一種工作方式,一次執(zhí)行一條指令。單步執(zhí)行工作方式是利用單片機(jī)的外部中斷功能實(shí)現(xiàn)的。在單片機(jī)開(kāi)發(fā)系統(tǒng)上有單步執(zhí)行鍵,該鍵相當(dāng)于單片機(jī)的外部中斷源。當(dāng)它被按下時(shí)產(chǎn)生一個(gè)負(fù)脈沖,即中斷請(qǐng)求信號(hào)INT0或INT1。MCS-51單片機(jī)在外部中斷信號(hào)的作用下,自動(dòng)執(zhí)行預(yù)先安排在中斷服務(wù)程序中的單步執(zhí)行指令,執(zhí)行完后中斷返回。2.7.2程序執(zhí)行方式2.單步執(zhí)行工作方式2023/11/196MCS-51單片機(jī)硬件結(jié)構(gòu)和原理2.7.3低功耗運(yùn)行方式MCS-51單片機(jī)除具有一般的程序執(zhí)行方式外,還具有兩種低功耗運(yùn)行方式: 待機(jī)(或稱為空閑)方式 掉電(或稱為停機(jī))方式備用電源直接由VCC端輸入。第1種方式可使功耗

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論