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

下載本文檔

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

文檔簡(jiǎn)介

1、單片機(jī)原理-MCS-51的基本結(jié)構(gòu)第2章 MCS51的基本結(jié)構(gòu)2.1 MCS-51單片機(jī)的內(nèi)部基本結(jié)構(gòu) 2.2 MCS-51單片機(jī)的引腳及片外總線(xiàn)結(jié)構(gòu)2.3 MCS-51的存儲(chǔ)器結(jié)構(gòu) 2.4 MCS-51并行IO 2.5 MCS-51單片機(jī)的復(fù)位電路和復(fù)位狀態(tài)2.6 MCS-51單片機(jī)的時(shí)鐘電路和時(shí)序2.7 單片機(jī)最小系統(tǒng) 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)本章內(nèi)容提要 本章主要介紹MCS-51系列單片機(jī)的內(nèi)部結(jié)構(gòu),主要包括單片機(jī)內(nèi)部構(gòu)成,引腳及片外總線(xiàn),存儲(chǔ)器結(jié)構(gòu),并行IO端口,以及單片機(jī)正常工作所需的復(fù)位電路和時(shí)鐘電路,并給出了單片機(jī)的最小系統(tǒng)構(gòu)成。單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.1

2、 MCS-51單片機(jī)的內(nèi)部基本結(jié)構(gòu)2.1.1 MCS-51單片機(jī)的基本組成MCS-51的內(nèi)部基本結(jié)構(gòu)包括以下幾個(gè)部分:1一個(gè)8位微處理器(CPU) 2數(shù)據(jù)存儲(chǔ)器RAM和特殊功能寄存器SFR3內(nèi)部程序存儲(chǔ)器ROM4兩個(gè)定時(shí)/計(jì)數(shù)器5四個(gè)8位可編程的I/O(輸入/輸出)并行端口6一個(gè)串行通信端口7中斷控制系統(tǒng)8內(nèi)部時(shí)鐘電路單片機(jī)原理-MCS-51的基本結(jié)構(gòu)圖2-1 MCS-51單片機(jī)的基本組成 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.1 MCS-51單片機(jī)的內(nèi)部基本結(jié)構(gòu)2.1.2 MCS-51單片機(jī)硬件內(nèi)部結(jié)構(gòu)特點(diǎn) 89X51的中央處理器是由一個(gè)8位的運(yùn)算器、控制邏輯以及若干寄存器等組成的,并且通過(guò)

3、內(nèi)部總線(xiàn)與其他功能部分相聯(lián)接。ALU和運(yùn)算寄存器組成運(yùn)算部分,ALU從暫存器1和暫存器2取得操作數(shù),運(yùn)算后再送到運(yùn)算寄存器、通用寄存器和存儲(chǔ)單元中,并根據(jù)運(yùn)算結(jié)果設(shè)置PSW中的狀態(tài)標(biāo)志。 控制邏輯包括指令寄存器、PC、DPTR以及定時(shí)器和其他控制邏輯。AT89S51的控制邏輯在結(jié)構(gòu)和功能上與傳統(tǒng)的51系統(tǒng)單片機(jī)完全一樣,只是多了一個(gè)DPTR寄存器,這種設(shè)置能夠提高數(shù)據(jù)的運(yùn)算速度。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)圖2-2 MCS-51單片機(jī)內(nèi)部詳細(xì)結(jié)構(gòu)單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.2 MCS-51單片機(jī)的引腳及片外總線(xiàn)結(jié)構(gòu)2.2.1 單片機(jī)的引腳 8051單片機(jī)芯片采用40引腳,雙列

4、直插封裝(DIP)方式,引腳和邏輯符號(hào)如圖2-3所示。圖2-3 MCS-51單片機(jī)的引腳單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.2 MCS-51單片機(jī)的引腳及片外總線(xiàn)結(jié)構(gòu)單片機(jī)的引腳從邏輯上可分為四類(lèi),分別為:1電源引腳VCC(40腳):供電電源+5VVSS(20腳):接地線(xiàn)2時(shí)鐘電路引腳XTAL2(18腳)和XTAL1(19腳) 利用內(nèi)部時(shí)鐘電路時(shí),XTAL1與XTAL2之間接一晶體振蕩器,XTAL1為內(nèi)部放大電路輸入端,XTAL2為輸出端。采用外部時(shí)鐘時(shí),對(duì)于HMOS型單片機(jī),XTAL1接地,XTAL2端接外部輸入時(shí)鐘脈沖。而對(duì)于CHMOS型單片機(jī)XTAL1為驅(qū)動(dòng)端,XTAL2懸空。 單片機(jī)

5、原理-MCS-51的基本結(jié)構(gòu)2.2 MCS-51單片機(jī)的引腳及片外總線(xiàn)結(jié)構(gòu)3控制信號(hào)引腳控制信號(hào)引腳較多,現(xiàn)介紹如下: RST/VPD(9腳):RST是復(fù)位信號(hào)輸入端,高電平有效,此端保持兩個(gè)機(jī)器周期(24個(gè)時(shí)鐘周期)以上的高電平時(shí),就可以完成復(fù)位操作。RST引腳的第二功能是VPD,即備用電源的輸入端。當(dāng)主電源VCC發(fā)生故障降低到低電平規(guī)定值時(shí),將+5V電源自動(dòng)接入RST端為RAM提供備用電源,以保證存儲(chǔ)在RAM中的信息不丟失,從而使復(fù)位后能繼續(xù)正常運(yùn)行。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.2 MCS-51單片機(jī)的引腳及片外總線(xiàn)結(jié)構(gòu) ALE/PROG(30腳):地址鎖存允許信號(hào)端。ALE在

6、每個(gè)機(jī)器周期內(nèi)輸出兩個(gè)脈沖。 在訪問(wèn)外部存儲(chǔ)時(shí),ALE用來(lái)鎖存P0擴(kuò)展地址低8位的地址信號(hào)。在不訪問(wèn)外部存儲(chǔ)器時(shí),ALE也以時(shí)鐘振蕩頻率的1/6的固定速率輸出,因而它又可用作外部定時(shí)或其它需要。如果想確定8051/8031芯片好壞,可用示波器查看ALE端是否有脈沖信號(hào)輸出,如有,則8051/8031基本上是好的。 但要注意,在訪問(wèn)片外數(shù)據(jù)存儲(chǔ)器期間,ALE脈沖會(huì)跳空一個(gè),此時(shí)作為時(shí)鐘輸出就不妥了。 ALE腳的第二功能PROG在對(duì)片內(nèi)帶有4KB EPROM的8751編程寫(xiě)入(固化程序)時(shí),作為編程脈沖輸入端。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.2 MCS-51單片機(jī)的引腳及片外總線(xiàn)結(jié)構(gòu) PS

7、EN(29腳):程序存儲(chǔ)允許輸出信號(hào)端。當(dāng)訪問(wèn)片外程序存儲(chǔ)器時(shí),此腳輸出負(fù)脈沖作為讀選通信號(hào)。當(dāng)從外部程序存儲(chǔ)器讀取指令或常數(shù)期間,每個(gè)機(jī)器周期該信號(hào)兩次有效,以通過(guò)數(shù)據(jù)總線(xiàn)P0口讀回指令或常數(shù)。在訪問(wèn)片外數(shù)據(jù)存儲(chǔ)器期間,PSEN信號(hào)將不出現(xiàn)。 EA/VPP(31腳):EA 訪問(wèn)外部程序存儲(chǔ)器控制信號(hào)。對(duì)8051和8751,它們片內(nèi)有4KB的程序存儲(chǔ)器,當(dāng)EA 為高電平時(shí),分兩種情況。若訪問(wèn)的地址空間在04K范圍內(nèi),CPU訪問(wèn)片內(nèi)程序存儲(chǔ)器。訪問(wèn)的地址超出4K時(shí),CPU將自動(dòng)執(zhí)行外部程序存儲(chǔ)器,即訪問(wèn)外部ROM。當(dāng)EA接低電平時(shí),CPU只訪問(wèn)外部EPROM/ROM,而不管是否有片內(nèi)程序存儲(chǔ)器。

8、對(duì)8031,EA必須接地。 第二功能VPP為對(duì)8751的EPROM的21V編程電源輸入。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.2 MCS-51單片機(jī)的引腳及片外總線(xiàn)結(jié)構(gòu)4輸入/輸出端口P0,P1,P2和P3 P0口(P0.0P0.7,3932腳):是一個(gè)8位漏極開(kāi)路型的雙向I/O口。第二功能是在訪問(wèn)外部存儲(chǔ)器時(shí),分時(shí)提供低8位地址線(xiàn)和8位雙向數(shù)據(jù)總線(xiàn)。在對(duì)8751片內(nèi)EPROM進(jìn)行編程和校驗(yàn)時(shí),P0口用于數(shù)據(jù)的輸入和輸出。 P1口(P1.0P1.7 18腳):P1口是一個(gè)帶內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O端口,一般可作為I/O口。在P1口作為輸入口使用時(shí),應(yīng)先向P1口鎖存器寫(xiě)入全1,此時(shí)P1口

9、引腳由內(nèi)部上拉電阻拉成高電平。 P2口(P2.0P2.7 2128腳): P2口是一個(gè)帶內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O端口。 在訪問(wèn)片外EPROM/RAM時(shí),它輸出高8位地址。 P3口(P3.0P3.7 1017腳):P3口是一個(gè)帶內(nèi)部上拉電阻的8位準(zhǔn)雙向I/O端口,此外P3口的每個(gè)腳還具有第二功能如表2-1所示。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.2 MCS-51單片機(jī)的引腳及片外總線(xiàn)結(jié)構(gòu) 口線(xiàn) 第二功能 P3.0 RXD(串行接收) P3.1TXD(串行發(fā)送) P3.2INT0(外部中斷0輸入,低電平或下降沿有效) P3.3INT1(外部中斷1輸入,低電平或下降沿有效) P3.4T0(

10、定時(shí)器0外部輸入) P3.5T1(定時(shí)器1外部輸入) P3.6WR(外部存儲(chǔ)器寫(xiě)使能信號(hào),低有效) P3.7RD(外部存儲(chǔ)器讀使能信號(hào),低有效) 表2-1 P3口的第二功能單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.2 MCS-51單片機(jī)的引腳及片外總線(xiàn)結(jié)構(gòu)222 單片機(jī)的總線(xiàn)結(jié)構(gòu)微型計(jì)算機(jī)中的總線(xiàn)通常分為:1地址總線(xiàn)(AB) 地址總線(xiàn)寬度為16位,由P0口經(jīng)地址鎖存器提供低8位地址(A0-A7);P2口直接提供高8位地址(A8A15)。地址信號(hào)是由CPU發(fā)出的,故地址總線(xiàn)是單方向的。2數(shù)據(jù)總線(xiàn)(DB) 數(shù)據(jù)總線(xiàn)寬度為8位,用于傳送數(shù)據(jù)和指令,由P0口提供。3控制總線(xiàn)(CB) 控制總線(xiàn)隨時(shí)掌握各種部

11、件的狀態(tài),并根據(jù)需要向有關(guān)部件發(fā)出命令。單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.2 MCS-51單片機(jī)的引腳及片外總線(xiàn)結(jié)構(gòu)圖2-4 MCS-51單片機(jī)的外部總線(xiàn)單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu) MCS51單片機(jī)的存儲(chǔ)器采用的是哈佛(Harvard)結(jié)構(gòu),即程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開(kāi)編址,在空間上是各自獨(dú)立的,兩種存儲(chǔ)器有自己的尋址方式和尋址空間。 MCS51的存儲(chǔ)器空間可以劃分為以下4種,分別是: 程序存儲(chǔ)器; 內(nèi)部數(shù)據(jù)存儲(chǔ)器; 內(nèi)部特殊功能寄存器; 外部數(shù)據(jù)存儲(chǔ)器;單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu)圖2-5 MCS-51單片機(jī)的存儲(chǔ)

12、器結(jié)構(gòu) 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu)231 程序存儲(chǔ)器 程序存儲(chǔ)器用來(lái)存放已編好的程序和表格常數(shù),它由只讀存儲(chǔ)器ROM或EPROM組成。 MCS-51單片機(jī)的程序計(jì)數(shù)器為16位,因此,MCS51單片機(jī)具有64K字節(jié)的程序存儲(chǔ)器空間。程序存儲(chǔ)器可以分為片內(nèi)程序存儲(chǔ)器和片外程序存儲(chǔ)器。片內(nèi)程序存儲(chǔ)器位于整個(gè)程序存儲(chǔ)器空間的最低端。 對(duì)于8031單片機(jī),由于其內(nèi)部沒(méi)有程序存儲(chǔ)器,必須在外部擴(kuò)展程序存儲(chǔ)器芯片才能構(gòu)成應(yīng)用系統(tǒng);對(duì)于8051或8751單片機(jī),其內(nèi)部有4K字節(jié)的程序存儲(chǔ)器,地址為0000H0FFFH;對(duì)8052或8752單片機(jī),其內(nèi)部有8K字節(jié)程序存儲(chǔ)器

13、。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu) 圖2-6 程序存儲(chǔ)器空間編址(a)51系統(tǒng)單片機(jī) (b)52系列單片機(jī)單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu) 由于程序存儲(chǔ)器分為片內(nèi)程序存儲(chǔ)器和片外程序存儲(chǔ)器,因此對(duì)片內(nèi)和片外程序存儲(chǔ)器的訪問(wèn)就需要用EA引腳上的電平來(lái)確定。 EA引腳接高電平,程序?qū)钠瑑?nèi)程序存儲(chǔ)器開(kāi)始執(zhí)行,當(dāng)PC值超出了片內(nèi)ROM的容量時(shí)將自動(dòng)轉(zhuǎn)向片外程序存儲(chǔ)器空間執(zhí)行。 EA引腳接低電平時(shí),將強(qiáng)迫單片機(jī)執(zhí)行外部程序存儲(chǔ)器中的程序。 對(duì)于擁有片內(nèi)程序存儲(chǔ)器的51系列和52系列單片機(jī)來(lái)說(shuō)應(yīng)該將EA接高電平,使單片機(jī)從片內(nèi)程序存儲(chǔ)器,

14、也就是程序存儲(chǔ)器的低空間開(kāi)始執(zhí)行。單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu)中斷入口地址:0000H:?jiǎn)纹瑱C(jī)復(fù)位后,PC0000H,程序從0000H開(kāi)始執(zhí)行指令,故系統(tǒng)必須從0000H單元開(kāi)始取指令,執(zhí)行程序。0003H:外部中斷0入口地址。000BH:定時(shí)器0中斷入口地址。 0013H:外部中斷1入口地址。001BH:定時(shí)器1中斷入口地址。0023H:串行口中斷入口地址。 在系統(tǒng)中斷響應(yīng)之后,將自動(dòng)轉(zhuǎn)到各中斷入口地址處執(zhí)行程序,而中斷服務(wù)程序一般無(wú)法存放于幾個(gè)單元之內(nèi),因此在中斷入口地址處往往存放一條無(wú)條件轉(zhuǎn)移指令進(jìn)行跳轉(zhuǎn),以便執(zhí)行中斷服務(wù)程序。 單片機(jī)原理-MCS-5

15、1的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu)232 內(nèi)部數(shù)據(jù)存儲(chǔ)器圖2-7 MCS-51單片機(jī)內(nèi)部數(shù)據(jù)存儲(chǔ)器單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu)1工作寄存器區(qū)2位尋址區(qū)3數(shù)據(jù)緩沖區(qū)1工作寄存器區(qū)PSW.4(RS1) PSW.3(RS0) 當(dāng)前使用的工作寄存器組R0R7 000組(00H07H) 011組(08H0FH) 102組(10H17H) 113組(18H1FH) 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu)2位尋址區(qū):20H2FH ,位地址范圍:00H7FH。 表2-3 位尋址區(qū)單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)

16、構(gòu)3數(shù)據(jù)緩沖區(qū): 30H7FH是數(shù)據(jù)緩沖區(qū),也即用戶(hù)RAM區(qū),共80個(gè)單元。 數(shù)據(jù)緩沖區(qū)除了用作數(shù)據(jù)暫存外,還用作堆棧區(qū)。堆棧用于子程序調(diào)用和中斷發(fā)生時(shí)的返回地址和現(xiàn)場(chǎng)參數(shù)的保護(hù)。 MCS51的堆棧是向上增長(zhǎng)型,即堆棧由低位地址向高位地址增長(zhǎng),每當(dāng)壓入一個(gè)字節(jié)數(shù)據(jù),堆棧指針先加1,然后壓入數(shù)據(jù)。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu)圖2-8 堆棧及堆棧指針單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu)233 內(nèi)部特殊功能寄存器 特殊功能寄存器(SFR,即Special Function Registers),又稱(chēng)為專(zhuān)用寄存器,專(zhuān)用于控制、管理片內(nèi)算

17、術(shù)邏輯部件、并行I/O口、串行I/O口、定時(shí)器/計(jì)數(shù)器、中斷系統(tǒng)等功能模塊的工作。 用戶(hù)在編程時(shí)可以置數(shù)設(shè)定,卻不能自由移作它用。在51子系列單片機(jī)中,各專(zhuān)用寄存器(PC例外)與片內(nèi)RAM統(tǒng)一編址,且作為直接尋址字節(jié),可直接尋址。除PC外,51子系列有18個(gè)專(zhuān)用寄存器,其中3個(gè)為雙字節(jié)寄存器,共占用21個(gè)字節(jié)。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu)表2-4 MCS51系列特殊功能寄存器單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu) SFR中有11個(gè)專(zhuān)用寄存器可以位尋址,它們字節(jié)地址的低半字節(jié)都為0H或8H(即可位尋址的特殊功能寄存器字節(jié)地址具有能被

18、8整除的特征),共有可尋址位118-5 (未定義)=83位。 21個(gè)特殊功能寄存器的名稱(chēng)及主要功能介紹如下 :A累加器,自帶有全零標(biāo)志Z,A=0則Z=1;A0則Z=0。該標(biāo)志常用于程序分支轉(zhuǎn)移的判斷條件。B寄存器,常用于乘除法運(yùn)算。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)Cy進(jìn)(借)位標(biāo)志,其主要作用是保存算術(shù)運(yùn)算的進(jìn)或借位,并在進(jìn)行位操作時(shí)做累加器。 在執(zhí)行某些算術(shù)和邏輯指令時(shí),可以被硬件或軟件置位或清零。在算術(shù)運(yùn)算中它可作為進(jìn)位標(biāo)志,在位運(yùn)算中,它作累加器使用,在位傳送、位與和位或等位操作中,都要使用進(jìn)位標(biāo)志位。23 MCS-51的存儲(chǔ)器結(jié)構(gòu)PSW程序狀態(tài)字。主要起著標(biāo)志寄存器的作用。位地址位

19、名稱(chēng)圖2-9 PSW各位定義AC輔助進(jìn)位標(biāo)志,當(dāng)進(jìn)行以A為目的的運(yùn)算時(shí),運(yùn)算結(jié)果從D3位產(chǎn)生進(jìn)位或借位時(shí)AC=1,另外可用于BCD碼調(diào)整。 進(jìn)行加法或減法操作時(shí),當(dāng)發(fā)生低四位向高四位進(jìn)位或借位時(shí),AC由硬件置位,否則AC位被置0。在進(jìn)行十進(jìn)制調(diào)整指令時(shí),將借助AC狀態(tài)進(jìn)行判斷。F0用戶(hù)標(biāo)志,是用戶(hù)可以使用的位變量,可以隨PSW被保存。 該位為用戶(hù)定義的狀態(tài)標(biāo)記,用戶(hù)根據(jù)需要用軟件對(duì)其置位或清零,也可以用軟件測(cè)試F0來(lái)控制程序的跳轉(zhuǎn)。RS1,RS0寄存器組選擇 OV溢出標(biāo)志位,在有符號(hào)數(shù)運(yùn)算結(jié)果超出允許范圍OV=1,否則OV=0。 當(dāng)執(zhí)行算術(shù)指令時(shí),由硬件置位或清零來(lái)指示溢出狀態(tài)。在帶符號(hào)的加減

20、運(yùn)算中,OV1表示加減運(yùn)算結(jié)果超出了累加器A所能表示的符號(hào)數(shù)有效范圍(128127),即運(yùn)算結(jié)果是錯(cuò)誤的,反之,OV0表示運(yùn)算正確,即無(wú)溢出產(chǎn)生。 無(wú)符號(hào)數(shù)乘法指令MUL的執(zhí)行結(jié)果也會(huì)影響溢出標(biāo)志,若置于累加器A和寄存器B的兩個(gè)數(shù)的乘積超過(guò)了255,則OV1,反之OV0。由于乘積的高8位存放于B中,低8位存放于A中,OV0則意味著只要從A中取得乘積即可,否則要從B和A寄存器對(duì)中取得乘積結(jié)果。 在除法運(yùn)算中,DIV指令也會(huì)影響溢出標(biāo)志,當(dāng)除數(shù)為0時(shí),OV1,否則OV0。 P奇偶標(biāo)志位,主要作用是在每個(gè)機(jī)器周期根據(jù)累加器A中的內(nèi)容的奇偶性由硬件置/復(fù)位,當(dāng)A中1的個(gè)數(shù)為奇P=1,否則為P=0。每個(gè)

21、指令周期由硬件來(lái)置位或清零用以表示累加器A中1的個(gè)數(shù)的奇偶性,若累加器中1的個(gè)數(shù)為奇數(shù)則P1,否則P0。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu)SP堆棧指針,SP為8位寄存器,指示棧頂位置。當(dāng)進(jìn)行進(jìn)棧操作時(shí)先SP+1,再壓棧;當(dāng)進(jìn)行出棧操作時(shí),先出棧,再SP-1。DPTR數(shù)據(jù)指針寄存器,DPTR是16位寄存器,可以尋址64K地址空間。 數(shù)據(jù)指針DPTR為一個(gè)16位的專(zhuān)用寄存器,其高8位用DPH表示,其低8位用DPL表示,它即既可以作為一個(gè)16位的寄存器來(lái)使用,也可作為兩個(gè)8位的的寄存器DPH和DPL使用。DPTR在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)既可用來(lái)存放16位地址,也可作地址

22、指針使用。如MOVX DPTR,A。單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu)PC程序計(jì)數(shù)器(16位),PC不屬于SFR,但和SFR有聯(lián)系,主要用于存放下一條要執(zhí)行的指令地址。 P0P3I/O端口。P0P3為四個(gè)8位的特殊功能寄存器,分別是四個(gè)并行I/O端口的鎖存器。通過(guò)對(duì)該寄存器的讀/寫(xiě),可實(shí)現(xiàn)從相應(yīng)I/O端口的輸入/輸出。例如:指令 MOV P1,A實(shí)現(xiàn)了把A累加器中的內(nèi)容從P1端口輸出的操作。指令MOV A,P3實(shí)現(xiàn)了把P3端口線(xiàn)上的信息輸入到A中的操作。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu)IP中斷優(yōu)先級(jí)控制寄存器。IE中斷允許控制寄存

23、器。 TMOD定時(shí)器/計(jì)數(shù)器方式控制寄存器。TCON定時(shí)器/計(jì)數(shù)器控制寄存器。TH0,TL0定時(shí)器/計(jì)數(shù)器0。TH1,TH1定時(shí)器/計(jì)數(shù)器1。SCON串行端口控制寄存器。SBUF串行數(shù)據(jù)緩沖器。PCON電源控制寄存器。 在52子系列中,高128字節(jié)RAM和SFR的地址是重疊的,究竟訪問(wèn)哪一塊可通過(guò)不同的尋址方式加以區(qū)分,訪問(wèn)高128字節(jié)RAM采用寄存器間址,訪問(wèn)SFR則只能采用直接尋址,訪問(wèn)低128字節(jié)RAM時(shí),兩種尋址均可采用。尋址方式見(jiàn)第三章。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)AT89S51單片機(jī)在8051的基礎(chǔ)上又增加了5個(gè)字節(jié),共26個(gè)寄存器。新增加的四個(gè)寄存器(5個(gè)字節(jié))如下所示。

24、 23 MCS-51的存儲(chǔ)器結(jié)構(gòu)DPL1,DPH1第二個(gè)DPTR寄存器的高位和低位寄存器,地址84H,85H;AUXR輔助寄存器,地址8EH,其中用到了3位。具體如圖2-10所示。圖2-10 AUXR位結(jié)構(gòu)DISALE:ALE輸出使能。當(dāng)此位0時(shí),ALE管腳以51常規(guī)模式輸出1/6系統(tǒng)機(jī)器周期;當(dāng)此位1時(shí),ALE管腳只有當(dāng)程序執(zhí)行指令MOVX/MOVC時(shí)才輸出信號(hào)。DISRTO:RESET輸出使能。當(dāng)此位0時(shí),且看門(mén)狗定時(shí)時(shí)間到,RESET(9腳)引腳輸出高電平;當(dāng)此位1時(shí),RESET(9腳)引腳只是輸入。WDIDLE: IDLE模式時(shí)使能看門(mén)狗。當(dāng)此位0時(shí),看門(mén)狗在IDLE模式也計(jì)數(shù);當(dāng)此位

25、1時(shí),看門(mén)狗在IDLE模式停止計(jì)數(shù)。單片機(jī)原理-MCS-51的基本結(jié)構(gòu)23 MCS-51的存儲(chǔ)器結(jié)構(gòu)AUXR1-輔助寄存器1,地址0A2H。只用到了D0位DPS。DPS為DPTR選擇位,當(dāng)此位0時(shí),選擇DPTR0;當(dāng)此位1時(shí),選擇DPTR1。WDTRST看門(mén)狗復(fù)位寄存器,地址0A6H。是一個(gè)只寫(xiě)寄存器,為了避免看門(mén)狗溢出,用戶(hù)必須對(duì)此寄存器寫(xiě)01EH和0E1H??撮T(mén)狗寄存器是一個(gè)14位寄存器,當(dāng)看門(mén)狗被使能,看門(mén)狗寄存器每個(gè)機(jī)器周期增1。這也意味著用戶(hù)必須在3FFFH(16383)個(gè)機(jī)器周期內(nèi)復(fù)位看門(mén)狗,以避免看門(mén)狗溢出。單片機(jī)原理-MCS-51的基本結(jié)構(gòu)234 外部數(shù)據(jù)存儲(chǔ)器23 MCS-5

26、1的存儲(chǔ)器結(jié)構(gòu) MCS-51單片機(jī)系統(tǒng)的地址總線(xiàn)為16位寬,所以外部數(shù)據(jù)存儲(chǔ)器可擴(kuò)展64KB。 外部數(shù)據(jù)存儲(chǔ)區(qū)中,RAM存儲(chǔ)單元與MCS-51外部擴(kuò)展的I/O端口統(tǒng)一編址。 外部數(shù)據(jù)存儲(chǔ)器和內(nèi)部數(shù)據(jù)存儲(chǔ)器的訪問(wèn)指令不同。當(dāng)單片機(jī)外部同時(shí)擴(kuò)展有程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器時(shí),單片機(jī)根據(jù)時(shí)序的控制區(qū)分訪問(wèn)兩種存儲(chǔ)器:當(dāng)讀外部程序存儲(chǔ)器時(shí),讀信號(hào)由引腳PSEN提供;當(dāng)進(jìn)行外部數(shù)據(jù)存儲(chǔ)器的讀寫(xiě)操作時(shí),由引腳RD和WR選通讀寫(xiě)信號(hào)。兩種不同的尋址各有其獨(dú)立的指令和尋址方式。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.4 MCS-51并行IO端口 MCS51系列單片機(jī)具有四個(gè)并行IO端口P0,P1,P2,P3,各具

27、有不同的結(jié)構(gòu)和功能。端口的每一位均由鎖存器、輸出驅(qū)動(dòng)器和輸入緩沖器組成。P0P3的端口寄存器也屬于特殊功能寄存器,除了可以按字節(jié)尋址外,還可以按位尋址。單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.4 MCS-51并行IO端口241 P0端口 P0端口的字節(jié)地址為80H,位地址為80H87H,各位口線(xiàn)具有完全相同但又相互獨(dú)立的邏輯電路。具有地址/數(shù)據(jù)分時(shí)復(fù)用功能及通用I/O接口功能。 圖2-11 P0端口一位結(jié)構(gòu)DCLQP0.X鎖存器MUXP0.X引腳讀鎖存器內(nèi)部總線(xiàn)寫(xiě)鎖存器讀引腳地址/數(shù)據(jù)控制VccT1T2鎖存器起輸出鎖存作用,8個(gè)鎖存器構(gòu)成了特殊功能寄存器P0;場(chǎng)效應(yīng)管(FET)T1、T2組成輸出

28、驅(qū)動(dòng)器,以增大帶負(fù)載能力;三態(tài)門(mén)1是引腳輸入緩沖器;三態(tài)門(mén)2用于讀鎖存器端口;與門(mén)3、反相器4及模擬轉(zhuǎn)換開(kāi)關(guān)構(gòu)成了輸出控制電路。 地址/數(shù)據(jù)分時(shí)復(fù)用功能從P0口輸出地址或數(shù)據(jù) 時(shí):控制信號(hào)應(yīng)為高電平1,使轉(zhuǎn)換開(kāi)關(guān)MUX把反相器4的輸出端與T2接通,同時(shí)把與門(mén)3打開(kāi)。當(dāng)?shù)刂坊驍?shù)據(jù)為1時(shí),經(jīng)反相器4使T2截止,而經(jīng)與門(mén)3使T1導(dǎo)通,P0.x引腳上出現(xiàn)相應(yīng)的高電平1; 當(dāng)?shù)刂坊驍?shù)據(jù)為0時(shí),經(jīng)反相器4使T2導(dǎo)通而T1截止,引腳上出現(xiàn)相應(yīng)的低電平0。這樣就將地址/數(shù)據(jù)的信號(hào)輸出。當(dāng)輸入數(shù)據(jù)時(shí),數(shù)據(jù)信號(hào)直接從引腳通過(guò)輸入緩沖器進(jìn)入內(nèi)部總線(xiàn)。通用I/O接口功能當(dāng)P0口作為通用I/O口使用,在CPU向端口輸出

29、數(shù)據(jù)時(shí),對(duì)應(yīng)的控制信號(hào)為0,轉(zhuǎn)換開(kāi)關(guān)把輸出級(jí)與鎖存器Q端接通,同時(shí)因與門(mén)3輸出為0使T1截止,此時(shí),輸出級(jí)是漏極開(kāi)路電路。當(dāng)寫(xiě)脈沖加在鎖存器時(shí)鐘端CL上時(shí),與內(nèi)部總線(xiàn)相連的D端數(shù)據(jù)取反后出現(xiàn)在Q端,又經(jīng)輸出T2反相,在P0引腳上出現(xiàn)的數(shù)據(jù)正好是內(nèi)部總線(xiàn)的數(shù)據(jù)。當(dāng)要從P0口輸入數(shù)據(jù)時(shí),引腳信息仍經(jīng)輸入緩沖器進(jìn)入內(nèi)部總線(xiàn)。 一些端口操作指令在執(zhí)行過(guò)程分成讀-修改-寫(xiě)三步,先將P0口的數(shù)據(jù)讀入CPU,在ALU中進(jìn)行運(yùn)算,運(yùn)算結(jié)果再送回P0。執(zhí)行讀-修改-寫(xiě)類(lèi)指令時(shí),CPU是通過(guò)三態(tài)門(mén) 2讀回鎖存器Q端的數(shù)據(jù)來(lái)代表引腳狀態(tài)的。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.4 MCS-51并行IO端口當(dāng)P0口

30、作為通用IO時(shí)需要注意:(1) 在輸出數(shù)據(jù)時(shí),由于T1截止,輸出級(jí)是漏極開(kāi)路電路,要使1信號(hào)正常輸出,必須外接上拉電阻。(2) P0口作為通用I/O口使用時(shí),是準(zhǔn)雙向口。 DCLQP0.X鎖存器MUXP0.X引腳讀鎖存器內(nèi)部總線(xiàn)寫(xiě)鎖存器讀引腳地址/數(shù)據(jù)控制VccT1T2在輸入數(shù)據(jù)時(shí),應(yīng)先把口置1(寫(xiě)1),此時(shí)鎖存器的Q端為0,使輸出級(jí)的兩個(gè)場(chǎng)效應(yīng)管T1、T2均截止,引腳處于懸浮狀態(tài),才可作高阻輸入。因?yàn)?,從P0口引腳輸入數(shù)據(jù)時(shí),T1一直處于截止?fàn)顟B(tài),引腳上的外部信號(hào)既加在三態(tài)緩沖器1的輸入端,又加在T2的漏極。假定在此之前曾輸出鎖存過(guò)數(shù)據(jù)0,則T2是導(dǎo)通的,這樣引腳上的電位就始終被箝位在低電平

31、,使輸入高電平無(wú)法讀入。因此,在輸入數(shù)據(jù)時(shí),應(yīng)人為地先向口寫(xiě)1,使T1、T2均截止,方可高阻輸入。 綜上所述,P0口在有外部擴(kuò)展存儲(chǔ)器時(shí)被作為地址/數(shù)據(jù)總線(xiàn)口,此時(shí)是一個(gè)真正的雙向口;在沒(méi)有外部擴(kuò)展存儲(chǔ)器時(shí),P0口也可作為通用的I/O接口,但此時(shí)只是一個(gè)準(zhǔn)雙向口。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)242 P1端口2.4 MCS-51并行IO端口P1端口的字節(jié)地址為90H,位地址為90H97H。圖2-12 P1端口一位結(jié)構(gòu)P1口輸出驅(qū)動(dòng)部分由場(chǎng)效應(yīng)管T與內(nèi)部上拉電阻組成。當(dāng)其某位輸出高電平時(shí),可以提供拉電流負(fù)載,不必像P0口那樣需要外接上拉電阻。并且輸出的信息僅來(lái)自?xún)?nèi)部總線(xiàn),由內(nèi)部總線(xiàn)輸出的數(shù)

32、據(jù)經(jīng)鎖存器反相后,鎖存在端口線(xiàn)上,所以P1口是具有輸出鎖存的靜態(tài)口。 要正確地從引腳上讀入外部信息,必須先使場(chǎng)效應(yīng)管截止,以便由外部輸入的信息確定引腳的狀態(tài)。所以,P1口在作引腳讀入前,必須先對(duì)相應(yīng)端口寫(xiě)入1。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.4 MCS-51并行IO端口 對(duì)于52子系列單片機(jī)P1口的P1.0與P1.1除作為通用I/O接口線(xiàn)外,還具有第二功能,即P1.0可作為定時(shí)器/計(jì)數(shù)器2的外部計(jì)數(shù)脈沖輸入端T2,P1.1可作為定時(shí)器/計(jì)數(shù)器2的外部控制輸入端T2EX。 對(duì)于AT89S51來(lái)說(shuō),由于提供了ISP功能,因此P1.5、P1.6、P1.7也具有第二功能,用于實(shí)現(xiàn)ISP。管腳第

33、二功能P1.5MOSIP1.6MISOP1.7SCK表2-5 ISP管腳單片機(jī)原理-MCS-51的基本結(jié)構(gòu)243 P2端口2.4 MCS-51并行IO端口P2端口的字節(jié)地址是A0H,位地址為A0HA7H。 DCLQP0.X鎖存器MUXP2.X引腳寫(xiě)鎖存器地址控制VccT內(nèi)部上拉電阻圖2-13 P2端口一位結(jié)構(gòu)P2端口在片內(nèi)既有上拉電阻,又有切換開(kāi)關(guān)MUX,具有這樣結(jié)構(gòu)主要是因?yàn)镻2端口除了可以作為準(zhǔn)雙向通用IO外還用作輸出地址總線(xiàn)的高8位,所以P2端口在功能上兼有P0端口和P1端口的特點(diǎn)。 當(dāng)作為準(zhǔn)雙向通用I/O口使用時(shí),控制信號(hào)使轉(zhuǎn)換開(kāi)關(guān)接向左側(cè),鎖存器Q端經(jīng)反相器接T,其工作原理與P1相同

34、,也具有輸入、輸出、端口操作三種工作方式,負(fù)載能力也與P1相同。 當(dāng)作為外部擴(kuò)展存儲(chǔ)器的高8位地址總線(xiàn)使用時(shí),控制信號(hào)使轉(zhuǎn)換開(kāi)關(guān)接向右側(cè),由程序計(jì)數(shù)器PC來(lái)的高8位地址PCH,或數(shù)據(jù)指針DPTR來(lái)的高8位地址DPH經(jīng)反相器和T反相后原樣呈現(xiàn)在P2口的引腳上,輸出高8位地址A8A15。在上述情況下,端口鎖存器的內(nèi)容不受影響,所以,取指或訪問(wèn)外部存儲(chǔ)器結(jié)束后,由于轉(zhuǎn)換開(kāi)關(guān)又接至左側(cè),使輸出驅(qū)動(dòng)器與鎖存器Q端相連,引腳上將恢復(fù)原來(lái)的數(shù)據(jù)。因此P2端口是動(dòng)態(tài)的IO端口,輸出數(shù)據(jù)雖然被鎖存,但不是穩(wěn)定地出現(xiàn)在端口線(xiàn)上。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.4 MCS-51并行IO端口244 P3端口P

35、3端口的字節(jié)地址為B0H,位地址為B0HB7H。 讀 鎖 存 器內(nèi) 部 總 線(xiàn)讀 引 腳DCLQP1.X鎖 存 器寫(xiě) 鎖 存 器P3.X引 腳VccT第 二 輸 出 功 能內(nèi) 部 上 拉電 阻第 二 輸 入 功 能圖2-14 P3端口一位結(jié)構(gòu)P3口為雙功能口,當(dāng)P3口作為通用I/O口使用時(shí),它為靜態(tài)準(zhǔn)雙向口,且每位都可定義為輸入或輸出口,其工作原理同P1口類(lèi)似。 在這種情況下,第二輸出功能線(xiàn)為1,內(nèi)部總線(xiàn)信號(hào)經(jīng)鎖存器和場(chǎng)效應(yīng)管輸出,輸入還是通過(guò)緩沖器讀入引腳信號(hào)。 當(dāng)處于第二功能時(shí),鎖存器輸出1,通過(guò)第二輸出功能線(xiàn)輸出特定的第二功能信號(hào),在輸入方面,既可以通過(guò)緩沖器讀入引腳信號(hào),也可以通過(guò)第二

36、輸入功能讀入片內(nèi)的特定第二功能信號(hào)。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.4 MCS-51并行IO端口245 P0P3端口功能總結(jié)(1)P0P3口都是并行IO口,都可用于數(shù)據(jù)的輸入和輸出,但P0口和P2口除了可進(jìn)行數(shù)據(jù)的輸入/輸出外,通常用來(lái)實(shí)現(xiàn)系統(tǒng)的數(shù)據(jù)總線(xiàn)和地址總線(xiàn),所以在電路中有一個(gè)多路轉(zhuǎn)換開(kāi)關(guān)MUX,以便進(jìn)行兩種功能的轉(zhuǎn)換。而P1口和P3口沒(méi)有數(shù)據(jù)總線(xiàn)和地址總線(xiàn)的功能,因此在電路中沒(méi)有多路轉(zhuǎn)換開(kāi)關(guān)MUX。(2)在四個(gè)端口中,只有P0口是一個(gè)真正的雙向口,P1P3口都是準(zhǔn)雙向口。(3)P3口的口線(xiàn)具有第二功能,為系統(tǒng)提供一些控制信號(hào)。因此在P3口電路增加了第二功能控制邏輯。單片機(jī)原理-

37、MCS-51的基本結(jié)構(gòu)25 單片機(jī)的復(fù)位電路和復(fù)位狀態(tài) 當(dāng)MCS51系統(tǒng)單片機(jī)的復(fù)位引腳RST上出現(xiàn)2個(gè)機(jī)器周期以上的高電平時(shí),單片機(jī)就執(zhí)行復(fù)位操作。復(fù)位操作使單片機(jī)進(jìn)入初始化狀態(tài),PC初始化為0000H,使MCS51單片機(jī)從0000H開(kāi)始執(zhí)行程序。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)25 單片機(jī)的復(fù)位電路和復(fù)位狀態(tài)251 單片機(jī)的復(fù)位電路805187518031R RS ST TCRR1R25V圖2-15 單片機(jī)上電復(fù)位和手動(dòng)復(fù)位電路在通電瞬間,由于RC的充電過(guò)程,在 RST端出現(xiàn)一定寬度的正脈沖,只要該正脈沖保持10ms以上,就能使單片機(jī)自動(dòng)復(fù)位,在6MHz時(shí)鐘時(shí),通常CR取22F,R1取

38、200,R2取1K,這時(shí)能可靠的上電復(fù)位和手動(dòng)復(fù)位。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)25 單片機(jī)的復(fù)位電路和復(fù)位狀態(tài)用專(zhuān)業(yè)的集成復(fù)位芯片來(lái)實(shí)現(xiàn)可靠復(fù)位 :圖2-16 集成復(fù)位芯片的復(fù)位電路單片機(jī)原理-MCS-51的基本結(jié)構(gòu)25 單片機(jī)的復(fù)位電路和復(fù)位狀態(tài)252 單片機(jī)的復(fù)位狀態(tài) 52單片機(jī)在RST引腳高電平的控制下,特殊功能寄存器和程序計(jì)數(shù)器PC復(fù)位后的狀態(tài)如表2-6所示。寄存器復(fù)位狀態(tài)寄存器復(fù)位狀態(tài)PC0000HTCON00HA00HT2CON00HN00HTH000HPSW00HTL000HSP07HTH100HDPTR0000HTL100HP0P3FFHSCON00H表2-6 復(fù)位后

39、寄存器的狀態(tài)單片機(jī)原理-MCS-51的基本結(jié)構(gòu)26 MCS51系列單片機(jī)的時(shí)鐘電路和時(shí)序 時(shí)鐘電路用來(lái)產(chǎn)生單片機(jī)工作時(shí)所必需的時(shí)鐘信號(hào)。在時(shí)鐘信號(hào)的控制下,單片機(jī)內(nèi)部的控制電路按照程序指令進(jìn)行工作。而時(shí)序是指單片機(jī)執(zhí)行的各個(gè)指令在時(shí)間上的先后關(guān)系。261 時(shí)鐘電路(1)內(nèi)部振蕩方式 在引腳XTAL1和引腳XTAL之間外接晶體振蕩器和微調(diào)電容,和單片機(jī)內(nèi)部的一個(gè)高增益的反相放大器一起構(gòu)成了自激振蕩器并產(chǎn)生振蕩時(shí)鐘脈沖。8 80 05 51 1X XT TA AL L1 1X XT TA AL L2 2C C1 1C C2 2圖2-17 內(nèi)部震蕩方式C1和C2起穩(wěn)定振蕩頻率、快速起振的作用,其電容

40、值一般在5pF30pF。MCS51系列晶振頻率的典型值為6MHz、12MHz和24MHz,最高可達(dá)到40MHz。 內(nèi)部振蕩方式所得的時(shí)鐘信號(hào)比較穩(wěn)定,實(shí)用電路中使用較多。在這種情況下,晶振和電容應(yīng)該盡可能安裝的離單片機(jī)的時(shí)鐘引腳近,以減少寄生電容,更好地保證振蕩器穩(wěn)定可靠地工作。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)26 MCS51系列單片機(jī)的時(shí)鐘電路和時(shí)序 (2)部振蕩方式:外部振蕩方式就是把外部已有的時(shí)鐘信號(hào)引入單片機(jī)內(nèi),常用于多片MCS51單片機(jī)同時(shí)工作,以便于多片MCS51單片機(jī)之間的同步,一般為低于12MHz的方波。外部的時(shí)鐘源直接接到XTAL2端,XTAL1接地。由于XTAL2的邏輯

41、電平不是TTL的,可以接一個(gè)4.7K 10K的上拉電阻。圖2-18 外部震蕩方式單片機(jī)原理-MCS-51的基本結(jié)構(gòu)26 MCS51系列單片機(jī)的時(shí)鐘電路和時(shí)序262 基本時(shí)序1時(shí)鐘周期 時(shí)鐘周期是單片機(jī)的基本時(shí)間單位。若晶振的振蕩頻率為12MHz,則時(shí)鐘周期為1/12MHz=0.0833s. 2.狀態(tài)周期 振蕩頻率二分頻后形成狀態(tài)周期或稱(chēng)s周期。所以一個(gè)狀態(tài)周期包括兩個(gè)振蕩周期,晶振頻率為12MHz時(shí),狀態(tài)周期為2/12MHz=0.167s。3機(jī)器周期 CPU完成一個(gè)基本操作所需要的時(shí)間稱(chēng)為機(jī)器周期(MC)。單片機(jī)中常把執(zhí)行一條指令的過(guò)程分為幾個(gè)機(jī)器周期。每個(gè)機(jī)器周期完成一個(gè)基本操作,如取指令、

42、讀或?qū)憯?shù)據(jù)等等。MCS51單片機(jī)每12個(gè)振蕩周期為一個(gè)機(jī)器周期。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)26 MCS51系列單片機(jī)的時(shí)鐘電路和時(shí)序 MCS51的一個(gè)機(jī)器周期包括12個(gè)時(shí)鐘周期,分為6個(gè)狀態(tài)周期s1s6。每個(gè)狀態(tài)又分為2拍:P1和P2。因此一個(gè)機(jī)器周期中的12個(gè)時(shí)鐘周期表示為:S1P1,S1P2,S2P1,S2P2,S3P1,S3P2,S6P2,如圖2-19所示: 圖2-19 狀態(tài)周期及指令周期單片機(jī)原理-MCS-51的基本結(jié)構(gòu)26 MCS51系列單片機(jī)的時(shí)鐘電路和時(shí)序4.指令周期指令周期是執(zhí)行一條指令所需的時(shí)間。MCS51單片機(jī)中按指令長(zhǎng)度可分為單字節(jié)、雙字節(jié)、三字節(jié)指令,因此執(zhí)行

43、一條指令的時(shí)間也不同,有如下幾種形式: 單字節(jié)指令單機(jī)器周期;單字節(jié)指令雙機(jī)器周期;雙字節(jié)指令單機(jī)器周期;雙字節(jié)指令雙機(jī)器周期;三字節(jié)指令雙機(jī)器周期;單字節(jié)指令四機(jī)器周期;(如單字節(jié)的乘除法指令) 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)26 MCS51系列單片機(jī)的時(shí)鐘電路和時(shí)序263 工作模式 AT89S51單片機(jī)提供了空閑和掉電兩種工作模式。 在空閑模式下,CPU自己進(jìn)入睡眠狀態(tài)而其他的片內(nèi)功能部件保持工作狀態(tài),這種模式是可以用軟件調(diào)用的。當(dāng)CPU啟動(dòng)了這個(gè)模式,片內(nèi)所有的數(shù)據(jù)存儲(chǔ)器和特殊功能寄存器將保持不變。任何的中斷信號(hào)或硬件復(fù)位信號(hào)都可以使CPU退出空閑模式。在空閑模式下,單片機(jī)的功耗下降

44、80。 在掉電模式下,單片機(jī)片內(nèi)振蕩停止,CPU執(zhí)行的最后一條指令就是調(diào)用掉電模式的指令。片內(nèi)的所有數(shù)據(jù)存儲(chǔ)器和特殊功能存儲(chǔ)器將保持不變,一直到掉電模式終止??梢酝ㄟ^(guò)外部的復(fù)位信號(hào)或者給INT0和INT1管腳上發(fā)出外部中斷信號(hào)來(lái)終止掉電模式。在這種模式中,VCC可以降低到2V,片內(nèi)RAM處于50A的供電狀態(tài),功耗很低。單片機(jī)原理-MCS-51的基本結(jié)構(gòu)27 單片機(jī)最小系統(tǒng) 所謂的單片機(jī)最小系統(tǒng),是指在盡可能少的外部電路的條件下,形成一個(gè)可以獨(dú)立工作的單片機(jī)系統(tǒng)。 圖2-20 單片機(jī)最小系統(tǒng)單片機(jī)原理-MCS-51的基本結(jié)構(gòu)習(xí)題與思考題2.1 MCS-51單片機(jī)內(nèi)部包含那些主要邏輯功能部件?各個(gè)

45、功能部件的最主要的功能是什么?2.2 MCS-51的EA端有何用途?2.3 MCS-51單片機(jī)外部總線(xiàn)結(jié)構(gòu)是怎樣的?2.4 MCS-51單片機(jī)存儲(chǔ)器的組織結(jié)構(gòu)是怎樣的?2.5 MCS-51系列單片機(jī)的存儲(chǔ)器可劃分為幾個(gè)空間?各自的地址范圍和容量是多少?在使用上有什么不同?2.6 8051如何確定和改變當(dāng)前工作寄存器組?2.7 MCS-51單片機(jī)的程序存儲(chǔ)器中0000H、0003H、000BH、0013H、001BH和0023H這幾個(gè)地址具有什么特殊的功能?2.8 8051單片機(jī)有哪幾個(gè)特殊功能寄存器?可位尋址的SFR有幾個(gè)?2.9 程序狀態(tài)寄存器PSW的作用是什么?常用標(biāo)志有哪些位?作用是什么

46、?2.10 (SP)=30H 指什么?2.11 MCS-51系列單片機(jī)的P0、P1、P2和P3口各有什么特點(diǎn)?2.12 ALE信號(hào)有何功用?一般情況下它與機(jī)器周期的關(guān)系如何?在什么條件下ALE信號(hào)可用作外部設(shè)備的定時(shí)信號(hào)。2.13 有那幾種方法能使單片機(jī)復(fù)位?復(fù)位后各寄存器的狀態(tài)如何?復(fù)位對(duì)內(nèi)部RAM有何影響?2.14 MCS-51的時(shí)鐘振蕩周期、機(jī)器周期和指令周期之間有何關(guān)系?單片機(jī)原理-MCS-51的基本結(jié)構(gòu)習(xí)題答案2.1 MCS-51單片機(jī)內(nèi)部包含那些主要邏輯功能部件?各個(gè)功能部件的最主要的功能是什么?答案:MCS-51單片機(jī)內(nèi)部主要包括以下幾個(gè)部分:1一個(gè)8位微處理器CPU MCS-5

47、1單片機(jī)中有一個(gè)8位的CPU,包括運(yùn)算器和控制器兩個(gè)部分,并且增加了面向控制的處理功能,不僅可以處理字節(jié)數(shù)據(jù)還可以進(jìn)行位變量的處理,如位處理、查表、狀態(tài)檢測(cè)、中斷處理等。2數(shù)據(jù)存儲(chǔ)器RAM和特殊功能寄存器SFR 片內(nèi)具有128Bytes(52系列為256Bytes)的數(shù)據(jù)存儲(chǔ)器,片外最多可以擴(kuò)展64KB。數(shù)據(jù)存儲(chǔ)器用來(lái)存儲(chǔ)單片機(jī)運(yùn)行期間的工作變量、運(yùn)算的中間結(jié)果、數(shù)據(jù)暫存和緩沖、標(biāo)志位等。3內(nèi)部程序存儲(chǔ)器ROM 內(nèi)部具有4KB(51系列)/8KB(52系列)的程序存儲(chǔ)器(FLASH),用來(lái)存儲(chǔ)用戶(hù)程序。如果片內(nèi)程序存儲(chǔ)器容量不夠可以外部擴(kuò)展程序存儲(chǔ)器,最多可以擴(kuò)展64KB。4兩個(gè)定時(shí)/計(jì)數(shù)器

48、MCS-51單片機(jī)內(nèi)部具有2個(gè)16位的定時(shí)器/計(jì)數(shù)器。在使用中,這兩個(gè)定時(shí)器/計(jì)數(shù)器既可以進(jìn)行精確的計(jì)時(shí),又可以對(duì)外部事件進(jìn)行計(jì)數(shù),是最常用和最基本的部件。5四個(gè)8位可編程的I/O(輸入/輸出)并行端口 四個(gè)8位的并行端口,其中P0為雙向口,P1P3為準(zhǔn)雙向口。單片機(jī)原理-MCS-51的基本結(jié)構(gòu)6一個(gè)串行通信端口 一個(gè)全雙工的串行口,具有四種工作方式。可以用來(lái)進(jìn)行串行異步通信,與PC機(jī)或者多個(gè)單片機(jī)主從通信或者構(gòu)成多機(jī)系統(tǒng)實(shí)現(xiàn)更強(qiáng)大的功能。7中斷控制系統(tǒng) MCS-51單片機(jī)具有5個(gè)固定的可屏蔽中斷源,3個(gè)在片內(nèi),2個(gè)在片外,它們?cè)诔绦虼鎯?chǔ)器中有各自固定的中斷入口地址,由此進(jìn)入中斷服務(wù)程序。5個(gè)

49、中斷源有兩個(gè)中斷優(yōu)先級(jí),可形成中斷嵌套。8內(nèi)部時(shí)鐘電路 單片機(jī)的時(shí)鐘信號(hào)用來(lái)提供單片機(jī)片內(nèi)各種微操作的時(shí)間基準(zhǔn)。2.2 MCS-51的EA端有何用途?答案:EA 訪問(wèn)外部程序存儲(chǔ)器控制信號(hào)。對(duì)8051和8751,它們片內(nèi)有4KB的程序存儲(chǔ)器,當(dāng)EA 為高電平時(shí),分兩種情況。若訪問(wèn)的地址空間在04K范圍內(nèi),CPU訪問(wèn)片內(nèi)程序存儲(chǔ)器。訪問(wèn)的地址超出4K時(shí),CPU將自動(dòng)執(zhí)行外部程序存儲(chǔ)器,即訪問(wèn)外部ROM。當(dāng)EA接低電平時(shí),CPU只訪問(wèn)外部EPROM/ROM,而不管是否有片內(nèi)程序存儲(chǔ)器。對(duì)8031,EA必須接地。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.3 MCS-51單片機(jī)外部總線(xiàn)結(jié)構(gòu)是怎樣的?答案

50、:1地址總線(xiàn)(AB): 地址總線(xiàn)寬度為16位,由P0口經(jīng)地址鎖存器提供低8位地址(A0-A7);P2口直接提供高8位地址(A8A15)。地址信號(hào)是由CPU發(fā)出的,故地址總線(xiàn)是單方向的。2數(shù)據(jù)總線(xiàn)(DB): 數(shù)據(jù)總線(xiàn)寬度為8位,用于傳送數(shù)據(jù)和指令,由P0口提供。3控制總線(xiàn)(CB): 控制總線(xiàn)隨時(shí)掌握各種部件的狀態(tài),并根據(jù)需要向有關(guān)部件發(fā)出命令。其中地址總線(xiàn)和數(shù)據(jù)總線(xiàn),以及控制總線(xiàn)和IO都有部分功能上的重疊,也就是有些口線(xiàn)既是地址總線(xiàn)也是數(shù)據(jù)總線(xiàn),而有些控制總線(xiàn)也是IO。2.4 MCS-51單片機(jī)存儲(chǔ)器的組織結(jié)構(gòu)是怎樣的?答案:MCS51單片機(jī)的存儲(chǔ)器采用的是哈佛(Harvard)結(jié)構(gòu),即程序存儲(chǔ)

51、器和數(shù)據(jù)存儲(chǔ)器分開(kāi)編址,在空間上是各自獨(dú)立的,兩種存儲(chǔ)器有自己的尋址方式和尋址空間。 MCS51的存儲(chǔ)器空間可以劃分為以下4種,分別是:程序存儲(chǔ)器;內(nèi)部數(shù)據(jù)存儲(chǔ)器;內(nèi)部特殊功能寄存器;外部數(shù)據(jù)存儲(chǔ)器; 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.5 MCS-51系列單片機(jī)的存儲(chǔ)器可劃分為幾個(gè)空間?各自的地址范圍和容量是多少?在使用上有什么不同?答案:MCS51的存儲(chǔ)器空間可以劃分為以下4種,分別是:程序存儲(chǔ)器;內(nèi)部數(shù)據(jù)存儲(chǔ)器;內(nèi)部特殊功能寄存器;外部數(shù)據(jù)存儲(chǔ)器;對(duì)89S51來(lái)說(shuō),程序存儲(chǔ)器分為片內(nèi)程序存儲(chǔ)器和片外程序存儲(chǔ)器,片內(nèi)程序存儲(chǔ)器地址范圍為0000H0FFFH,4KB;片外程序存儲(chǔ)器地址范圍

52、0000HFFFFH,64KB。內(nèi)部程序存儲(chǔ)器與外部程序存儲(chǔ)器統(tǒng)一編址,當(dāng)EA為高電平時(shí),從內(nèi)部程序存儲(chǔ)器開(kāi)始讀取程序,達(dá)到4KB后跳到片外程序存儲(chǔ)器的1000H開(kāi)始讀取程序;當(dāng)EA為低電平時(shí),直接從片外程序存儲(chǔ)器的0000H開(kāi)始處讀取程序。內(nèi)部數(shù)據(jù)存儲(chǔ)器地址范圍為00H7FH,128B,在程序中做通用存儲(chǔ)器使用。內(nèi)部特殊功能寄存器地址范圍80HFFH,128B,專(zhuān)用于控制、管理片內(nèi)算術(shù)邏輯部件、并行I/O口、串行I/O口、定時(shí)器/計(jì)數(shù)器、中斷系統(tǒng)等功能模塊的工作。外部數(shù)據(jù)存儲(chǔ)器地址范圍0000HFFFFH,64KB,又稱(chēng)為外部數(shù)據(jù)RAM,當(dāng)單片機(jī)內(nèi)部128個(gè)字節(jié)的數(shù)據(jù)RAM不能滿(mǎn)足系統(tǒng)工作的

53、需要時(shí),可以通過(guò)它的外部總線(xiàn)擴(kuò)展外部數(shù)據(jù)存儲(chǔ)器。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.6 8051如何確定和改變當(dāng)前工作寄存器組?答案:狀態(tài)寄存器PSW中RS1,RS0兩位進(jìn)行寄存器組選擇, 0 0 組0(00H07H) 0 1 組1(08H0FH) 1 0 組2(10H17H) 1 1 組3(18H1FH) 2.7 MCS-51單片機(jī)的程序存儲(chǔ)器中0000H、0003H、000BH、0013H、001BH和0023H這幾個(gè)地址具有什么特殊的功能?答案:0000H:?jiǎn)纹瑱C(jī)復(fù)位后,PC0000H,程序從0000H開(kāi)始執(zhí)行指令,故系統(tǒng)必須從0000H單元開(kāi)始取指令,執(zhí)行程序。 0003H:外部中

54、斷0入口地址。 000BH:定時(shí)器0中斷入口地址。 0013H:外部中斷1入口地址。 001BH:定時(shí)器1中斷入口地址。 0023H:串行口中斷入口地址。 在系統(tǒng)中斷響應(yīng)之后,將自動(dòng)轉(zhuǎn)到各中斷入口地址處執(zhí)行程序。 單片機(jī)原理-MCS-51的基本結(jié)構(gòu)2.8 8051單片機(jī)有哪幾個(gè)特殊功能寄存器?可位尋址的SFR有幾個(gè)?答案:8051有21個(gè)特殊功能寄存器 ,包括:A累加器,B寄存器, PSW程序狀態(tài)字, SP堆棧指針 ,DPTR數(shù)據(jù)指針寄存器 ,PC程序計(jì)數(shù)器(16位) ,P0P3I/O端口 ,IP中斷優(yōu)先級(jí)控制寄存器,IE中斷允許控制寄存器,TMOD定時(shí)器/計(jì)數(shù)器方式控制寄存器,TCON定時(shí)器/計(jì)數(shù)器控制寄存器,TH0,TL0定時(shí)器/計(jì)數(shù)器0,TH1,TH1定時(shí)器/計(jì)數(shù)器1,SCON串行端口控制寄存器,SBUF串行數(shù)據(jù)緩沖器,PCON電源控制寄存器??蓪ぶ返腟FR有11個(gè)。2.9 程序狀態(tài)寄存器PSW的作用是什么?常用標(biāo)志有哪些位?作用是什么?答案:PSW程序狀態(tài)字。主要起著

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論