第1章--MCS-51單片機(jī)分析_第1頁(yè)
第1章--MCS-51單片機(jī)分析_第2頁(yè)
第1章--MCS-51單片機(jī)分析_第3頁(yè)
第1章--MCS-51單片機(jī)分析_第4頁(yè)
第1章--MCS-51單片機(jī)分析_第5頁(yè)
已閱讀5頁(yè),還剩39頁(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)介

1、lMCS-51MCS-51單片機(jī)內(nèi)部結(jié)構(gòu)單片機(jī)內(nèi)部結(jié)構(gòu)l存儲(chǔ)器存儲(chǔ)器l特殊功能寄存器特殊功能寄存器l時(shí)鐘電路和復(fù)位電路時(shí)鐘電路和復(fù)位電路l引腳引腳 內(nèi)內(nèi) 容容 提提 要要 MCS-51MCS-51系列單片機(jī)有多種型號(hào)的產(chǎn)品系列單片機(jī)有多種型號(hào)的產(chǎn)品普通型普通型(5151子系列)子系列) 80318031、8051 8051 、87518751、89C5189C51、89S5189S51等。等。增強(qiáng)型增強(qiáng)型(5252子系列)子系列) 80328032、80528052、87528752、89C5289C52、89S5289S52等。等。 它們的結(jié)構(gòu)基本相同,其主要差別反映在它們的結(jié)構(gòu)基本相同,其

2、主要差別反映在存儲(chǔ)器的配置上。存儲(chǔ)器的配置上。l80318031片內(nèi)沒(méi)有程序存儲(chǔ)器片內(nèi)沒(méi)有程序存儲(chǔ)器l80518051內(nèi)部設(shè)有內(nèi)部設(shè)有4KB4KB的掩模的掩模ROMROM程序存儲(chǔ)器程序存儲(chǔ)器l87518751是將是將80518051片內(nèi)的片內(nèi)的ROMROM換成換成EPROMEPROMl89C5189C51則換成則換成4KB4KB的閃速的閃速EEPROMEEPROMl89S5189S51結(jié)構(gòu)同結(jié)構(gòu)同89C51,4KB89C51,4KB的閃速的閃速EEPROMEEPROM可在可在線編程線編程l增強(qiáng)型的存儲(chǔ)容量為普通型的兩倍增強(qiáng)型的存儲(chǔ)容量為普通型的兩倍 本課以本課以8XX518XX51代表這一系列

3、的單片機(jī)。代表這一系列的單片機(jī)。 51 51系列單片機(jī)內(nèi)部結(jié)構(gòu)如圖系列單片機(jī)內(nèi)部結(jié)構(gòu)如圖1-11-1所示所示圖圖1-1 ( 圖中圖中“/” 兩邊分別為基本型和增強(qiáng)型兩邊分別為基本型和增強(qiáng)型 )P3P1P2 可編程 串行I/O口P0外部中斷基準(zhǔn)頻率源控制 128/256B數(shù)據(jù)存儲(chǔ)器 4KB/8KB程序存儲(chǔ)器 2/3個(gè)16位定時(shí)/計(jì)數(shù)器 振蕩器及 定時(shí)電路 CPU 64KB總線擴(kuò)展控制 可編程并行I/O口內(nèi)部中斷計(jì)數(shù)脈沖串行輸出 串行輸入 CPU CPU是單片機(jī)的核心部件。它由運(yùn)算器和控制是單片機(jī)的核心部件。它由運(yùn)算器和控制器等部件組成。器等部件組成。 1.1.運(yùn)算器運(yùn)算器 運(yùn)算器的功能是運(yùn)算器的

4、功能是 l進(jìn)行算術(shù)運(yùn)算:加、減、乘、除、加進(jìn)行算術(shù)運(yùn)算:加、減、乘、除、加1 1、減、減1 1、比、比較、較、BCDBCD碼十進(jìn)制調(diào)整等碼十進(jìn)制調(diào)整等l邏輯運(yùn)算:與、或、異或、求反、循環(huán)等邏輯操邏輯運(yùn)算:與、或、異或、求反、循環(huán)等邏輯操作作l位操作:內(nèi)部有布爾處理器,它以進(jìn)位標(biāo)志位位操作:內(nèi)部有布爾處理器,它以進(jìn)位標(biāo)志位C C為位累加器,用來(lái)處理位操作??蓪?duì)位置為位累加器,用來(lái)處理位操作。可對(duì)位置 “1 1”、對(duì)位清零、對(duì)位清零 、位判斷等。、位判斷等。 操作結(jié)果的狀態(tài)信息送至狀態(tài)寄存操作結(jié)果的狀態(tài)信息送至狀態(tài)寄存PSWPSW。 MCS-51 MCS-51的儲(chǔ)存器結(jié)構(gòu)與常見(jiàn)的微型計(jì)算機(jī)的配的儲(chǔ)

5、存器結(jié)構(gòu)與常見(jiàn)的微型計(jì)算機(jī)的配置方法不同置方法不同, ,它將程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開(kāi)它將程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開(kāi), ,各各有自己的尋址方式、控制信號(hào)和功能。有自己的尋址方式、控制信號(hào)和功能。 程序存儲(chǔ)器程序存儲(chǔ)器用來(lái)存放程序和始終要保留的常數(shù)。用來(lái)存放程序和始終要保留的常數(shù)。 數(shù)據(jù)存儲(chǔ)器數(shù)據(jù)存儲(chǔ)器存放程序運(yùn)行中所需要的常數(shù)和變量。存放程序運(yùn)行中所需要的常數(shù)和變量。l普林斯頓結(jié)構(gòu):普林斯頓結(jié)構(gòu):程序和數(shù)據(jù)共用一個(gè)存儲(chǔ)器邏輯空程序和數(shù)據(jù)共用一個(gè)存儲(chǔ)器邏輯空間,統(tǒng)一編址。間,統(tǒng)一編址。( (奔騰微機(jī)奔騰微機(jī)) )l哈佛結(jié)構(gòu):哈佛結(jié)構(gòu):程序與數(shù)據(jù)分為兩個(gè)獨(dú)立存儲(chǔ)器邏輯空程序與數(shù)據(jù)分為兩個(gè)獨(dú)立存儲(chǔ)器

6、邏輯空間,分開(kāi)編址間,分開(kāi)編址。(51(51單片機(jī)單片機(jī)) ) 從從物理空間物理空間看看,MCS-51,MCS-51有四個(gè)存儲(chǔ)器地址空間:有四個(gè)存儲(chǔ)器地址空間: 片內(nèi)數(shù)據(jù)存儲(chǔ)器、片外數(shù)據(jù)存儲(chǔ)器片內(nèi)數(shù)據(jù)存儲(chǔ)器、片外數(shù)據(jù)存儲(chǔ)器片內(nèi)程序存儲(chǔ)器、片外程序存儲(chǔ)器片內(nèi)程序存儲(chǔ)器、片外程序存儲(chǔ)器 MCS-51MCS-51存儲(chǔ)器物理結(jié)構(gòu)見(jiàn)下圖所示:存儲(chǔ)器物理結(jié)構(gòu)見(jiàn)下圖所示:外部數(shù)據(jù) 存儲(chǔ)器 (RAM)外部程序 存儲(chǔ)器 (ROM)內(nèi)部程序 存儲(chǔ)器內(nèi)部數(shù)據(jù) 存儲(chǔ)器8XX518XX51MCS-51存儲(chǔ)器物理物理結(jié)構(gòu) 從從邏輯上邏輯上看看,MCS-51,MCS-51有三個(gè)存儲(chǔ)器空間:有三個(gè)存儲(chǔ)器空間:片內(nèi)數(shù)據(jù)存儲(chǔ)器、

7、片外數(shù)據(jù)存儲(chǔ)器片內(nèi)數(shù)據(jù)存儲(chǔ)器、片外數(shù)據(jù)存儲(chǔ)器 片內(nèi)、片外統(tǒng)一編址的程序存儲(chǔ)器片內(nèi)、片外統(tǒng)一編址的程序存儲(chǔ)器 64KB 64KB 程序存儲(chǔ)器程序存儲(chǔ)器128B 128B 片內(nèi)數(shù)據(jù)存儲(chǔ)器片內(nèi)數(shù)據(jù)存儲(chǔ)器64KB 64KB 片外數(shù)據(jù)存儲(chǔ)器片外數(shù)據(jù)存儲(chǔ)器 MCSMCS5151的存儲(chǔ)器的存儲(chǔ)器邏輯結(jié)構(gòu)邏輯結(jié)構(gòu)如圖如圖1-21-2所示。所示。 引腳引腳 EA EA 的接法決定了程序儲(chǔ)存器的的接法決定了程序儲(chǔ)存器的000000000FFFH 4KB0FFFH 4KB地址范圍是在單片機(jī)片內(nèi)還是片外。地址范圍是在單片機(jī)片內(nèi)還是片外。H00000FFFH圖圖1-2 MCS-511-2 MCS-51單片機(jī)的存儲(chǔ)器邏輯

8、結(jié)構(gòu)單片機(jī)的存儲(chǔ)器邏輯結(jié)構(gòu)FFFFH0000H0FFFH 外部 RAM 外部R O M內(nèi)部ROM (EA=1)H00008031外部ROM (EA=0)80511000HFFFFH 特殊功能 寄存器內(nèi)部數(shù)據(jù)存儲(chǔ)器內(nèi)部數(shù)據(jù)存儲(chǔ)器 內(nèi)部數(shù)據(jù) RAM7FH80H00HFFH外部數(shù)據(jù)存儲(chǔ)器外部數(shù)據(jù)存儲(chǔ)器(增強(qiáng)型)程序存儲(chǔ)器程序存儲(chǔ)器 地址重疊注:在注:在5252子系列中,高子系列中,高128128字節(jié)字節(jié)RAMRAM和和SFRSFR的的地址是重疊的,究竟訪問(wèn)哪一塊可通過(guò)不地址是重疊的,究竟訪問(wèn)哪一塊可通過(guò)不同的尋址方式加以區(qū)分,訪問(wèn)高同的尋址方式加以區(qū)分,訪問(wèn)高128128字節(jié)字節(jié)RAMRAM采用寄存

9、器間址,訪問(wèn)采用寄存器間址,訪問(wèn)SFRSFR則只能采用則只能采用直接尋址,訪問(wèn)低直接尋址,訪問(wèn)低128128字節(jié)字節(jié)RAMRAM時(shí),兩種尋時(shí),兩種尋址均可采用。址均可采用。 1.2.1 1.2.1 程序儲(chǔ)存器程序儲(chǔ)存器 程序存儲(chǔ)器用來(lái)存放編制好的始終保留的程序存儲(chǔ)器用來(lái)存放編制好的始終保留的固定程序和表格常數(shù)。程序儲(chǔ)存器以程序計(jì)數(shù)固定程序和表格常數(shù)。程序儲(chǔ)存器以程序計(jì)數(shù)器器PCPC作為地址指針,通過(guò)作為地址指針,通過(guò)1616位地址總線,可尋位地址總線,可尋址的地址空間為址的地址空間為64KB64KB。 在在8051/8751/89C51 8051/8751/89C51 片內(nèi),分別內(nèi)置最低片內(nèi),

10、分別內(nèi)置最低地址空間的地址空間的4KB ROM/EPROM4KB ROM/EPROM程序儲(chǔ)存器(內(nèi)部程程序儲(chǔ)存器(內(nèi)部程序儲(chǔ)存器),而在序儲(chǔ)存器),而在80318031片內(nèi),則無(wú)內(nèi)部程序儲(chǔ)片內(nèi),則無(wú)內(nèi)部程序儲(chǔ)存器,必須外部擴(kuò)展存器,必須外部擴(kuò)展EPROMEPROM。MCS-51MCS-51單片機(jī)中單片機(jī)中64KB64KB內(nèi)、外程序儲(chǔ)存器的地址是統(tǒng)一編排的。內(nèi)、外程序儲(chǔ)存器的地址是統(tǒng)一編排的。 80318031單片機(jī)無(wú)內(nèi)部程序存儲(chǔ)器,地址從單片機(jī)無(wú)內(nèi)部程序存儲(chǔ)器,地址從0000H0000HFFFFHFFFFH都是外部程序存儲(chǔ)空間。都是外部程序存儲(chǔ)空間。 應(yīng)始終應(yīng)始終接地。接地。 對(duì)于內(nèi)部有對(duì)于內(nèi)

11、部有ROMROM的單片機(jī)(的單片機(jī)(5151、5252系列)系列) 引腳接高電平,使程序從內(nèi)部引腳接高電平,使程序從內(nèi)部ROMROM開(kāi)始執(zhí)行。開(kāi)始執(zhí)行。當(dāng)當(dāng)PCPC值超出內(nèi)部值超出內(nèi)部ROMROM的容量時(shí),會(huì)自動(dòng)轉(zhuǎn)向外部的容量時(shí),會(huì)自動(dòng)轉(zhuǎn)向外部程序存儲(chǔ)器空間。外部程序存儲(chǔ)器地址空間為程序存儲(chǔ)器空間。外部程序存儲(chǔ)器地址空間為1000H1000HFFFFHFFFFH。 訪問(wèn)程序存儲(chǔ)器使用訪問(wèn)程序存儲(chǔ)器使用MOVCMOVC指令。指令。EAEAl 程序存儲(chǔ)器中的幾個(gè)特殊地址的使用:程序存儲(chǔ)器中的幾個(gè)特殊地址的使用: 地址地址 用途用途 0000H 0000H 復(fù)位操作后的程序入口復(fù)位操作后的程序入口

12、0003H 0003H 外部中斷外部中斷0 0服務(wù)程序入口服務(wù)程序入口 000BH 000BH 定時(shí)器定時(shí)器0 0中斷服務(wù)程序入口中斷服務(wù)程序入口 0013H 0013H 外部中斷外部中斷1 1服務(wù)程序入口服務(wù)程序入口 001BH 001BH 定時(shí)器定時(shí)器1 1中斷服務(wù)程序入口中斷服務(wù)程序入口 0023H 0023H 串行口中斷服務(wù)程序入口串行口中斷服務(wù)程序入口 由于兩入口地址之間的存儲(chǔ)空間有限,因此在編程由于兩入口地址之間的存儲(chǔ)空間有限,因此在編程時(shí),通常在這些入口地址開(kāi)始的兩三個(gè)地址單元中,放時(shí),通常在這些入口地址開(kāi)始的兩三個(gè)地址單元中,放入一條轉(zhuǎn)移類指令,以使相應(yīng)的程序轉(zhuǎn)到指定的程序存入

13、一條轉(zhuǎn)移類指令,以使相應(yīng)的程序轉(zhuǎn)到指定的程序存儲(chǔ)器區(qū)域中執(zhí)行。儲(chǔ)器區(qū)域中執(zhí)行。1.2.21.2.2 外部數(shù)據(jù)存儲(chǔ)器外部數(shù)據(jù)存儲(chǔ)器l用于存放隨機(jī)讀寫(xiě)的數(shù)據(jù)。用于存放隨機(jī)讀寫(xiě)的數(shù)據(jù)。l外部外部I/OI/O口地址影像區(qū)。口地址影像區(qū)。 MCS-51MCS-51單片機(jī)的外部數(shù)據(jù)存儲(chǔ)器和外部單片機(jī)的外部數(shù)據(jù)存儲(chǔ)器和外部I/OI/O口口實(shí)行統(tǒng)一編址實(shí)行統(tǒng)一編址 ,并使用相同的,并使用相同的 作選通控制作選通控制信號(hào),均使用信號(hào),均使用 MOVXMOVX 指令訪問(wèn)。指令訪問(wèn)。l MCS-51MCS-51單片機(jī)最多可擴(kuò)展單片機(jī)最多可擴(kuò)展64KB64KB外部數(shù)據(jù)存儲(chǔ)器外部數(shù)據(jù)存儲(chǔ)器1.2.3 1.2.3 內(nèi)部數(shù)

14、據(jù)儲(chǔ)存器內(nèi)部數(shù)據(jù)儲(chǔ)存器 內(nèi)部數(shù)據(jù)存儲(chǔ)器是使用最多的地址空間,內(nèi)部數(shù)據(jù)存儲(chǔ)器是使用最多的地址空間,l存放隨機(jī)讀寫(xiě)的數(shù)據(jù)存放隨機(jī)讀寫(xiě)的數(shù)據(jù)l通用寄存器區(qū)通用寄存器區(qū)RD WRl堆棧區(qū)堆棧區(qū)l運(yùn)算操作數(shù)存放區(qū)運(yùn)算操作數(shù)存放區(qū) 指令(算術(shù)運(yùn)算、邏輯運(yùn)算、位操作運(yùn)算指令(算術(shù)運(yùn)算、邏輯運(yùn)算、位操作運(yùn)算等)的操作數(shù)只能在此地址空間或特殊功能寄存等)的操作數(shù)只能在此地址空間或特殊功能寄存器地址空間。器地址空間。內(nèi)部數(shù)據(jù)存儲(chǔ)器的地址分配內(nèi)部數(shù)據(jù)存儲(chǔ)器的地址分配 5151系列單片機(jī)內(nèi)部數(shù)據(jù)存儲(chǔ)器地址范圍為系列單片機(jī)內(nèi)部數(shù)據(jù)存儲(chǔ)器地址范圍為00007FH7FH。各區(qū)域地址見(jiàn)下表。各區(qū)域地址見(jiàn)下表。(1 1)地址)

15、地址 00001FH1FH的前的前3232個(gè)單元稱為寄存器區(qū)個(gè)單元稱為寄存器區(qū)l用途用途: : 作通用寄存器作通用寄存器R0R0R7R7。 R0R0與與R1R1可作間址寄存器使用??勺鏖g址寄存器使用。使用時(shí)應(yīng)注意使用時(shí)應(yīng)注意: 3232個(gè)單元的寄存器區(qū)分為四組,使用時(shí)只能選其中一組個(gè)單元的寄存器區(qū)分為四組,使用時(shí)只能選其中一組寄存器。寄存器。l寄存器的選組由程序狀態(tài)字寄存器的選組由程序狀態(tài)字PSWPSW的的RS1RS1和和RS0RS0位定。位定。 RS1 RS0 RS1 RS0 選寄存器組選寄存器組 0 0 00 0 0組組 0 1 10 1 1組組 1 0 21 0 2組組 1 1 31 1

16、 3組組 l初始化時(shí)或復(fù)位時(shí),自動(dòng)選中初始化時(shí)或復(fù)位時(shí),自動(dòng)選中0 0組。組。l一旦選中一組,其它三組只能作為數(shù)據(jù)存儲(chǔ)器使用,而一旦選中一組,其它三組只能作為數(shù)據(jù)存儲(chǔ)器使用,而不能作為寄存器使用。不能作為寄存器使用。l設(shè)置多組寄存器可以方便保護(hù)現(xiàn)場(chǎng)。設(shè)置多組寄存器可以方便保護(hù)現(xiàn)場(chǎng)。(2 2)20H20H2FH2FH為位地址區(qū)為位地址區(qū) 共共1616個(gè)單元,每單元有八個(gè)位,每位有個(gè)單元,每單元有八個(gè)位,每位有一個(gè)位地址,共一個(gè)位地址,共128128位,位地址范圍為位,位地址范圍為00H00H7FH7FH,該區(qū)既可位尋址,又可字節(jié)尋址。,該區(qū)既可位尋址,又可字節(jié)尋址。 如如 MOV 20HMOV

17、20H,C C ( (這里這里C C是是CyCy進(jìn)位標(biāo)志位),進(jìn)位標(biāo)志位),該指令是將該指令是將CyCy內(nèi)容送內(nèi)容送20H20H位位, ,如果如果CyCy1 1,位,位20H20H值為值為“1 1”。 (3 3)除選中的寄存組以外的存儲(chǔ)器均可以作)除選中的寄存組以外的存儲(chǔ)器均可以作為通用為通用RAMRAM區(qū)區(qū)。 (4 4)堆棧區(qū))堆棧區(qū) 8XX518XX51單片機(jī)的堆棧設(shè)在內(nèi)部單片機(jī)的堆棧設(shè)在內(nèi)部RAMRAM區(qū),深度不大于區(qū),深度不大于128128字節(jié),初始字節(jié),初始化時(shí)化時(shí)SPSP指向指向07H07H。注:對(duì)注:對(duì)5151基本型單片機(jī)只有基本型單片機(jī)只有00H00H7FH7FH單元單元128

18、128字節(jié)的字節(jié)的RAMRAM區(qū)。對(duì)區(qū)。對(duì)5252增強(qiáng)型增強(qiáng)型的單片機(jī)還有的單片機(jī)還有80H80HFFHFFH組成的高組成的高128128字節(jié)字節(jié)RAMRAM區(qū)(共區(qū)(共256256字節(jié)字節(jié)RAM RAM )。)。MCS-51MCS-51單片機(jī)共有單片機(jī)共有2121個(gè)字節(jié)的特殊功能寄存器用英文縮個(gè)字節(jié)的特殊功能寄存器用英文縮寫(xiě)寫(xiě)SFR SFR (Special Fuction RegisterSpecial Fuction Register)表示。)表示。1.1.用途:用途:lA A累加器、狀態(tài)標(biāo)志寄存器累加器、狀態(tài)標(biāo)志寄存器l單片機(jī)內(nèi)部各部件專用的控制、狀態(tài)寄存器單片機(jī)內(nèi)部各部件專用的控制、

19、狀態(tài)寄存器l并行口、串行口影射寄存器并行口、串行口影射寄存器2.2.地址空間:地址空間:l2121個(gè)特殊功能器不連續(xù)的分布在個(gè)特殊功能器不連續(xù)的分布在80H80HFFH 128FFH 128個(gè)字節(jié)個(gè)字節(jié)地址空間,見(jiàn)表地址空間,見(jiàn)表1-21-2。l地址為地址為X0HX0H和和X8HX8H是可位尋址的寄存器,表是可位尋址的寄存器,表1-21-2中用中用“* *”表示。表示。 表表1-21-2中還標(biāo)注了各中還標(biāo)注了各SFRSFR的名稱、字節(jié)地址、的名稱、字節(jié)地址、可尋址位的位地址和位名稱??蓪ぶ肺坏奈坏刂泛臀幻Q。 2121個(gè)特殊功能寄存器的名稱及主要功能介個(gè)特殊功能寄存器的名稱及主要功能介紹如下,

20、詳細(xì)的用法見(jiàn)后面各節(jié)的內(nèi)容。紹如下,詳細(xì)的用法見(jiàn)后面各節(jié)的內(nèi)容。 A A累加器,自帶有全零標(biāo)志累加器,自帶有全零標(biāo)志Z Z,A=0A=0則則Z=1Z=1;A0A0則則Z=0Z=0。該標(biāo)志常用于程序分支轉(zhuǎn)移的判斷。該標(biāo)志常用于程序分支轉(zhuǎn)移的判斷條件。條件。 B B寄存器,常用于乘除法運(yùn)算(見(jiàn)第寄存器,常用于乘除法運(yùn)算(見(jiàn)第2 2章)。章)。 PSWPSW程序狀態(tài)字。主要起著標(biāo)志寄存器的作程序狀態(tài)字。主要起著標(biāo)志寄存器的作用,其用,其8 8位定義見(jiàn)表位定義見(jiàn)表1-31-3。其中其中 CYCY:進(jìn):進(jìn)/ /借位標(biāo)志借位標(biāo)志 反映最高位的進(jìn)位借位情況,加法為進(jìn)位、反映最高位的進(jìn)位借位情況,加法為進(jìn)位、

21、減法為借位。減法為借位。 CY=1CY=1,有進(jìn),有進(jìn)/ /借位借位 ; CY=0CY=0,無(wú)進(jìn),無(wú)進(jìn)/ /借位。借位。 ACAC:輔助進(jìn):輔助進(jìn)/ /借位標(biāo)志借位標(biāo)志 反映高半字節(jié)與低半字節(jié)之間的進(jìn)反映高半字節(jié)與低半字節(jié)之間的進(jìn)/ /借位,借位, AC=1AC=1有進(jìn)有進(jìn)/ /借位;借位; AC=0AC=0無(wú)進(jìn)無(wú)進(jìn)/ /借位借位 。 FOFO:用戶標(biāo)志位??捎捎脩粼O(shè)定其含義。:用戶標(biāo)志位??捎捎脩粼O(shè)定其含義。 RS1RS1,RS0RS0:工作寄存器組選擇位。:工作寄存器組選擇位。 D7 D6 D5 D4 D3 D2 D1 D0 CY AC F0RS1 RS0OV P位地址位名稱 OV OV:

22、溢出標(biāo)志:溢出標(biāo)志 反映補(bǔ)碼運(yùn)算的運(yùn)算結(jié)果有無(wú)溢出反映補(bǔ)碼運(yùn)算的運(yùn)算結(jié)果有無(wú)溢出 有溢出有溢出 OV=1OV=1,無(wú)溢出,無(wú)溢出OV=0OV=0。 - -:無(wú)效位。:無(wú)效位。 P P:奇偶標(biāo)志:奇偶標(biāo)志( (對(duì)累加器對(duì)累加器A A操作后操作后) 運(yùn)算結(jié)果有奇?zhèn)€運(yùn)算結(jié)果有奇?zhèn)€“1 1”,P=1P=1; 運(yùn)算結(jié)果有偶個(gè)運(yùn)算結(jié)果有偶個(gè)“1 1”,P=0P=0。 影響標(biāo)志位的指令及其影響方式見(jiàn)第影響標(biāo)志位的指令及其影響方式見(jiàn)第2 2章。章。 SPSP堆棧指針。堆棧指針。8XX518XX51單片機(jī)的堆棧設(shè)在片單片機(jī)的堆棧設(shè)在片內(nèi)內(nèi)RAMRAM, 對(duì)堆棧的操作包括壓入(對(duì)堆棧的操作包括壓入(PUSHPUS

23、H)和彈出)和彈出(POPPOP)兩種方式,并且遵循后進(jìn)先出的原)兩種方式,并且遵循后進(jìn)先出的原則,但在堆棧生成的方向上則,但在堆棧生成的方向上, ,與與80868086正好相正好相反反,8XX51,8XX51單片機(jī)的堆棧操作遵循先加后壓,單片機(jī)的堆棧操作遵循先加后壓,先彈后減的順序,按字節(jié)進(jìn)行操作。先彈后減的順序,按字節(jié)進(jìn)行操作。 DPTRDPTR數(shù)據(jù)指針寄存器數(shù)據(jù)指針寄存器 用來(lái)存放用來(lái)存放1616位地址值,以便用間接尋位地址值,以便用間接尋址或變址尋址片外存儲(chǔ)器。址或變址尋址片外存儲(chǔ)器。DPTRDPTR可分成可分成DPLDPL和和DPHDPH兩個(gè)兩個(gè)8 8位寄存器分別使用。位寄存器分別使

24、用。P0 P1 P2 P3P0 P1 P2 P3I/OI/O端口寄存器端口寄存器 是四個(gè)并行是四個(gè)并行I/OI/O端口映射入端口映射入SFRSFR中的寄中的寄存器。通過(guò)對(duì)該寄存器的讀存器。通過(guò)對(duì)該寄存器的讀/ /寫(xiě),可實(shí)現(xiàn)從寫(xiě),可實(shí)現(xiàn)從相應(yīng)相應(yīng)I/OI/O端口的輸入端口的輸入/ /輸出。輸出。 例如:指令例如:指令 MOV P1MOV P1,A A實(shí)現(xiàn)了把實(shí)現(xiàn)了把A A累加器累加器中的內(nèi)容從中的內(nèi)容從P1P1端口輸出的操作。指令端口輸出的操作。指令MOV AMOV A,P3P3實(shí)現(xiàn)了把實(shí)現(xiàn)了把P3P3端口線上的信息輸入到端口線上的信息輸入到A A中的中的操作。操作。此外還有如下寄存器,它們將在

25、后面章節(jié)介紹:此外還有如下寄存器,它們將在后面章節(jié)介紹:IPIP中斷優(yōu)先級(jí)控制寄存器。中斷優(yōu)先級(jí)控制寄存器。IEIE中斷允許控制寄存器。中斷允許控制寄存器。 TMODTMOD定時(shí)器定時(shí)器/ /計(jì)數(shù)器方式控制寄存器。計(jì)數(shù)器方式控制寄存器。TCONTCON定時(shí)器定時(shí)器/ /計(jì)數(shù)器控制寄存器。計(jì)數(shù)器控制寄存器。TH0TH0,TL0TL0定時(shí)器定時(shí)器/ /計(jì)數(shù)器計(jì)數(shù)器0 0。TH1TH1,TH1TH1定時(shí)器定時(shí)器/ /計(jì)數(shù)器計(jì)數(shù)器1 1。SCONSCON串行端口控制寄存器。串行端口控制寄存器。SBUFSBUF串行數(shù)據(jù)緩沖器。串行數(shù)據(jù)緩沖器。PCONPCON電源控制寄存器。電源控制寄存器。內(nèi)部振蕩方式內(nèi)

26、部振蕩方式: 在引腳在引腳 XTAL1XTAL1和和 XTAL2XTAL2外外接晶體振蕩器(簡(jiǎn)稱晶振)如接晶體振蕩器(簡(jiǎn)稱晶振)如圖圖1-31-3所示。所示。XTAL1XTAL2GND8XX51C01C01C02C02圖圖1-3 1-3 內(nèi)部振蕩方式內(nèi)部振蕩方式 單片機(jī)的時(shí)鐘信號(hào)用來(lái)提供單片機(jī)內(nèi)各種單片機(jī)的時(shí)鐘信號(hào)用來(lái)提供單片機(jī)內(nèi)各種微操作時(shí)間基準(zhǔn),微操作時(shí)間基準(zhǔn),8XX518XX51單片機(jī)的時(shí)鐘信號(hào)通單片機(jī)的時(shí)鐘信號(hào)通常有兩種電路形式:常有兩種電路形式:內(nèi)部振蕩方式內(nèi)部振蕩方式和和外部振蕩方式外部振蕩方式。 電容器電容器C01C01、C02C02起穩(wěn)定振蕩頻率、快速起振的起穩(wěn)定振蕩頻率、快速

27、起振的作用。電容值一般為作用。電容值一般為 5 530PF30PF。 由于單片機(jī)內(nèi)部有一個(gè)高增益運(yùn)算放大器,當(dāng)外接晶由于單片機(jī)內(nèi)部有一個(gè)高增益運(yùn)算放大器,當(dāng)外接晶振后,就構(gòu)成了自激振蕩器并產(chǎn)生振蕩時(shí)鐘脈沖。振后,就構(gòu)成了自激振蕩器并產(chǎn)生振蕩時(shí)鐘脈沖。8XX51 外部振蕩方式外部振蕩方式是把是把已有的時(shí)鐘信號(hào)引入單已有的時(shí)鐘信號(hào)引入單片機(jī)。這種方式適宜用片機(jī)。這種方式適宜用于使單片機(jī)的時(shí)鐘與外于使單片機(jī)的時(shí)鐘與外部信號(hào)保持一致。外部部信號(hào)保持一致。外部振蕩方式如圖振蕩方式如圖1-41-4所示。所示。 對(duì)對(duì)HMOSHMOS的單片機(jī)(的單片機(jī)(80318031、8031AH8031AH等)外部時(shí)鐘信

28、號(hào)由等)外部時(shí)鐘信號(hào)由XTAL2XTAL2引入,對(duì)于引入,對(duì)于CHMOSCHMOS的單的單片機(jī)(片機(jī)(8XCXX8XCXX),外部時(shí)鐘由),外部時(shí)鐘由XTAL1XTAL1引入。引入。外部外部時(shí)鐘時(shí)鐘XTAL1XTAL2GND8XX51懸空懸空外部外部時(shí)鐘時(shí)鐘XTAL1XTAL2GND懸空懸空CHMOSHMOS圖圖1 14 4外部振蕩方式外部振蕩方式8XX518XX511.4.2 1.4.2 基本時(shí)序單位基本時(shí)序單位單片機(jī)的時(shí)序單位有:?jiǎn)纹瑱C(jī)的時(shí)序單位有:l振蕩周期:晶振的振蕩周期,又稱時(shí)鐘周振蕩周期:晶振的振蕩周期,又稱時(shí)鐘周期,為最小的時(shí)序單位。期,為最小的時(shí)序單位。l狀態(tài)周期:振蕩頻率經(jīng)單

29、片機(jī)內(nèi)的二分頻狀態(tài)周期:振蕩頻率經(jīng)單片機(jī)內(nèi)的二分頻器分頻后提供給片內(nèi)器分頻后提供給片內(nèi)CPUCPU的時(shí)鐘周期。因此,的時(shí)鐘周期。因此,一個(gè)狀態(tài)周期包含一個(gè)狀態(tài)周期包含2 2個(gè)振蕩周期。個(gè)振蕩周期。l機(jī)器周期(機(jī)器周期(MCMC):):1 1個(gè)機(jī)器周期由個(gè)機(jī)器周期由6 6個(gè)狀態(tài)個(gè)狀態(tài)周期即周期即1212個(gè)振蕩周期組成。是計(jì)算機(jī)執(zhí)行個(gè)振蕩周期組成。是計(jì)算機(jī)執(zhí)行一種基本操作的時(shí)間單位。一種基本操作的時(shí)間單位。l指令周期指令周期 執(zhí)行一條指令所需的時(shí)間。一個(gè)指令執(zhí)行一條指令所需的時(shí)間。一個(gè)指令周期由周期由1 14 4個(gè)機(jī)器周期組成,依據(jù)指令不同而不個(gè)機(jī)器周期組成,依據(jù)指令不同而不同。同。 4 4種時(shí)序

30、單位中,振蕩周期和機(jī)器周期是單片機(jī)種時(shí)序單位中,振蕩周期和機(jī)器周期是單片機(jī)內(nèi)計(jì)算其他時(shí)間值(例如,波特率、定時(shí)器的定內(nèi)計(jì)算其他時(shí)間值(例如,波特率、定時(shí)器的定時(shí)時(shí)間等)的基本時(shí)序單位。時(shí)時(shí)間等)的基本時(shí)序單位。 例:?jiǎn)纹瑱C(jī)外接晶振頻率例:?jiǎn)纹瑱C(jī)外接晶振頻率12MHZ12MHZ時(shí)的各種時(shí)序單位:時(shí)的各種時(shí)序單位: 振蕩周期振蕩周期=1/fosc=1/12MHZ=0.0833us=1/fosc=1/12MHZ=0.0833us 狀態(tài)周期狀態(tài)周期=2/fosc=2/12MHZ=0.167us=2/fosc=2/12MHZ=0.167us 機(jī)器周期機(jī)器周期=12/fosc=12/12MHZ=1us=1

31、2/fosc=12/12MHZ=1us 指令周期指令周期=(1=(14)4)機(jī)器周期機(jī)器周期=1=14us4us1.4.3 1.4.3 復(fù)位電路復(fù)位電路l復(fù)位操作則使單片機(jī)的片內(nèi)電路初始化,復(fù)位操作則使單片機(jī)的片內(nèi)電路初始化,使單片機(jī)從一種確定的狀態(tài)開(kāi)始運(yùn)行。使單片機(jī)從一種確定的狀態(tài)開(kāi)始運(yùn)行。l當(dāng)當(dāng)MCS-51MCS-51系列單片機(jī)的復(fù)位引腳系列單片機(jī)的復(fù)位引腳RSTRST出現(xiàn)出現(xiàn) 5ms5ms以上的高電平時(shí),單片機(jī)就完成了復(fù)位以上的高電平時(shí),單片機(jī)就完成了復(fù)位操作。如果操作。如果RSTRST持續(xù)為高電平,單片機(jī)就處持續(xù)為高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài)。于循環(huán)復(fù)位狀態(tài)。l復(fù)位操作通常有復(fù)位操

32、作通常有2 2種基本形式:種基本形式: 上電復(fù)位上電復(fù)位 開(kāi)關(guān)復(fù)位開(kāi)關(guān)復(fù)位 上電后,由于電容充電,使上電后,由于電容充電,使 RSTRST持續(xù)一段高電平時(shí)間。當(dāng)單片持續(xù)一段高電平時(shí)間。當(dāng)單片 機(jī)已在運(yùn)行過(guò)程中時(shí),按下復(fù)位鍵機(jī)已在運(yùn)行過(guò)程中時(shí),按下復(fù)位鍵 也能使也能使 RSTRST持續(xù)一段時(shí)間的高電平,持續(xù)一段時(shí)間的高電平, 從而實(shí)現(xiàn)上電且開(kāi)關(guān)復(fù)位的操作。從而實(shí)現(xiàn)上電且開(kāi)關(guān)復(fù)位的操作。 通常選擇通常選擇C=10C=10 f ,R=10Kf ,R=10K RST8XX51RCVCCVCC 上電復(fù)位上電復(fù)位要求接通電源后,自動(dòng)實(shí)現(xiàn)復(fù)位。要求接通電源后,自動(dòng)實(shí)現(xiàn)復(fù)位。 開(kāi)關(guān)復(fù)位開(kāi)關(guān)復(fù)位要求在電源接通的

33、條件下,在單片機(jī)要求在電源接通的條件下,在單片機(jī)運(yùn)行期間,用接鈕開(kāi)關(guān)操作使單片機(jī)復(fù)位。運(yùn)行期間,用接鈕開(kāi)關(guān)操作使單片機(jī)復(fù)位。 常用的上電且開(kāi)關(guān)復(fù)位電路如圖常用的上電且開(kāi)關(guān)復(fù)位電路如圖1-51-5所示。所示。圖圖1-5 1-5 復(fù)位電路復(fù)位電路 單片機(jī)的復(fù)位操作是使單片機(jī)的復(fù)位操作是使SFRSFR寄存器進(jìn)入初始寄存器進(jìn)入初始化,不改變片內(nèi)化,不改變片內(nèi)RAMRAM區(qū)中的內(nèi)容。區(qū)中的內(nèi)容。 幾個(gè)主要特殊功能寄存器復(fù)位狀態(tài)歸納如下:幾個(gè)主要特殊功能寄存器復(fù)位狀態(tài)歸納如下: lPC=0000HPC=0000H,程序計(jì)數(shù)器為零表明單片機(jī)復(fù)位后程,程序計(jì)數(shù)器為零表明單片機(jī)復(fù)位后程序從序從0000H0000

34、H地址單元開(kāi)始執(zhí)行。地址單元開(kāi)始執(zhí)行。lA=00H,A=00H,表明累加器已被清零。表明累加器已被清零。lPSW=00H,PSW=00H,表明選寄存器表明選寄存器0 0組為工作寄存器組。組為工作寄存器組。lSP=07H,SP=07H,表明堆棧指針指向片內(nèi)表明堆棧指針指向片內(nèi)RAM07HRAM07H單元,根單元,根據(jù)堆棧操作的先加后壓法則,第一個(gè)被壓入的數(shù)據(jù)堆棧操作的先加后壓法則,第一個(gè)被壓入的數(shù)據(jù)被寫(xiě)入據(jù)被寫(xiě)入08H08H單元中。單元中。lP0P0P3=FFHP3=FFH表明已向各端口線寫(xiě)入,表明已向各端口線寫(xiě)入,各端口既可用于輸入又可用于輸出。各端口既可用于輸入又可用于輸出。 記住一些特殊功

35、能寄存器復(fù)位后的主記住一些特殊功能寄存器復(fù)位后的主要狀態(tài),對(duì)于熟悉單片機(jī)操作,減短應(yīng)用要狀態(tài),對(duì)于熟悉單片機(jī)操作,減短應(yīng)用程序中的初始化部分是十分必要的。程序中的初始化部分是十分必要的。 其它的特殊功能寄存器復(fù)位后的狀態(tài)其它的特殊功能寄存器復(fù)位后的狀態(tài)見(jiàn)教材表見(jiàn)教材表1-41-4。各個(gè)引腳的功能說(shuō)明如下。各個(gè)引腳的功能說(shuō)明如下。Vss:Vss:接地端。接地端。Vcc:Vcc:電源端,接電源端,接+5V+5V。XTAL1XTAL1,XTAL2:XTAL2:接外部晶體或接外部晶體或外部時(shí)鐘。外部時(shí)鐘。RST/VPDRST/VPD:復(fù)位信號(hào)輸入。復(fù)位信號(hào)輸入。 8 8XXXX5151單片機(jī)有單片機(jī)有

36、4444引腳的引腳的方形封裝形式和方形封裝形式和4040個(gè)引腳的雙個(gè)引腳的雙列直插式封裝形式,最常用的列直插式封裝形式,最常用的4040個(gè)引腳封裝,見(jiàn)圖個(gè)引腳封裝,見(jiàn)圖1-6.1-6.圖圖1-6 接備用電源,當(dāng)接備用電源,當(dāng)VCCVCC掉電后,在低功耗條件下保持內(nèi)部掉電后,在低功耗條件下保持內(nèi)部RAMRAM中的中的數(shù)據(jù)。數(shù)據(jù)。lALE/PROGALE/PROG: ALEALE地址鎖存允許。地址鎖存允許。ALEALE輸出脈沖的頻率為振蕩頻率的輸出脈沖的頻率為振蕩頻率的1/61/6。 PROGPROG對(duì)對(duì)87518751單片機(jī)片內(nèi)單片機(jī)片內(nèi)EPROMEPROM編程時(shí),編程脈沖由該引腳引入。編程時(shí),

37、編程脈沖由該引腳引入。lPSEN PSEN :程序存儲(chǔ)器允許。輸出讀外部程序存儲(chǔ)器的選通信號(hào)。:程序存儲(chǔ)器允許。輸出讀外部程序存儲(chǔ)器的選通信號(hào)。lEA/VPPEA/VPP: EA =0EA =0,單片機(jī)只訪問(wèn)外部程序存儲(chǔ)器。,單片機(jī)只訪問(wèn)外部程序存儲(chǔ)器。 EA =1EA =1,單片機(jī)訪問(wèn)內(nèi)部程序存儲(chǔ)器。,單片機(jī)訪問(wèn)內(nèi)部程序存儲(chǔ)器。 在在87518751單片機(jī)片內(nèi)單片機(jī)片內(nèi)EPROMEPROM編程期間,此引腳引入編程期間,此引腳引入21V21V編程電源編程電源VPPVPP。lP0.0P0.0P0.7P0.7:P0P0口,數(shù)據(jù)口,數(shù)據(jù)/ /低八位地址復(fù)用總線端口。低八位地址復(fù)用總線端口。lP1.0

38、P1.0P1.7P1.7:P1P1口,靜態(tài)通用端口???,靜態(tài)通用端口。lP2.0P2.0P2.7P2.7:P2P2口,高八位地址總線端口???,高八位地址總線端口。 lP3.0P3.0P3.7P3.7:P3P3口,雙功能靜態(tài)端口???,雙功能靜態(tài)端口。 在在5151系列單片機(jī)的系列單片機(jī)的2051/10512051/1051型號(hào)中因無(wú)型號(hào)中因無(wú)P0P0口和口和P2P2口總線引腳,因此只有口總線引腳,因此只有2020個(gè)引腳(見(jiàn)圖個(gè)引腳(見(jiàn)圖1.71.7),由于不能進(jìn)行外部擴(kuò)展,因此無(wú)),由于不能進(jìn)行外部擴(kuò)展,因此無(wú)PSENPSEN引腳,它們內(nèi)部有一個(gè)模擬比較器,相比較的引腳,它們內(nèi)部有一個(gè)模擬比較器

39、,相比較的模擬信號(hào)由模擬信號(hào)由P1.0P1.0(AIN0AIN0)和)和P1.1P1.1(AIN1AIN1)輸入,)輸入,而模擬比較器的輸出接而模擬比較器的輸出接P3.6P3.6,在內(nèi)部已連接,在內(nèi)部已連接,因此外部無(wú)因此外部無(wú)P3.6P3.6引腳。引腳。 在增強(qiáng)型的在增強(qiáng)型的5252系列單片機(jī)中,系列單片機(jī)中,P1.0P1.0、P1.1P1.1除為端除為端口線外,還為定時(shí)口線外,還為定時(shí)/ /計(jì)數(shù)器計(jì)數(shù)器2 2的外部引腳的外部引腳 T2T2和和T2EXT2EX。圖圖1-7 單片機(jī)是集單片機(jī)是集CPUCPU、存儲(chǔ)器、存儲(chǔ)器、I/OI/O接口于一體的接口于一體的大規(guī)模集成電路芯片。大規(guī)模集成電路芯片。

溫馨提示

  • 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)論