




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第2章 80C51 單片機(jī)的硬件結(jié)構(gòu)2.1 單片機(jī)的概念2.2 80C51單片機(jī)的邏輯結(jié)構(gòu)及信號引腳2.3 80C51單片機(jī)的內(nèi)部存儲器2.4 80C51 單片機(jī)的并行I/O口2.5 80C51 單片機(jī)的時鐘與定時2.6 80C51 單片機(jī)的系統(tǒng)復(fù)位2.7 單片機(jī)低功耗工作模式2.1 單片機(jī)的概念單片機(jī)的概念 單片微型計算機(jī)單片微型計算機(jī)SCMC(Single Chip Micro-Computer),是計算機(jī)、自動控制和大規(guī)模集成電路相結(jié)合的產(chǎn)物。是計算機(jī)、自動控制和大規(guī)模集成電路相結(jié)合的產(chǎn)物。還有其他的稱呼,如:微控制器(還有其他的稱呼,如:微控制器(MCU),嵌入式微控制),嵌入式微控制
2、器(器(EMCU),嵌入式微處理器(),嵌入式微處理器(EMP)等。)等。 目前使用最多的仍是目前使用最多的仍是8位單片機(jī)。在位單片機(jī)。在8位單片機(jī)中位單片機(jī)中80c51的的使用更為廣泛。本教材也是以使用更為廣泛。本教材也是以80c51為基礎(chǔ)。為基礎(chǔ)。2 單片機(jī)的特點:單片機(jī)的特點:(1)小巧靈活、成本低、易于產(chǎn)品化。能組裝成各種智能)小巧靈活、成本低、易于產(chǎn)品化。能組裝成各種智能式測控設(shè)備及智能儀器儀表。式測控設(shè)備及智能儀器儀表。(2)可靠性好,應(yīng)用范圍廣。單片機(jī)芯片本身是按工業(yè)測)可靠性好,應(yīng)用范圍廣。單片機(jī)芯片本身是按工業(yè)測控環(huán)境要求設(shè)計的,抗干擾性強(qiáng),能適應(yīng)各種惡劣的環(huán)境,控環(huán)境要求設(shè)
3、計的,抗干擾性強(qiáng),能適應(yīng)各種惡劣的環(huán)境,這是其他機(jī)種無法比擬的。這是其他機(jī)種無法比擬的。(3)易擴(kuò)展,很容易構(gòu)成各種規(guī)模的應(yīng)用系統(tǒng),控制功能)易擴(kuò)展,很容易構(gòu)成各種規(guī)模的應(yīng)用系統(tǒng),控制功能強(qiáng)。單片機(jī)的邏輯控制功能很強(qiáng),指令系統(tǒng)有各種控制功能強(qiáng)。單片機(jī)的邏輯控制功能很強(qiáng),指令系統(tǒng)有各種控制功能指令,可以對邏輯功能比較復(fù)雜的系統(tǒng)進(jìn)行控制。指令,可以對邏輯功能比較復(fù)雜的系統(tǒng)進(jìn)行控制。(4)具有通訊功能,可以很方便地實現(xiàn)多機(jī)和分布式控制,)具有通訊功能,可以很方便地實現(xiàn)多機(jī)和分布式控制,形成控制網(wǎng)絡(luò)和遠(yuǎn)程控制。形成控制網(wǎng)絡(luò)和遠(yuǎn)程控制。3單片機(jī)的應(yīng)用單片機(jī)的應(yīng)用(1)工業(yè)方面:各種測控系統(tǒng)。數(shù)據(jù)采集系統(tǒng)
4、,工業(yè)機(jī)器)工業(yè)方面:各種測控系統(tǒng)。數(shù)據(jù)采集系統(tǒng),工業(yè)機(jī)器人,智能化儀器,機(jī)、電一體化產(chǎn)品。人,智能化儀器,機(jī)、電一體化產(chǎn)品。(2)智能儀器儀表方面。)智能儀器儀表方面。(3)通訊方面:調(diào)制解調(diào)器、程控交換技術(shù)等。)通訊方面:調(diào)制解調(diào)器、程控交換技術(shù)等。(4)消費(fèi)產(chǎn)品方面:電動玩具、錄像機(jī)、激光唱機(jī)。)消費(fèi)產(chǎn)品方面:電動玩具、錄像機(jī)、激光唱機(jī)。(5)導(dǎo)彈與控制方面:導(dǎo)彈控制、魚雷制導(dǎo)控制、智能武)導(dǎo)彈與控制方面:導(dǎo)彈控制、魚雷制導(dǎo)控制、智能武器裝備、飛機(jī)導(dǎo)航系統(tǒng)。器裝備、飛機(jī)導(dǎo)航系統(tǒng)。(6)計算機(jī)外部設(shè)備及電器方面:打印機(jī)、硬盤驅(qū)動器、)計算機(jī)外部設(shè)備及電器方面:打印機(jī)、硬盤驅(qū)動器、彩色與黑白
5、復(fù)印機(jī)、磁帶機(jī)等。彩色與黑白復(fù)印機(jī)、磁帶機(jī)等。(7)多機(jī)分布式系統(tǒng):可用單片機(jī)構(gòu)成分布式測控系統(tǒng),)多機(jī)分布式系統(tǒng):可用單片機(jī)構(gòu)成分布式測控系統(tǒng),它使單片機(jī)應(yīng)用進(jìn)入了一個全新的階段。它使單片機(jī)應(yīng)用進(jìn)入了一個全新的階段。 (測控系統(tǒng),智能儀表,智能玩具,計算機(jī)外設(shè))(測控系統(tǒng),智能儀表,智能玩具,計算機(jī)外設(shè))4.典型單片機(jī)產(chǎn)品簡介典型單片機(jī)產(chǎn)品簡介(1) MCS-51單片機(jī)系列單片機(jī)系列 MCS-51可分為兩個子系列和可分為兩個子系列和4種類型,按資源的配置種類型,按資源的配置數(shù)量,數(shù)量,MCS-51系列分為系列分為51和和52兩個子系列,其中兩個子系列,其中51子子系列是基本型,而系列是基本型
6、,而52子系列屬于增強(qiáng)型。子系列屬于增強(qiáng)型。 資資 源源 配配 置置 子子 系系 列列片內(nèi)片內(nèi)ROM的形式的形式片內(nèi)片內(nèi)ROM容量容量片內(nèi)片內(nèi)RAM容量容量定時器定時器與與計數(shù)器計數(shù)器中中斷斷源源無無ROMEPROME2PROM851系列系列80318051875189514KB128B21658C51系列系列80C3180C5187C5189C514KB128B2165852系列系列80328052875289528KB256B31668C252系列系列80C23280C25287C25289C2528KB256B3167l 80C51與與8051的比較的比較(1)MCS-51系列芯片采用系
7、列芯片采用HMOS工藝,而工藝,而80C51芯片則芯片則采用采用CHMOS工藝。工藝。CHMOS工藝是工藝是CMOS和和HMOS的結(jié)合,的結(jié)合,(2)80C51芯片具有芯片具有CMOS低功耗的特點。例如低功耗的特點。例如8051芯片芯片的功耗為的功耗為630mW,而而80C51的功耗只有的功耗只有120mW。(3)80C51在功能增加了待機(jī)和掉電保護(hù)兩種工作方式,在功能增加了待機(jī)和掉電保護(hù)兩種工作方式,以保證單片機(jī)在掉電情況下能以最低的消耗電流維持。以保證單片機(jī)在掉電情況下能以最低的消耗電流維持。(4)此外,在)此外,在80C51系列芯片中,內(nèi)部程序存儲器除了系列芯片中,內(nèi)部程序存儲器除了RO
8、M型和型和EPROM型外,還有型外,還有E2PROM型,例如型,例如89C51就就有有4KB E2PROM。并且隨著集成技術(shù)的提高,。并且隨著集成技術(shù)的提高,80C51系列系列片內(nèi)程序存儲器的容量也越來越大,目前已有片內(nèi)程序存儲器的容量也越來越大,目前已有64KB的芯片的芯片了。另外,許多了。另外,許多80C51芯片還具有程序存儲器保密機(jī)制,以芯片還具有程序存儲器保密機(jī)制,以防止應(yīng)用程序泄密或被復(fù)制。防止應(yīng)用程序泄密或被復(fù)制。 (2) MCS-96系列單片機(jī)系列單片機(jī) MCS-96系列單片機(jī)是系列單片機(jī)是Intel公司在公司在1983年推出的年推出的16位單位單片機(jī),它與片機(jī),它與8位機(jī)相比,
9、具有集成度高、運(yùn)算速度快等特點。位機(jī)相比,具有集成度高、運(yùn)算速度快等特點。它的內(nèi)部除了有常規(guī)的它的內(nèi)部除了有常規(guī)的I/O接口、定時器計數(shù)器、全雙工接口、定時器計數(shù)器、全雙工串行口外,還有高速串行口外,還有高速I/O部件、多路部件、多路AD轉(zhuǎn)換和脈寬調(diào)制轉(zhuǎn)換和脈寬調(diào)制輸出(輸出(PWM)等電路,其指令系統(tǒng)比)等電路,其指令系統(tǒng)比MCS-51更加豐富。更加豐富。 (3) ATMEL公司單片機(jī)公司單片機(jī) ATMEL公司于公司于1992年推出了全球第一個年推出了全球第一個3V超低壓超低壓F1ash存儲器,并于存儲器,并于1994年以年以E2PROM技術(shù)與技術(shù)與Intel公司的公司的80C31內(nèi)核進(jìn)行技
10、術(shù)交換,從此擁有了內(nèi)核進(jìn)行技術(shù)交換,從此擁有了80C31內(nèi)核的使用權(quán),內(nèi)核的使用權(quán),并將并將ATMEL特有的特有的Flash技術(shù)與技術(shù)與80C31內(nèi)核結(jié)合在一起,內(nèi)核結(jié)合在一起,生產(chǎn)出生產(chǎn)出AT89C51系列單片機(jī)。系列單片機(jī)。2.2 80C51單片機(jī)的邏輯結(jié)構(gòu)及信號引腳單片機(jī)的邏輯結(jié)構(gòu)及信號引腳2.2.1 80C51單片機(jī)的內(nèi)部邏輯結(jié)構(gòu)單片機(jī)的內(nèi)部邏輯結(jié)構(gòu)1. 中央處理器中央處理器CPU (1)運(yùn)算電路)運(yùn)算電路 (2)控制電路)控制電路 2. 內(nèi)部數(shù)據(jù)存儲器內(nèi)部數(shù)據(jù)存儲器 3. 內(nèi)部程序存儲器內(nèi)部程序存儲器 4. 定時器定時器/計數(shù)器計數(shù)器 5. 并行并行I/O口口 6. 串行口串行口 7
11、. 中斷控制電路中斷控制電路 8. 時鐘電路時鐘電路 9. 位處理器位處理器 10. 內(nèi)部總線內(nèi)部總線80C51芯片邏輯結(jié)構(gòu)圖芯片邏輯結(jié)構(gòu)圖1. CPU CPU即中央處理器的簡稱,是單片機(jī)的核心部件,它即中央處理器的簡稱,是單片機(jī)的核心部件,它完成各種運(yùn)算和控制操作,完成各種運(yùn)算和控制操作,CPU由運(yùn)算器和控制器兩部分由運(yùn)算器和控制器兩部分電路組成。電路組成。(1)運(yùn)算器電路)運(yùn)算器電路 運(yùn)算器電路包括運(yùn)算器電路包括ALU(算術(shù)邏輯單元)、(算術(shù)邏輯單元)、ACC(累(累加器)、加器)、B寄存器、狀態(tài)寄存器、暫存器寄存器、狀態(tài)寄存器、暫存器1和暫存器和暫存器2等部件,等部件,運(yùn)算器的功能是進(jìn)行
12、算術(shù)運(yùn)算和邏輯運(yùn)算。運(yùn)算器的功能是進(jìn)行算術(shù)運(yùn)算和邏輯運(yùn)算。 (2)控制器電路)控制器電路 控制器電路包括程序計數(shù)器控制器電路包括程序計數(shù)器PC、PC加加1寄存器、指令寄存器、指令寄存器、指令譯碼器、數(shù)據(jù)指針寄存器、指令譯碼器、數(shù)據(jù)指針DPTR、堆棧指針、堆棧指針SP、緩沖器以及定時與控制電路等??刂齐娐吠瓿芍笓]控制緩沖器以及定時與控制電路等??刂齐娐吠瓿芍笓]控制工作,協(xié)調(diào)單片機(jī)各部分正常工作。工作,協(xié)調(diào)單片機(jī)各部分正常工作。 2. 2. 存儲器存儲器 80C51單片機(jī)的存儲器包括數(shù)據(jù)存儲器和程序存儲單片機(jī)的存儲器包括數(shù)據(jù)存儲器和程序存儲器,其主要特點是程序存儲器和數(shù)據(jù)存儲器的尋址空間器,其主要
13、特點是程序存儲器和數(shù)據(jù)存儲器的尋址空間是相互獨(dú)立的,物理結(jié)構(gòu)也不相同。是相互獨(dú)立的,物理結(jié)構(gòu)也不相同。 內(nèi)部數(shù)據(jù)存儲器包括內(nèi)部數(shù)據(jù)存儲器包括RAM和和RAM地址寄存器,內(nèi)部地址寄存器,內(nèi)部數(shù)據(jù)存儲器一般指前數(shù)據(jù)存儲器一般指前128個單元,高個單元,高128個用于專用寄存器。個用于專用寄存器。 內(nèi)部程序存儲器包括內(nèi)部程序存儲器包括ROM和和ROM地址寄存器,地址寄存器,80C51有有4kROM存放程序。存放程序。3. 定時器定時器/計數(shù)器計數(shù)器 MCS51單片機(jī)片內(nèi)有兩個單片機(jī)片內(nèi)有兩個16位的定時位的定時/計數(shù)器,即定計數(shù)器,即定時器時器0和定時器和定時器1。它們可以用于定時控制、延時以及對外
14、。它們可以用于定時控制、延時以及對外部事件的計數(shù)和檢測等。部事件的計數(shù)和檢測等。4. 并行并行I/O口口 80C51單片機(jī)共有單片機(jī)共有4個個8位的位的I/O口(口(P0、P1、P2和和P3),),每一條每一條I/O線都能獨(dú)立地用作輸入或輸出。線都能獨(dú)立地用作輸入或輸出。5. 串行串行I/O口口 80C51單片機(jī)具有一個采用通用異步工作方式的全雙工單片機(jī)具有一個采用通用異步工作方式的全雙工串行通信接口,可以同時發(fā)送和接收數(shù)據(jù)。串行通信接口,可以同時發(fā)送和接收數(shù)據(jù)。6. 中斷控制系統(tǒng)中斷控制系統(tǒng) 80C51共有共有5個中斷源,即外中斷個中斷源,即外中斷2個,定時個,定時/計數(shù)中斷計數(shù)中斷2個,個
15、,串行中斷串行中斷1個。個。7. 時鐘電路時鐘電路 80C51芯片內(nèi)部有時鐘電路,但晶體振蕩器和微調(diào)電容芯片內(nèi)部有時鐘電路,但晶體振蕩器和微調(diào)電容必須外接。時鐘電路為單片機(jī)產(chǎn)生時鐘脈沖序列,振蕩器的必須外接。時鐘電路為單片機(jī)產(chǎn)生時鐘脈沖序列,振蕩器的頻率范圍為頻率范圍為1.2MHz33MHz,典型取值為,典型取值為6MHz。8. 總線總線 以上所有組成部分都是通過總線連接起來,從而構(gòu)成一以上所有組成部分都是通過總線連接起來,從而構(gòu)成一個完整的單片機(jī)。系統(tǒng)的地址信號、數(shù)據(jù)信號和控制信號都個完整的單片機(jī)。系統(tǒng)的地址信號、數(shù)據(jù)信號和控制信號都是通過總線傳送的,總線結(jié)構(gòu)減少了單片機(jī)的連線和引腳,是通過
16、總線傳送的,總線結(jié)構(gòu)減少了單片機(jī)的連線和引腳,提高了集成度和可靠性。提高了集成度和可靠性。 2.2.2 80C51單片機(jī)的封裝與信號引腳單片機(jī)的封裝與信號引腳 1. 芯片封裝形式芯片封裝形式 圖圖2.2為為MCS51系列單片機(jī)引腳圖及邏輯符號,它們系列單片機(jī)引腳圖及邏輯符號,它們?yōu)闃?biāo)準(zhǔn)的為標(biāo)準(zhǔn)的40腳腳DIP封裝。封裝。 1. 輸入輸出口線輸入輸出口線 P0口(口(P0.0P0.7):該端口為漏極開路的):該端口為漏極開路的8位準(zhǔn)雙向位準(zhǔn)雙向口,它為口,它為8位地址線和位地址線和8位數(shù)據(jù)線的復(fù)用端口。位數(shù)據(jù)線的復(fù)用端口。 P1口(口(P1.0P1.7):它是一個內(nèi)部帶上拉電阻的):它是一個內(nèi)部
17、帶上拉電阻的8位位準(zhǔn)雙向準(zhǔn)雙向I/O口,口,P1口的驅(qū)動能力為口的驅(qū)動能力為4個個LSTTL負(fù)載。負(fù)載。 P2口(口(P2.0P2.7):它為一個內(nèi)部帶上拉電阻的):它為一個內(nèi)部帶上拉電阻的8位位準(zhǔn)雙向準(zhǔn)雙向I/O口,口,P2口的驅(qū)動能力也為口的驅(qū)動能力也為4個個LSTTL負(fù)載。在負(fù)載。在訪問外部程序存儲器時,它作存儲器的高訪問外部程序存儲器時,它作存儲器的高8位地址線。位地址線。 P3口(口(P3.0P3.7):):P3口同樣是內(nèi)部帶上拉電阻的口同樣是內(nèi)部帶上拉電阻的8位準(zhǔn)雙向位準(zhǔn)雙向I/O口,口,P3口除了作為一般的口除了作為一般的I/O口使用之外,口使用之外,其還具有特殊功能。其還具有特
18、殊功能。2. 芯片引腳介紹芯片引腳介紹地址鎖存允許信號地址鎖存允許信號ALE 系統(tǒng)擴(kuò)展時,系統(tǒng)擴(kuò)展時,ALE用于控制地址鎖存器鎖存用于控制地址鎖存器鎖存P0口輸口輸出的低出的低8位地址,從而實現(xiàn)數(shù)據(jù)與低位地址的復(fù)用。位地址,從而實現(xiàn)數(shù)據(jù)與低位地址的復(fù)用。此外此外,ALE是以六分之一晶振頻率的固定頻率輸出的正是以六分之一晶振頻率的固定頻率輸出的正脈沖,可作為外部時鐘或外部定時脈沖使用。脈沖,可作為外部時鐘或外部定時脈沖使用。 外部程序存儲器讀選通信號外部程序存儲器讀選通信號 /PSEN是讀外部程序存儲器的選通信號,低電平有效。是讀外部程序存儲器的選通信號,低電平有效。 訪問程序存儲器控制信號訪問
19、程序存儲器控制信號 當(dāng)為高電平時,當(dāng)為高電平時,CPU執(zhí)行片內(nèi)程序存儲器指令,但當(dāng)執(zhí)行片內(nèi)程序存儲器指令,但當(dāng)PC中的值超過中的值超過0FFFH時,將自動轉(zhuǎn)向執(zhí)行片外程序存儲器指令。時,將自動轉(zhuǎn)向執(zhí)行片外程序存儲器指令。當(dāng)為低電平時,當(dāng)為低電平時,CPU只執(zhí)行片外程序存儲器指令。只執(zhí)行片外程序存儲器指令。 復(fù)位信號復(fù)位信號RST 該信號高電平有效,在輸入端保持兩個機(jī)器周期的高電該信號高電平有效,在輸入端保持兩個機(jī)器周期的高電平后,就可以完成復(fù)位操作。平后,就可以完成復(fù)位操作。EAPSEN 時鐘電路引腳時鐘電路引腳XTAL1和和XTAL2 XTAL1:接外部晶振和微調(diào)電容的一端,在片內(nèi):接外部晶
20、振和微調(diào)電容的一端,在片內(nèi)它是振蕩器倒相放大器的輸入,若使用外部時鐘時,它是振蕩器倒相放大器的輸入,若使用外部時鐘時,該引腳外部時鐘的輸入端。該引腳外部時鐘的輸入端。 XTAL2:接外部晶振和微調(diào)電容的另一端,在片內(nèi):接外部晶振和微調(diào)電容的另一端,在片內(nèi)它是振蕩器倒相放大器的輸出,若使用外部時鐘時,它是振蕩器倒相放大器的輸出,若使用外部時鐘時,該引腳必須懸空。該引腳必須懸空。 電源引腳電源引腳Vcc和和Vss Vcc:電源端,接:電源端,接5V。 Vss:接地端。:接地端。 “復(fù)用復(fù)用”即給一些信號引腳賦予雙重功能。第二功能信號即給一些信號引腳賦予雙重功能。第二功能信號定義主要集中在定義主要集
21、中在P3口線中,另外再加上幾個其它信號線??诰€中,另外再加上幾個其它信號線。 EPROM存儲器程序固化所需要的信號存儲器程序固化所需要的信號 編程脈沖:編程脈沖: 30腳(腳(ALE/PROG) 編程電壓(編程電壓(25V):):31腳(腳(EA/Vpp) 備用電源引入備用電源引入 備用電源是通過備用電源是通過9腳(腳(RST/VPD)引入的。當(dāng)電源發(fā)生)引入的。當(dāng)電源發(fā)生故障,電壓降低到下限值時,備用電源經(jīng)此端向內(nèi)部故障,電壓降低到下限值時,備用電源經(jīng)此端向內(nèi)部RAM提供電壓,以保護(hù)內(nèi)部提供電壓,以保護(hù)內(nèi)部RAM中的信息不丟失。中的信息不丟失。3. 芯片引腳的第二功能芯片引腳的第二功能 P3
22、口還具有第二功能,其引腳描述如表口還具有第二功能,其引腳描述如表2.1。表表2.1 P3口線的第二功能口線的第二功能口線特殊功能信號名稱P3.0RXD串行輸入口P3.1TXD串行輸出口P3.2外部中斷0輸入口P3.3外部中斷1輸入口P3.4T0定時器0外部輸入口P3.5T1定時器1外部輸入口P3.6WR寫選通輸出口P3.7RD讀選通輸出口1INT0INT(2)引腳復(fù)用不會引起混亂)引腳復(fù)用不會引起混亂 第一功能與第二功能是不同工作方式下的信號,不會第一功能與第二功能是不同工作方式下的信號,不會發(fā)生使用上的矛盾。發(fā)生使用上的矛盾。 說明:說明:P3口線先按需要優(yōu)先選用它的第二功能,剩下不用口線先
23、按需要優(yōu)先選用它的第二功能,剩下不用 的才作為的才作為I/O口線使用??诰€使用。 2.3 80C51單片機(jī)的內(nèi)部存儲器單片機(jī)的內(nèi)部存儲器ROM:存放程序或者始終要保留的數(shù)據(jù)(表格數(shù)據(jù))。:存放程序或者始終要保留的數(shù)據(jù)(表格數(shù)據(jù))。RAM:用來存放程序運(yùn)行中所需要的常數(shù)和變量,:用來存放程序運(yùn)行中所需要的常數(shù)和變量, 全局?jǐn)?shù)據(jù)也存放在全局?jǐn)?shù)據(jù)也存放在RAM里。里。 一般來說,單片機(jī)芯片的內(nèi)部包括數(shù)據(jù)存儲器和程一般來說,單片機(jī)芯片的內(nèi)部包括數(shù)據(jù)存儲器和程序存儲器,先介紹數(shù)據(jù)存儲區(qū)。序存儲器,先介紹數(shù)據(jù)存儲區(qū)。 單片機(jī)的數(shù)據(jù)存儲器共個單元,劃單片機(jī)的數(shù)據(jù)存儲器共個單元,劃分為兩部分:低單元區(qū)和高單元
24、區(qū),如圖分為兩部分:低單元區(qū)和高單元區(qū),如圖.所示所示圖2.3 80C51 內(nèi)部數(shù)據(jù)存儲器配置圖2.3.1 內(nèi)部數(shù)據(jù)存儲器低內(nèi)部數(shù)據(jù)存儲器低128單元區(qū)單元區(qū) 的內(nèi)部數(shù)據(jù)存儲器低的內(nèi)部數(shù)據(jù)存儲器低128單元區(qū),稱為內(nèi)部單元區(qū),稱為內(nèi)部,地址為按用途劃分為三個區(qū)。,地址為按用途劃分為三個區(qū)。1、寄存器區(qū)、寄存器區(qū) 內(nèi)部內(nèi)部RAM的前的前32個單元作為通用(工作)寄存器使用,個單元作為通用(工作)寄存器使用, 地址為地址為00H1FH。分為。分為4組,組號依次為組,組號依次為0、1、2、3,每,每 組有組有8個寄存器:個寄存器:R7R0。 任一時刻,任一時刻,cpu只能使用其中的一組寄存器,稱為當(dāng)
25、只能使用其中的一組寄存器,稱為當(dāng)前工作寄存器組,由程序狀態(tài)字寄存器前工作寄存器組,由程序狀態(tài)字寄存器PSW中的中的RS1,RS0位的組合來決定。沒有選中的單元也可作為一般的位的組合來決定。沒有選中的單元也可作為一般的數(shù)據(jù)緩存使用。系統(tǒng)上電復(fù)位時,默認(rèn)選中第數(shù)據(jù)緩存使用。系統(tǒng)上電復(fù)位時,默認(rèn)選中第0組寄存器。組寄存器。 寄存器:寄存器:1、可用、可用8位地址尋址;位地址尋址;2、在指令中既可用名稱表示,也可以使用單元地址表示。、在指令中既可用名稱表示,也可以使用單元地址表示。2、位尋址區(qū)、位尋址區(qū)在工作寄存器后的在工作寄存器后的16個數(shù)據(jù)單元(個數(shù)據(jù)單元(20H2FH),它),它們既可以作為一般
26、的數(shù)據(jù)單元使用,又可以按位對每個單們既可以作為一般的數(shù)據(jù)單元使用,又可以按位對每個單元進(jìn)行操作,因此這元進(jìn)行操作,因此這16個數(shù)據(jù)單元又稱作位尋址區(qū)。位尋個數(shù)據(jù)單元又稱作位尋址區(qū)。位尋址區(qū)共計址區(qū)共計128位,其位地址為位,其位地址為00H7FH。 位地址的表示方式:位地址的表示方式:1 位地址的形式;位地址的形式; 2 存儲單元地址加位的形式。存儲單元地址加位的形式。3. 用戶用戶RAM區(qū)區(qū) 在內(nèi)部在內(nèi)部RAM的低的低128個單元中,剩余的個單元中,剩余的80個數(shù)個數(shù)據(jù)單元即據(jù)單元即30H7FH為真正的用戶為真正的用戶RAM區(qū),對于這區(qū),對于這些區(qū)域,用戶只能以存儲單元的形式來使用,通常些區(qū)
27、域,用戶只能以存儲單元的形式來使用,通常在應(yīng)用中也把堆棧開辟在這段區(qū)域。在應(yīng)用中也把堆棧開辟在這段區(qū)域。2.3.2 內(nèi)部數(shù)據(jù)存儲器高內(nèi)部數(shù)據(jù)存儲器高128單元區(qū)單元區(qū) 內(nèi)部數(shù)據(jù)存儲器的高內(nèi)部數(shù)據(jù)存儲器的高128128個單元是為專用寄存器提供的,個單元是為專用寄存器提供的,因此該區(qū)也稱作特殊功能寄存器區(qū)(因此該區(qū)也稱作特殊功能寄存器區(qū)(SFRSFR),它們主要用),它們主要用于存放于存放控制命令、狀態(tài)或數(shù)據(jù)控制命令、狀態(tài)或數(shù)據(jù)。除去程序計數(shù)器。除去程序計數(shù)器PCPC外,還外,還有有2121個特殊功能寄存器,其地址空間為個特殊功能寄存器,其地址空間為80H80HFFHFFH。這。這2121個個寄存
28、器中有寄存器中有1111個特殊功能寄存器具有位尋址能力,它們的個特殊功能寄存器具有位尋址能力,它們的字節(jié)地址剛好能被字節(jié)地址剛好能被8 8整除。下面將對部分專用寄存器作簡整除。下面將對部分專用寄存器作簡要介紹。要介紹。(1)累加器)累加器A(或(或ACC-ACCumulator) 累加器為累加器為8位寄存器,是程序中最常用的專用寄存器,位寄存器,是程序中最常用的專用寄存器,在指令系統(tǒng)中累加器的助記符為在指令系統(tǒng)中累加器的助記符為A。存放操作數(shù)。大部分單操作數(shù)指令的操作取自累加器,很存放操作數(shù)。大部分單操作數(shù)指令的操作取自累加器,很 多雙操作數(shù)指令的一個操作數(shù)也取自累加器。多雙操作數(shù)指令的一個操
29、作數(shù)也取自累加器。運(yùn)算結(jié)果的暫存單元。加、減乘和除等算術(shù)運(yùn)算指令的運(yùn)運(yùn)算結(jié)果的暫存單元。加、減乘和除等算術(shù)運(yùn)算指令的運(yùn) 算結(jié)果都存放在累加器算結(jié)果都存放在累加器A或或AB寄存器中。寄存器中。數(shù)據(jù)傳送的中轉(zhuǎn)站。數(shù)據(jù)傳送的中轉(zhuǎn)站。在變址尋址方式中累加器被作為變址寄存器使用在變址尋址方式中累加器被作為變址寄存器使用 在在MCS51中由于只有一個累加器,而單片機(jī)中的大部中由于只有一個累加器,而單片機(jī)中的大部分?jǐn)?shù)據(jù)操作都是通過累加器進(jìn)行的,故累加器的使用是十分分?jǐn)?shù)據(jù)操作都是通過累加器進(jìn)行的,故累加器的使用是十分頻繁的。頻繁的。1. 專用寄存器簡介專用寄存器簡介(2(2)B B寄存器(寄存器(B regi
30、sterB register) B B寄存器為寄存器為8 8位寄存器,主要用于乘除指令中。乘法指令的位寄存器,主要用于乘除指令中。乘法指令的兩個操作數(shù)分別取自累加器兩個操作數(shù)分別取自累加器A A和寄存器和寄存器B B,其中,其中B B為乘數(shù),乘法為乘數(shù),乘法結(jié)果的高結(jié)果的高8 8位存放于寄存器位存放于寄存器B B中。除法指令中,被除數(shù)取自中。除法指令中,被除數(shù)取自A A,除數(shù)取自除數(shù)取自B B,除法的結(jié)果商數(shù)存放于,除法的結(jié)果商數(shù)存放于A A,余數(shù)存放于,余數(shù)存放于B B中。在其中。在其它指令中,它指令中,B B寄存器也可作為一般的數(shù)據(jù)單元來使用。寄存器也可作為一般的數(shù)據(jù)單元來使用。(3)程序
31、狀態(tài)字()程序狀態(tài)字(PSW-Program Status Word) 程序狀態(tài)字是一個程序狀態(tài)字是一個8位寄存器,位寄存器,用于寄存指令執(zhí)行的狀態(tài)用于寄存指令執(zhí)行的狀態(tài)信息信息。在狀態(tài)字中,有些位狀態(tài)是根據(jù)指令執(zhí)行結(jié)果,由硬件。在狀態(tài)字中,有些位狀態(tài)是根據(jù)指令執(zhí)行結(jié)果,由硬件自動完成設(shè)置的,而有些狀態(tài)位則必須通過軟件方法設(shè)定。自動完成設(shè)置的,而有些狀態(tài)位則必須通過軟件方法設(shè)定。PSW中的每個狀態(tài)位都可由軟件讀出,中的每個狀態(tài)位都可由軟件讀出,PSW的各位定義如下。的各位定義如下。 位 序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位標(biāo)志CYACF0 RS1
32、RS0 OV/PCY(PSW.7)-進(jìn)位標(biāo)志位進(jìn)位標(biāo)志位 在執(zhí)行某些算術(shù)和邏輯指令時,可以被硬件或軟件置位在執(zhí)行某些算術(shù)和邏輯指令時,可以被硬件或軟件置位或清零。在算術(shù)運(yùn)算中它可作為進(jìn)位標(biāo)志(加法進(jìn)位,減或清零。在算術(shù)運(yùn)算中它可作為進(jìn)位標(biāo)志(加法進(jìn)位,減法借位,在位操作(在位傳送、位與、位或等)中作累加法借位,在位操作(在位傳送、位與、位或等)中作累加器使用,移位操作中用于構(gòu)成循環(huán)移位通路)器使用,移位操作中用于構(gòu)成循環(huán)移位通路) 位 序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位標(biāo)志CYACF0 RS1RS0 OV/PAC(PSW.6)-輔助進(jìn)位標(biāo)志位(
33、半進(jìn)位標(biāo)志位)輔助進(jìn)位標(biāo)志位(半進(jìn)位標(biāo)志位) 進(jìn)行加法或減法操作時,當(dāng)發(fā)生低四位向高四位進(jìn)位進(jìn)行加法或減法操作時,當(dāng)發(fā)生低四位向高四位進(jìn)位或借位時,或借位時,AC由硬件置位,否則由硬件置位,否則AC位被置位被置“0”。在進(jìn)行。在進(jìn)行十進(jìn)制調(diào)整指令時,將借助十進(jìn)制調(diào)整指令時,將借助AC狀態(tài)進(jìn)行判斷。狀態(tài)進(jìn)行判斷。 位 序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位標(biāo)志CYACF0 RS1RS0 OV/PF0 (PSW.6)-用戶標(biāo)志位用戶標(biāo)志位 該位為用戶定義的狀態(tài)標(biāo)記,用戶根據(jù)需要用軟件對該位為用戶定義的狀態(tài)標(biāo)記,用戶根據(jù)需要用軟件對其置位或清零,也可以用
34、軟件測試其置位或清零,也可以用軟件測試F0來控制程序的跳轉(zhuǎn)。來控制程序的跳轉(zhuǎn)。 位 序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位標(biāo)志CYACF0 RS1RS0 OV/PRS1和和RS0(PSW.4和和PSW.3)-寄存器組選擇位寄存器組選擇位 該兩位通過軟件置該兩位通過軟件置“0”或或“1”來選擇當(dāng)前工作寄存器組。來選擇當(dāng)前工作寄存器組。表表2.3 寄存器組選擇寄存器組選擇 位 序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位標(biāo)志CYACF0 RS1RS0 OV/P OV(PSW.2)-溢出標(biāo)志位溢出標(biāo)志位 當(dāng)執(zhí)行算術(shù)
35、指令時,由硬件置位或清零來指示溢出狀態(tài)。當(dāng)執(zhí)行算術(shù)指令時,由硬件置位或清零來指示溢出狀態(tài)。加減運(yùn)算加減運(yùn)算(有無符號數(shù)均可有無符號數(shù)均可)中,中,OV1表示加減運(yùn)算結(jié)果超出了表示加減運(yùn)算結(jié)果超出了累加器累加器A所能表示的符號數(shù)有效范圍(所能表示的符號數(shù)有效范圍(128127),即運(yùn)),即運(yùn)算結(jié)果是錯誤的,反之,算結(jié)果是錯誤的,反之,OV0表示運(yùn)算正確,即無溢出產(chǎn)生。表示運(yùn)算正確,即無溢出產(chǎn)生。 無符號數(shù)乘法指令無符號數(shù)乘法指令MUL的執(zhí)行結(jié)果也會影響溢出標(biāo)志,若的執(zhí)行結(jié)果也會影響溢出標(biāo)志,若置于累加器置于累加器A和寄存器和寄存器B的兩個數(shù)的乘積超過了的兩個數(shù)的乘積超過了255,則,則OV1,反
36、之反之OV0。由于乘積的高。由于乘積的高8位存放于位存放于B中,低中,低8位存放于位存放于A中,中,OV0則意味著只要從則意味著只要從A中取得乘積即可,否則要從中取得乘積即可,否則要從BA寄存器對中寄存器對中取得乘積結(jié)果。取得乘積結(jié)果。 在除法運(yùn)算中,在除法運(yùn)算中,OV=1表示除數(shù)為表示除數(shù)為0,除法不能進(jìn)行;反之,除法不能進(jìn)行;反之,OV=0,除數(shù)不為,除數(shù)不為0,除法可正常進(jìn)行。,除法可正常進(jìn)行。 位 序PSW.7PSW.6PSW.5PSW.4PSW.3PSW.2PSW.1PSW.0位標(biāo)志CYACF0 RS1RS0 OV/PP(PSW.0)-奇偶標(biāo)志位奇偶標(biāo)志位 每個指令周期由硬件來置位或
37、清零用以表示累加器每個指令周期由硬件來置位或清零用以表示累加器A中中1的個數(shù)的奇偶性,若累加器中的個數(shù)的奇偶性,若累加器中1的個數(shù)為奇數(shù)則的個數(shù)為奇數(shù)則P1,否則否則P0。 (4) 數(shù)據(jù)指針數(shù)據(jù)指針DPTR 數(shù)據(jù)指針數(shù)據(jù)指針DPTR為一個為一個16位的專用寄存器,其高位用位的專用寄存器,其高位用DPH表示,其低位用表示,其低位用DPL表示,它既可以作為一個表示,它既可以作為一個16位的位的寄存器來使用,也可作為兩個寄存器來使用,也可作為兩個8位的寄存器位的寄存器DPH和和DPL使使用。用。DPTR在訪問外部數(shù)據(jù)存儲器時既可用來存放在訪問外部數(shù)據(jù)存儲器時既可用來存放16位地位地址,也可作地址指針
38、使用。如址,也可作地址指針使用。如MOVX DPTR,A。 (5) I/O端口端口P0P3 P0P3為四個為四個8位的特殊功能寄存器,分別是四個并行位的特殊功能寄存器,分別是四個并行I/O端口的鎖存器,當(dāng)端口的鎖存器,當(dāng)I/O端口的某一位用作輸入時,對應(yīng)端口的某一位用作輸入時,對應(yīng)的鎖存器必須先置的鎖存器必須先置“1”。 (6) 定時器定時器/計數(shù)器計數(shù)器 在在MCS51中,除中,除8032/8052外都只有兩個外都只有兩個16位定時器位定時器/計數(shù)器計數(shù)器T0和和T1,它們由兩個相互獨(dú)立的,它們由兩個相互獨(dú)立的8位寄存器組成位寄存器組成TH和和TL,共有四個獨(dú)立的寄存器,共有四個獨(dú)立的寄存器
39、TH0、TL0、TH1和和TL1,只可,只可對這四個寄存器獨(dú)立尋址,而不能作為一個對這四個寄存器獨(dú)立尋址,而不能作為一個16位寄存器來尋位寄存器來尋址。址。 (7) 串行數(shù)據(jù)緩沖寄存器串行數(shù)據(jù)緩沖寄存器 串行數(shù)據(jù)緩沖器串行數(shù)據(jù)緩沖器SBUF用于存放將要發(fā)送或已接收的數(shù)據(jù),用于存放將要發(fā)送或已接收的數(shù)據(jù),它由發(fā)送緩沖器和接收緩沖器組成,將要發(fā)送的數(shù)據(jù)被送入它由發(fā)送緩沖器和接收緩沖器組成,將要發(fā)送的數(shù)據(jù)被送入SBUF時進(jìn)入發(fā)送緩沖器,反之進(jìn)入接收緩沖器。時進(jìn)入發(fā)送緩沖器,反之進(jìn)入接收緩沖器。 2. 專用寄存器的單元尋址及位尋址專用寄存器的單元尋址及位尋址 說明:說明: 對專用寄存器只能使用直接尋址
40、方式,在指令中既可使對專用寄存器只能使用直接尋址方式,在指令中既可使用寄存器符號表示,也可使用寄存器地址表示。用寄存器符號表示,也可使用寄存器地址表示。 在在21個可尋址的專用寄存器中,有個可尋址的專用寄存器中,有11個寄存器是可以位個寄存器是可以位尋址的。尋址的。 專用寄存器的專用寄存器的83個可尋址位加上位尋址區(qū)的個可尋址位加上位尋址區(qū)的128個通用位,個通用位,構(gòu)成位處理器的整個數(shù)據(jù)位存儲空間。構(gòu)成位處理器的整個數(shù)據(jù)位存儲空間。3. 程序計數(shù)器程序計數(shù)器PC(Program Counter) PC是一個是一個16位的計數(shù)器。其內(nèi)容為將要執(zhí)行的指令地址,位的計數(shù)器。其內(nèi)容為將要執(zhí)行的指令地
41、址,尋址范圍達(dá)尋址范圍達(dá)64KB。PC有自動加有自動加1功能,以實現(xiàn)程序的順序執(zhí)功能,以實現(xiàn)程序的順序執(zhí)行。行。PC沒有地址,是不可尋址的,因此用戶無法對它進(jìn)行沒有地址,是不可尋址的,因此用戶無法對它進(jìn)行讀寫。但在執(zhí)行轉(zhuǎn)移、調(diào)用、返回等指令時能自動改變其內(nèi)讀寫。但在執(zhí)行轉(zhuǎn)移、調(diào)用、返回等指令時能自動改變其內(nèi)容,以改變程序的執(zhí)行順序。容,以改變程序的執(zhí)行順序。2.3.3 堆棧操作堆棧操作 堆棧是一種數(shù)據(jù)結(jié)構(gòu)。所謂堆棧,就是只允許在其一端堆棧是一種數(shù)據(jù)結(jié)構(gòu)。所謂堆棧,就是只允許在其一端進(jìn)行數(shù)據(jù)插入和數(shù)據(jù)刪除操作的線性表。進(jìn)行數(shù)據(jù)插入和數(shù)據(jù)刪除操作的線性表。 數(shù)據(jù)寫入堆棧稱為入棧(數(shù)據(jù)寫入堆棧稱為入
42、棧(PUSH)。)。 數(shù)據(jù)從堆棧中讀出稱之出棧數(shù)據(jù)從堆棧中讀出稱之出棧(POP)。 數(shù)據(jù)操作規(guī)則:數(shù)據(jù)操作規(guī)則:“后進(jìn)先出后進(jìn)先出”LIFO。即先入棧的數(shù)據(jù)。即先入棧的數(shù)據(jù)由于存放在棧的底部,因此后出棧;而后入棧的數(shù)據(jù)存放在由于存放在棧的底部,因此后出棧;而后入棧的數(shù)據(jù)存放在棧的頂部,因此先出棧。棧的頂部,因此先出棧。1、堆棧的功用、堆棧的功用 堆棧主要是為子程序調(diào)用和中斷操作而設(shè)立的。其具體堆棧主要是為子程序調(diào)用和中斷操作而設(shè)立的。其具體功能有兩個:保護(hù)斷點和保護(hù)現(xiàn)場。功能有兩個:保護(hù)斷點和保護(hù)現(xiàn)場。2、堆棧的開辟、堆棧的開辟 堆棧只能開辟在芯片的內(nèi)部數(shù)據(jù)存儲器中,即所謂的內(nèi)堆棧只能開辟在芯
43、片的內(nèi)部數(shù)據(jù)存儲器中,即所謂的內(nèi)堆棧形式。堆棧形式。3、堆棧指針、堆棧指針 堆棧指針堆棧指針SP(Stack Pointer)的內(nèi)容是堆棧棧頂?shù)拇妫┑膬?nèi)容是堆棧棧頂?shù)拇鎯卧刂?。儲單元地址。SP是一個是一個8位寄存器。位寄存器。說明:系統(tǒng)復(fù)位后,說明:系統(tǒng)復(fù)位后,SP的內(nèi)容為的內(nèi)容為07H,但由于堆棧最好在,但由于堆棧最好在內(nèi)部內(nèi)部RAM的的30H7FH單元中開辟,所以在程序設(shè)計時應(yīng)單元中開辟,所以在程序設(shè)計時應(yīng)注意把注意把SP值初始化為值初始化為30H以后。以后。 圖圖2.4 兩種不同類型的堆棧結(jié)構(gòu)兩種不同類型的堆棧結(jié)構(gòu)4 、堆棧類型、堆棧類型80c51使用向上生長型堆棧,操作規(guī)則如下:使
44、用向上生長型堆棧,操作規(guī)則如下: 進(jìn)棧操作:先進(jìn)棧操作:先SP加加1,后寫入數(shù)據(jù)。,后寫入數(shù)據(jù)。 出棧操作:先讀出數(shù)據(jù)出棧操作:先讀出數(shù)據(jù)v,后,后SP減減1。5. 堆棧使用方式堆棧使用方式堆棧的使用有兩種方式。堆棧的使用有兩種方式。 自動方式:即在調(diào)用子程序或中斷時,返回地址(斷點)自動方式:即在調(diào)用子程序或中斷時,返回地址(斷點)自動進(jìn)棧。程序返回時,斷點再自動彈回自動進(jìn)棧。程序返回時,斷點再自動彈回PC。 指令方式:即使用專用的堆棧操作指令,進(jìn)行進(jìn)出棧操指令方式:即使用專用的堆棧操作指令,進(jìn)行進(jìn)出棧操作。其進(jìn)棧指令為作。其進(jìn)棧指令為PUSH,出棧指令為,出棧指令為POP。例如保護(hù)現(xiàn)場。例
45、如保護(hù)現(xiàn)場就是指令方式進(jìn)行操作。就是指令方式進(jìn)行操作。 2.3.4內(nèi)部程序存儲器內(nèi)部程序存儲器 在在MCS51系列中,程序存儲器被用來存放程序、常數(shù)或系列中,程序存儲器被用來存放程序、常數(shù)或表格等。在表格等。在80C51中,其片內(nèi)有中,其片內(nèi)有4K字節(jié)的字節(jié)的ROM存儲單元,地存儲單元,地址為址為0000H0FFFH。87C51有有4K字節(jié)的字節(jié)的EPROM,而,而80C52和和87C52則有則有8K字節(jié)的片內(nèi)存儲器。字節(jié)的片內(nèi)存儲器。80C31和和80C32無片內(nèi)程無片內(nèi)程序存儲器,所以片內(nèi)程序存儲器的有無是區(qū)分芯片的主要標(biāo)志。序存儲器,所以片內(nèi)程序存儲器的有無是區(qū)分芯片的主要標(biāo)志。 MCS
46、51系列設(shè)置信號引腳系列設(shè)置信號引腳 ,以其電平狀態(tài)來區(qū)分程序以其電平狀態(tài)來區(qū)分程序存儲器的有無。無片內(nèi)程序存儲器,存儲器的有無。無片內(nèi)程序存儲器, 接地,有片內(nèi)程序存儲接地,有片內(nèi)程序存儲器器 , 接高電平。接高電平。 EAEAEA如何工作:如何工作:程序計數(shù)器(程序計數(shù)器(PC),也叫),也叫PC指針,是取指針,是取指地址。上電復(fù)位后內(nèi)容為指地址。上電復(fù)位后內(nèi)容為0000H,即從,即從0000H地地址的指令順序執(zhí)行,最大為址的指令順序執(zhí)行,最大為FFFFH,所以程序空間,所以程序空間為為64K。v 64K64K空間分為片內(nèi)空間分為片內(nèi)ROMROM和片外和片外ROMROM,但統(tǒng)一編址。,但統(tǒng)
47、一編址。 外 部內(nèi) 部(EA=1)外 部(EA=0)00000FFF00000FFF1000FFFF 在在64K的程序存儲器中,有一組保留單元的程序存儲器中,有一組保留單元0000H002AH,其中,其中 0000H0002H為系統(tǒng)的啟動單元。剩為系統(tǒng)的啟動單元。剩下下0003H002AH均勻分為均勻分為 5個特殊的單元,存放個特殊的單元,存放5種種中斷源的中斷地址區(qū):中斷源的中斷地址區(qū): 外部中斷外部中斷0入口地址入口地址 0003H 定時器定時器0中斷中斷入口地址入口地址000BH 外部中斷外部中斷1入口地址入口地址 0013H 定時器定時器1中斷入口地址中斷入口地址001BH 串行口中斷
48、入口地址串行口中斷入口地址 0023H 80C51單片機(jī)具有單片機(jī)具有4個個8位雙向并行端口(位雙向并行端口(P0P3),),共共32根根1/O口線。每一根口線。每一根1/O口線都能獨(dú)立地用作輸入或輸口線都能獨(dú)立地用作輸入或輸出。這出。這4個端口是單片機(jī)與外部設(shè)備進(jìn)行信息(數(shù)據(jù)、地個端口是單片機(jī)與外部設(shè)備進(jìn)行信息(數(shù)據(jù)、地址、控制信號)交換的輸人或輸出通道??梢园醋止?jié)尋址、控制信號)交換的輸人或輸出通道。可以按字節(jié)尋址外,還可以按位尋址。址外,還可以按位尋址。2.4 80C51 單片機(jī)的并行單片機(jī)的并行I/O口口2.4.1 P0口邏輯結(jié)構(gòu)口邏輯結(jié)構(gòu) P0口地址為口地址為80H,位地址為,位地址
49、為80H-87H。P0口各位口線的邏輯結(jié)構(gòu),由一個鎖存器、兩個三態(tài)輸入緩沖器、口各位口線的邏輯結(jié)構(gòu),由一個鎖存器、兩個三態(tài)輸入緩沖器、一個多路復(fù)用開關(guān)以及控制電路和驅(qū)動電路等組成。一個多路復(fù)用開關(guān)以及控制電路和驅(qū)動電路等組成。 P0口可以作為輸入輸出口,在實際應(yīng)用中它通常作為地址口可以作為輸入輸出口,在實際應(yīng)用中它通常作為地址/數(shù)據(jù)復(fù)用總線。在訪問外部存儲器時,數(shù)據(jù)復(fù)用總線。在訪問外部存儲器時,P0口為真正的雙向口口為真正的雙向口.2.4.2 P1口邏輯結(jié)構(gòu)口邏輯結(jié)構(gòu) P1口地址為口地址為90H,位地址為,位地址為90H-97H。只能作為通用數(shù)。只能作為通用數(shù)據(jù)據(jù)I/O口使用,電路邏輯如下圖:
50、口使用,電路邏輯如下圖: P1口是一個準(zhǔn)雙向口,通常作為口是一個準(zhǔn)雙向口,通常作為I/O口使用,由于在其輸口使用,由于在其輸出端接有上拉電阻,故可以直接輸出而無需外接上拉電阻。出端接有上拉電阻,故可以直接輸出而無需外接上拉電阻。2.4.3 P2口邏輯結(jié)構(gòu)口邏輯結(jié)構(gòu) P2口地址為口地址為A0H,位地址為,位地址為A0H-A7H。既可做通用既可做通用I/O口,又可作系統(tǒng)高位地址線,某一位的內(nèi)口,又可作系統(tǒng)高位地址線,某一位的內(nèi)部結(jié)構(gòu)與部結(jié)構(gòu)與P0類似。類似。2.4.4 P3口邏輯結(jié)構(gòu)口邏輯結(jié)構(gòu) P3口地址為口地址為B0H,位地址為,位地址為B0H-B7H。雖然可做通用雖然可做通用I/O口,但在實際
51、應(yīng)用中,它的第二功能信口,但在實際應(yīng)用中,它的第二功能信號更為重要,某一位的內(nèi)部結(jié)構(gòu)如下圖:號更為重要,某一位的內(nèi)部結(jié)構(gòu)如下圖:2.5 80C51 單片機(jī)的時鐘與定時單片機(jī)的時鐘與定時 單片機(jī)本身是一個復(fù)雜的同步時序系統(tǒng),為保證同單片機(jī)本身是一個復(fù)雜的同步時序系統(tǒng),為保證同步工作方式的實現(xiàn),單片機(jī)必須有時鐘信號,以使其系步工作方式的實現(xiàn),單片機(jī)必須有時鐘信號,以使其系統(tǒng)在時鐘信號的控制下按時序協(xié)調(diào)工作。時序是指令執(zhí)統(tǒng)在時鐘信號的控制下按時序協(xié)調(diào)工作。時序是指令執(zhí)行過程中各信號之間的相互時間關(guān)系。行過程中各信號之間的相互時間關(guān)系。 2.5.1 2.5.1 時鐘電路時鐘電路 單片機(jī)的時鐘電路由振蕩
52、電路和分頻電路組成。單片機(jī)的時鐘電路由振蕩電路和分頻電路組成。 1. 振蕩電路振蕩電路 在在80C51芯片內(nèi)部有一個高增益反相放大器,其輸芯片內(nèi)部有一個高增益反相放大器,其輸入端為芯片引腳入端為芯片引腳XTAL1,輸出端為引腳,輸出端為引腳XTAL2,在芯片,在芯片的外部通過這兩個引腳跨接晶體振蕩器和微調(diào)電容,形的外部通過這兩個引腳跨接晶體振蕩器和微調(diào)電容,形成反饋電路,就構(gòu)成了一個穩(wěn)定的自激振蕩器。如圖成反饋電路,就構(gòu)成了一個穩(wěn)定的自激振蕩器。如圖2.9所示。所示。 圖圖2.9 80C51單片機(jī)的振蕩電路單片機(jī)的振蕩電路 電路中的電容一般取電路中的電容一般取30pF左右,而晶體的振蕩頻率范左
53、右,而晶體的振蕩頻率范圍通常是圍通常是1.2MHz33MHz。2. 分頻電路分頻電路 振蕩電路產(chǎn)生的振蕩信號并不直接為單片機(jī)所用,振蕩電路產(chǎn)生的振蕩信號并不直接為單片機(jī)所用,要進(jìn)行分頻,以得到單片機(jī)各種相關(guān)的時鐘信號。要進(jìn)行分頻,以得到單片機(jī)各種相關(guān)的時鐘信號。 3. 晶振頻率晶振頻率 1.233MHz。 晶振頻率高,系統(tǒng)時鐘頻率就高,單片機(jī)運(yùn)行速度就快。晶振頻率高,系統(tǒng)時鐘頻率就高,單片機(jī)運(yùn)行速度就快。 4. 從外部引入脈沖信號驅(qū)動時鐘電路從外部引入脈沖信號驅(qū)動時鐘電路 除了由振蕩電路產(chǎn)生高頻振蕩信號外,還可從外部脈沖除了由振蕩電路產(chǎn)生高頻振蕩信號外,還可從外部脈沖源直接引入。在由多片單片機(jī)
54、組成的系統(tǒng)中,為了各單片機(jī)源直接引入。在由多片單片機(jī)組成的系統(tǒng)中,為了各單片機(jī)之間時鐘信號的同步,引入唯一的外部脈沖信號作為各單片之間時鐘信號的同步,引入唯一的外部脈沖信號作為各單片機(jī)的振蕩脈沖。機(jī)的振蕩脈沖。 2.5.2 定時單位定時單位 時序的定時單位共有時序的定時單位共有4個,從小到大依次是:拍節(jié)、狀個,從小到大依次是:拍節(jié)、狀態(tài)、機(jī)器周期和指令周期。態(tài)、機(jī)器周期和指令周期。 1.振蕩周期振蕩周期 振蕩周期指為單片機(jī)提供定時信號的振蕩源的周期或振蕩周期指為單片機(jī)提供定時信號的振蕩源的周期或外部輸入時鐘的周期,振蕩周期即為拍節(jié)(外部輸入時鐘的周期,振蕩周期即為拍節(jié)(P)。)。2.時鐘周期時
55、鐘周期 時鐘周期又稱作狀態(tài)周期或狀態(tài)時間時鐘周期又稱作狀態(tài)周期或狀態(tài)時間S,它是振蕩周,它是振蕩周期的兩倍,它分為期的兩倍,它分為P1節(jié)拍和節(jié)拍和P2節(jié)拍,通常在節(jié)拍,通常在P1節(jié)拍完成節(jié)拍完成算術(shù)邏輯操作,在算術(shù)邏輯操作,在P2節(jié)拍完成內(nèi)部寄存器之間的傳送操節(jié)拍完成內(nèi)部寄存器之間的傳送操作。作。3.機(jī)器周期機(jī)器周期 一個機(jī)器周期由一個機(jī)器周期由6個狀態(tài)組成,如果把一條指令的執(zhí)行個狀態(tài)組成,如果把一條指令的執(zhí)行過程分作幾個基本操作,則將完成一個基本操作所需的時間過程分作幾個基本操作,則將完成一個基本操作所需的時間稱作機(jī)器周期。單片機(jī)的單周期指令執(zhí)行時間就為一個機(jī)器稱作機(jī)器周期。單片機(jī)的單周期指
56、令執(zhí)行時間就為一個機(jī)器周期。周期。4.指令周期指令周期 指令周期是最大的時序單位,即執(zhí)行一條指令所占用的指令周期是最大的時序單位,即執(zhí)行一條指令所占用的全部時間,通常為全部時間,通常為1個、個、2個、個、 4個機(jī)器周期。個機(jī)器周期。練習(xí)練習(xí)1、一個機(jī)器周期、一個機(jī)器周期= 個振蕩周期個振蕩周期= 個時鐘周期。個時鐘周期。2、在、在MCS51單片機(jī)中,如果采用單片機(jī)中,如果采用6MHz晶振,晶振,1個機(jī)器個機(jī)器 周期為周期為 。2.6 80C51 單片機(jī)的系統(tǒng)復(fù)位單片機(jī)的系統(tǒng)復(fù)位 復(fù)位是單片機(jī)的硬件初始化操作。復(fù)位后,單片機(jī)才能復(fù)位是單片機(jī)的硬件初始化操作。復(fù)位后,單片機(jī)才能開始正常工作。開始正
57、常工作。 RST引腳是復(fù)位信號的輸入端,復(fù)位信號引腳是復(fù)位信號的輸入端,復(fù)位信號是高電平有效,其有效時間應(yīng)持續(xù)是高電平有效,其有效時間應(yīng)持續(xù)2個機(jī)器周期以上。個機(jī)器周期以上。2.6.1 復(fù)位方式與初始化狀復(fù)位方式與初始化狀 1. 復(fù)位方式復(fù)位方式(1)加電復(fù)位:通過專用的復(fù)位電路產(chǎn)生復(fù)位信號。)加電復(fù)位:通過專用的復(fù)位電路產(chǎn)生復(fù)位信號。 開機(jī)加電時,系統(tǒng)自動完成開機(jī)加電時,系統(tǒng)自動完成(2)手動復(fù)位:一次重新啟動操作。)手動復(fù)位:一次重新啟動操作。 (死機(jī)、死循環(huán)或程序(死機(jī)、死循環(huán)或程序“跑飛跑飛”) 在實際應(yīng)用中,總是把加電復(fù)位和手動復(fù)位結(jié)合在一在實際應(yīng)用中,總是把加電復(fù)位和手動復(fù)位結(jié)合在
58、一起,形成一個綜合的復(fù)位電路。起,形成一個綜合的復(fù)位電路。 2. 初始化狀態(tài)復(fù)位后的片內(nèi)狀態(tài)為ALE信號變?yōu)闊o效狀態(tài),信號變?yōu)闊o效狀態(tài), 變?yōu)闊o效狀態(tài),變?yōu)闊o效狀態(tài),ALE=0, =1.PSENPSEN2.6.2 復(fù)位電路復(fù)位電路1. 復(fù)位電路概述復(fù)位電路概述使用過的復(fù)位電路:積分電路型、微分電路型、比較使用過的復(fù)位電路:積分電路型、微分電路型、比較型和看門狗型。常用前兩種。型和看門狗型。常用前兩種。 (1)積分電路型)積分電路型用于產(chǎn)生低電平復(fù)位信號,見下圖。用于產(chǎn)生低電平復(fù)位信號,見下圖。 (2)微分電路型)微分電路型 用于產(chǎn)生高電平復(fù)位信號,見下圖。用于產(chǎn)生高電平復(fù)位信號,見下圖。 2. 80C51 基本復(fù)位電路按健手動復(fù)位有電平方式和脈沖方按健手動復(fù)位有電平方式和脈沖方式兩種。式兩種。上電自動復(fù)位是通過上電自動復(fù)位是通過外部復(fù)位電路的電容外部復(fù)位電路的電容充電來實現(xiàn)的。充電來實現(xiàn)的。按健電平復(fù)位是通過按健電平復(fù)位是通過使復(fù)位端經(jīng)
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 微量泵使用與護(hù)理
- 2-14邏輯函數(shù)的化簡-卡諾圖法3
- 臺州科技職業(yè)學(xué)院《全科醫(yī)學(xué)概論理論》2023-2024學(xué)年第二學(xué)期期末試卷
- 鐵門關(guān)職業(yè)技術(shù)學(xué)院《礦物加工技術(shù)基礎(chǔ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 南京醫(yī)科大學(xué)康達(dá)學(xué)院《學(xué)前兒童游戲與指導(dǎo)》2023-2024學(xué)年第一學(xué)期期末試卷
- 四川省宜賓市翠屏區(qū)2025年初三十月月考化學(xué)試題試卷含解析
- 上海民遠(yuǎn)職業(yè)技術(shù)學(xué)院《物流配送中心設(shè)計》2023-2024學(xué)年第二學(xué)期期末試卷
- 遼寧省阜新二高2025屆高三第二學(xué)期入學(xué)檢測試題試卷英語試題含解析
- 江西生物科技職業(yè)學(xué)院《分子生物學(xué)實驗技術(shù)與原理》2023-2024學(xué)年第二學(xué)期期末試卷
- 江蘇省揚(yáng)州市梅嶺2025屆中考第二次模擬考試語文試題理試題含解析
- 醫(yī)療設(shè)備采購?fù)稑?biāo)方案技術(shù)標(biāo)
- 職業(yè)技術(shù)學(xué)院環(huán)境監(jiān)測技術(shù)專業(yè)人才培養(yǎng)方案
- 核輻射加工技術(shù)在食品安全監(jiān)管中的應(yīng)用
- 教育培訓(xùn)合同糾紛起訴狀模板
- 入職心理測試題目及答案300道
- 英文版中國故事繪本愚公移山
- 聲吶技術(shù)介紹
- 2023廣州美術(shù)學(xué)院附屬中等美術(shù)學(xué)校(廣美附中)入學(xué)招生測試卷數(shù)學(xué)模擬卷
- 國家糧食和物資儲備局招聘考試試題及答案
- 高中物理【實驗:探究向心力大小的表達(dá)式】學(xué)案及練習(xí)題
- 城管整治占道經(jīng)營方案
評論
0/150
提交評論