版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第2章MCS-51系列單片機(jī)的硬件結(jié)構(gòu)2.1MCS-51系列單片機(jī)簡(jiǎn)介2.2MCS-51系列單片機(jī)的硬件結(jié)構(gòu)2.3MCS-51系列單片機(jī)的外部引腳及片外總線(xiàn)2.4MCS-51系列單片機(jī)的存儲(chǔ)器結(jié)構(gòu)2.5MCS-51系列單片機(jī)的I/O結(jié)構(gòu)2.6MCS-51系列單片機(jī)的時(shí)鐘電路及時(shí)序2.7MCS-51系列單片機(jī)的工作方式2.8MCS-51系列單片機(jī)的最小系統(tǒng)
2.1MCS-51系列單片機(jī)簡(jiǎn)介
MCS-51系列單片機(jī)的典型芯片是8031、8051、8751。8051內(nèi)部有4KBROM,8751內(nèi)部有4KBEPROM,8031內(nèi)部無(wú)ROM,除此之外,三者的內(nèi)部結(jié)構(gòu)及引腳完全相同。其主要特點(diǎn)如下:
◆具有8位CPU。
◆片內(nèi)帶128B的數(shù)據(jù)存儲(chǔ)器。
◆片內(nèi)帶4KB的程序存儲(chǔ)器。
◆程序存儲(chǔ)器的尋址空間為64KB。
◆片外數(shù)據(jù)存儲(chǔ)器的尋址空間為64KB。
◆具有21個(gè)特殊功能寄存器。◆具有4個(gè)8位的并行I/O接口:P0、P1、P2、P3。
◆具有2個(gè)16位定時(shí)器/計(jì)數(shù)器。
◆有5個(gè)中斷源,這5個(gè)中斷源各有2個(gè)優(yōu)先級(jí)別。
◆具有1對(duì)全雙工的串行接口。
◆采用單一+5V電源。
1.?51子系列和52子系列
MCS-51系列又分為51和52兩個(gè)子系列,如表2.1所示。這兩個(gè)子系列以芯片型號(hào)的最末位數(shù)字作為標(biāo)志。其中,51子系列是基本型,而52子系列則屬增強(qiáng)型。表2.1MCS-51系列單片機(jī)分類(lèi)表
2.單片機(jī)芯片半導(dǎo)體工藝
MCS-51系列單片機(jī)采用兩種半導(dǎo)體工藝生產(chǎn):一種是HMOS工藝,即高速度、高密度、短溝道MOS工藝;另外一種是CHMOS工藝,即互補(bǔ)金屬氧化物的HMOS工藝。表2.1中,芯片型號(hào)中帶有字母“C”的為CHMOS芯片,其余均為一般的HMOS芯片。
CHMOS是CMOS和HMOS的結(jié)合,除保持了HMOS高速度和高密度的特點(diǎn)之外,還具有CMOS低功耗的特點(diǎn)。例如,8051的功耗為630mW,而80C51的功耗只有120mW。在便攜式、手提式或野外作業(yè)儀器設(shè)備上,低功耗是非常有意義的,因此,在這些產(chǎn)品中必須使用CHMOS的單片機(jī)芯片。
3.片內(nèi)ROM存儲(chǔ)器配置形式
MCS-51單片機(jī)片內(nèi)程序存儲(chǔ)器有三種配置形式,即掩膜ROM、EPROM和無(wú)ROM。一般情況下,片內(nèi)帶掩膜型ROM的形式適用于定型大批量應(yīng)用產(chǎn)品的生產(chǎn);片內(nèi)帶EPROM的形式適合于研制產(chǎn)品樣機(jī);外接EPROM的形式適用于研制新產(chǎn)品。近來(lái)推出的51核單片機(jī)片內(nèi)帶Flash閃存,可以在線(xiàn)寫(xiě)入程序。 2.2MCS-51系列單片機(jī)的硬件結(jié)構(gòu)
計(jì)算機(jī)有兩種結(jié)構(gòu):哈佛結(jié)構(gòu)和普林斯頓結(jié)構(gòu)。其中,哈佛結(jié)構(gòu)的程序存儲(chǔ)器與數(shù)據(jù)存儲(chǔ)器分開(kāi),相互獨(dú)立;普林斯頓結(jié)構(gòu)的程序存儲(chǔ)器與數(shù)據(jù)存儲(chǔ)器合二為一,地址空間統(tǒng)一編址。MCS-51單片機(jī)采用哈佛結(jié)構(gòu)。MCS-51系列單片機(jī)的內(nèi)部組成基本相同,主要包括CPU、片內(nèi)ROM、片內(nèi)RAM、定時(shí)器/計(jì)數(shù)器、并行I/O接口、串行口、中斷控制系統(tǒng)和時(shí)鐘電路,如圖2.1所示。
從圖2.1中可以看出,MCS-51單片機(jī)的各功能是通過(guò)內(nèi)部的單一總線(xiàn)連接而成的。下面對(duì)各部分的功能作簡(jiǎn)單介紹。圖2.1MCS-51單片機(jī)結(jié)構(gòu)框圖
1.中央處理器(CPU)
MCS-51單片機(jī)有一個(gè)8位的CPU,與普通的CPU基本相同,同樣包括運(yùn)算器和控制器,還增加了面向控制的處理能力,不僅可以處理字節(jié)數(shù)據(jù),還可以處理位數(shù)據(jù)。
2.內(nèi)部程序存儲(chǔ)器(片內(nèi)ROM)
MCS-51單片機(jī)的典型產(chǎn)品有8031、8051和8751,8031無(wú)ROM,8051共有4KB掩膜ROM,而8751有4KBEPROM,用于存放程序、原始數(shù)據(jù)或表格,因此,稱(chēng)之為程序存儲(chǔ)器,簡(jiǎn)稱(chēng)片內(nèi)ROM。另外,由于采用16位地址總線(xiàn),所以其ROM和RAM均可擴(kuò)展到64KB。
3.內(nèi)部數(shù)據(jù)存儲(chǔ)器(片內(nèi)RAM)
51子系列有256B的RAM單元,但其中高128B被專(zhuān)用寄存器占用,能作為寄存器供用戶(hù)使用的只是低128B,用于存放可讀/寫(xiě)的數(shù)據(jù)。因此通常所說(shuō)的內(nèi)部數(shù)據(jù)存儲(chǔ)器就是指前128B,簡(jiǎn)稱(chēng)片內(nèi)RAM。52子系列的片內(nèi)RAM是256B,其高128B的地址與專(zhuān)用寄存器的地址相同,使用時(shí)通過(guò)指令來(lái)對(duì)其進(jìn)行區(qū)分。
4.定時(shí)器/計(jì)數(shù)器
51子系列共有2個(gè)16位可編程加法定時(shí)器/計(jì)數(shù)器T0和T1,52子系列有3個(gè)16位可編程加法定時(shí)器/計(jì)數(shù)器T0、T1和T2,用于在單片機(jī)應(yīng)用系統(tǒng)中實(shí)現(xiàn)精確定時(shí)或?qū)ν獠渴录?jì)數(shù)。
5.并行I/O接口
MCS-51系列單片機(jī)共有4組8位的并行I/O接口(P0、P1、P2、P3),每個(gè)口既可以作為輸入,又可以作為輸出,以實(shí)現(xiàn)數(shù)據(jù)的并行輸入/輸出。
6.串行口
MCS-51系列單片機(jī)有一個(gè)全雙工的串行口(TXD、RXD),以實(shí)現(xiàn)單片機(jī)之間或單片機(jī)與其它設(shè)備之間的串行數(shù)據(jù)傳送。
2.3MCS-51系列單片機(jī)的外部引腳
及片外總線(xiàn)
HMOS的MCS-51單片機(jī)均采用標(biāo)準(zhǔn)的40引腳雙列直插方式封裝(DIP),如圖2.2(a)所示;CHMOS的MCS-51單片機(jī)除采用DIP外,還采用方形方式封裝,方形方式封裝有44個(gè)引腳,標(biāo)有NC的4個(gè)引腳是無(wú)用引腳,如圖2.2(b)所示。下面介紹雙列直插方式封裝的引腳。圖2.2MCS-51單片機(jī)的引腳
1.電源引腳
Vcc(40引腳):接+5V電源。
Vss(20引腳):接地。
2.輸入、輸出引腳
MCS-51有4組8位雙向并行I/O接口,即P0、P1、P2、P3,每位均由鎖存器、輸出驅(qū)動(dòng)、輸入緩沖和控制電路組成。P0口為3態(tài)雙向口,負(fù)載能力為8個(gè)TTL電路,P1、P2和P3均為準(zhǔn)雙向口,負(fù)載能力為4個(gè)TTL電路。在實(shí)際中,P0口在訪(fǎng)問(wèn)外部存儲(chǔ)器時(shí)由ALE控制,時(shí)分地作為數(shù)據(jù)總線(xiàn)和地址總線(xiàn)的低8位,P2口作地址總線(xiàn)的高8位,P3口可用于特殊功能。
3.時(shí)鐘電路引腳
MCS-51單片機(jī)內(nèi)有一個(gè)由反向放大器構(gòu)成的振蕩電路。XTAL1(19引腳)為振蕩電路的輸入端,XTAL2(18引腳)為振蕩電路的輸出端。MCS-51單片機(jī)可工作于內(nèi)部時(shí)鐘方式,利用片內(nèi)振蕩電路,在XTAL2和XTAL1引腳上外接電容和石英晶振與內(nèi)部振蕩電路組成并聯(lián)諧振電路,也可工作于外部時(shí)鐘方式,將外部時(shí)鐘信號(hào)加到XTAL2引腳,將XTAL1引腳接地。外部時(shí)鐘方式用于將多片單片機(jī)同步。
4.控制引腳
(1)?RST/Vpd(9引腳):RST是復(fù)位信號(hào)輸入端,高電平有效。當(dāng)持續(xù)輸入兩個(gè)機(jī)器周期以上的高電平時(shí)此引腳有效,可完成單片機(jī)的復(fù)位初始化操作。
Vpd為本引腳的第二功能,是備用電源輸入端。當(dāng)電源發(fā)生故障,電壓降低到下限值時(shí),備用電源經(jīng)此端向內(nèi)部RAM提供電壓,以保護(hù)內(nèi)部RAM中的信息不丟失。
(2)?ALE/(AddressLatchEnable/Programming,30引腳):ALE為地址鎖存控制信號(hào)。在系統(tǒng)擴(kuò)展后,訪(fǎng)問(wèn)外部存儲(chǔ)器時(shí),ALE用于控制把P0口輸出的低8位地址鎖存起來(lái),以實(shí)現(xiàn)低位地址和數(shù)據(jù)的隔離。此外,由于ALE以晶振的固定頻率的1/6輸出脈沖(可以檢測(cè)芯片的好壞),因此,可作為外部時(shí)鐘或外部定時(shí)脈沖使用,其可負(fù)載8個(gè)TTL電路。
Vpp是此引腳的第二功能,在對(duì)8751片內(nèi)EPROM固化程序時(shí),需要在此引腳加上12V~21V的編程電壓。
5.?P3口線(xiàn)的第二功能
P3口的8條口線(xiàn)都定義有第二功能,詳細(xì)功能如表2.2所示。通常情況下,P3口都作為第二功能使用,如果在系統(tǒng)中用不到第二功能,則P3可作為通用I/O口使用。表2.2P3口各引腳與第二功能表
2.4MCS-51系列單片機(jī)的存儲(chǔ)器結(jié)構(gòu)
MCS-51單片機(jī)采用哈佛結(jié)構(gòu),其存儲(chǔ)器分為程序存儲(chǔ)器(ROM)和數(shù)據(jù)存儲(chǔ)器(RAM),有四個(gè)物理上相互獨(dú)立的存儲(chǔ)空間,即片內(nèi)ROM、片外ROM、片內(nèi)RAM和片外RAM。從邏輯上(即用戶(hù)編程的角度)講,51單片機(jī)的存儲(chǔ)系統(tǒng)又可分為三個(gè)存儲(chǔ)空間,既片內(nèi)RAM,片外RAM和片內(nèi)、外統(tǒng)一編址的程序存儲(chǔ)器ROM,其配置圖如圖2.3所示。圖2.3MCS-51的存儲(chǔ)器配置
1.程序存儲(chǔ)器
程序存儲(chǔ)器ROM用來(lái)存放編好的程序、常數(shù)和表格,分為片內(nèi)、片外兩大部分,即片內(nèi)ROM和片外ROM。按生產(chǎn)工藝分,ROM又可以分為以下幾種:
(1)掩膜ROM:其存儲(chǔ)的信息在芯片制造過(guò)程中采用一道掩膜工藝生成,一旦出廠(chǎng),信息就不可改變。
(2)可編程只讀存儲(chǔ)器PROM:其存儲(chǔ)的信息可由用戶(hù)一次性寫(xiě)入,但只能寫(xiě)入一次。
(3)可擦除只讀存儲(chǔ)器:用戶(hù)可以多次擦除其存儲(chǔ)的信息,并可用專(zhuān)用的編程器重新寫(xiě)入新的信息??刹脸蛔x存儲(chǔ)器又可分為紫外線(xiàn)擦除的EPROM、電擦除的E2PROM和FlashROM。
ROM通過(guò)16位程序計(jì)數(shù)器(PC)尋址,尋址范圍為64KB。程序存儲(chǔ)器的使用如圖2.4所示。圖2.4MCS-51的程序存儲(chǔ)器的使用
另外,片內(nèi)ROM有七個(gè)單元具有特定功能。編程者是不能隨意使用的。第一個(gè)是0000H單元,系統(tǒng)上電復(fù)位后,程序計(jì)數(shù)器(PC)指向0000H~0002H單元,單片機(jī)從0000H單元開(kāi)始取指令執(zhí)行程序,如果程序不從0000H單元開(kāi)始,則應(yīng)在這三個(gè)單元中存放一條無(wú)條件轉(zhuǎn)移指令,以便直接轉(zhuǎn)去執(zhí)行指定的程序。另外6個(gè)存儲(chǔ)單元對(duì)應(yīng)于中斷服務(wù)程序的入口地址,具體應(yīng)用如表2.3所示。表2.3中斷入口地址
2.片內(nèi)數(shù)據(jù)存儲(chǔ)器
數(shù)據(jù)存儲(chǔ)器RAM可以進(jìn)行多次信息寫(xiě)入和讀出,每次寫(xiě)入后,原來(lái)的信息將被新寫(xiě)入的信息所取代。另外,RAM在斷電后再通電時(shí),原來(lái)存儲(chǔ)的信息全部丟失。它主要用來(lái)存放臨時(shí)的數(shù)據(jù)和程序。RAM無(wú)論在物理上還是邏輯上都分為兩個(gè)地址空間,即片內(nèi)RAM(256B)(0000H~00FFH)和片外RAM(64KB)(0000H~FFFFH)。這兩部分在編址和訪(fǎng)問(wèn)方式上各不相同。片內(nèi)數(shù)據(jù)存儲(chǔ)器按功能可分為內(nèi)部數(shù)據(jù)RAM和特殊功能寄存器(SpecialFunctionRegister,SFR)。對(duì)51子系列,前者有128B,地址為00H~7FH,后者也為128B,地址為80H~7FH;對(duì)52子系列,前者有256B,地址為00H~FFH,后者有128B,地址為80H~FFH,兩者后128B地址重疊,訪(fǎng)問(wèn)時(shí)通過(guò)不同的指令區(qū)分。低128B按其用途劃分為工作寄存器區(qū)、位尋址區(qū)和用戶(hù)RAM區(qū)三個(gè)區(qū)域。MCS-51單片機(jī)(52子系列)片內(nèi)數(shù)據(jù)存儲(chǔ)器配置如圖2.5所示。圖2.5MCS-51單片機(jī)(52子系列)片內(nèi)數(shù)據(jù)存儲(chǔ)器配置圖
1)工作寄存器區(qū)
工作寄存器又稱(chēng)通用寄存器,用于臨時(shí)寄存信息。工作寄存器區(qū)共有4組寄存器,每組8B,總共32B,各組都以R0~R7作寄存單元編號(hào)。4組通用寄存器占據(jù)內(nèi)部RAM的00H~1FH單元地址。寄存器常用于存放操作數(shù)中間結(jié)果等。由于它們的功能及使用不作預(yù)先規(guī)定,因此稱(chēng)為通用寄存器,有時(shí)也叫工作寄存器。任一時(shí)刻,CPU只能使用其中的一組寄存器,并且把正在使用的那組寄存器稱(chēng)為當(dāng)前寄存器組。到底是哪一組,由程序狀態(tài)字寄存器PSW中RS1、RS0位的狀態(tài)組合來(lái)決定,如表2.4所示。通用寄存器為CPU提供了就近存儲(chǔ)數(shù)據(jù)的便利,有利于提高單片機(jī)的運(yùn)算速度。表2.4寄?存?器?組
2)位尋址區(qū)
片內(nèi)RAM低128B的20H~2FH單元有16個(gè)RAM單元,共128位,既可作為一般RAM來(lái)使用,進(jìn)行字節(jié)操作,也可以對(duì)單元中每一位進(jìn)行位操作,因此把該區(qū)稱(chēng)為位尋址區(qū),位地址范圍為00H~7FH,如表2.5所示。表2.5位尋址區(qū)的位地址
3)用戶(hù)RAM區(qū)
片內(nèi)RAM低128B中通用寄存器占32B,位尋址區(qū)占去16B,剩下80B其地址為30H~7FH,這就是供用戶(hù)使用的一般RAM區(qū),稱(chēng)為用戶(hù)RAM區(qū)。對(duì)用戶(hù)RAM區(qū)的使用,沒(méi)有任何規(guī)定或限制,但一般把堆棧開(kāi)辟在此區(qū)中。
4)特殊功能寄存器區(qū)
片內(nèi)RAM的高128B(80H~FFH)是專(zhuān)用寄存器區(qū),它們的功能已作專(zhuān)門(mén)規(guī)定,稱(chēng)為專(zhuān)用寄存器(SpecialFunctionRegister)或特殊功能寄存器。特殊功能寄存器離散地分布在80H~FFH的RAM空間中,它們的地址不連續(xù),空閑地址無(wú)意義,對(duì)用戶(hù)來(lái)講,這些單元是不存在的。對(duì)特殊功能寄存器,只能使用直接尋址方式,書(shū)寫(xiě)時(shí)既可使用寄存器符號(hào),也可使用寄存器單元地址。特殊功能寄存器用來(lái)設(shè)定單片機(jī)內(nèi)部各個(gè)部件的工作方式,存放相關(guān)部件的狀態(tài)等,不能作為普通的RAM來(lái)使用。
51子系列共有18個(gè)SFR,其中3個(gè)為雙字節(jié),共占用21B;52子系列有21個(gè)SFR,其中5個(gè)為雙字節(jié),共占用26B。SFR的名稱(chēng)、符號(hào)及地址如表2.6所示。表2.6特殊功能寄存器一覽表下面介紹幾個(gè)常用的特殊功能寄存器,其余的特殊功能寄存器將在后緒章節(jié)中介紹。
(1)程序計(jì)數(shù)器(PC,ProgramCounter)。PC是一個(gè)16位的計(jì)數(shù)器,它的作用是控制程序的執(zhí)行順序,其內(nèi)容為將要執(zhí)行指令的地址,尋址范圍達(dá)64KB。PC有自動(dòng)加1功能,可實(shí)現(xiàn)程序的順序執(zhí)行。PC沒(méi)有地址,是不可尋址的,因此用戶(hù)無(wú)法對(duì)它進(jìn)行讀/寫(xiě),但可以通過(guò)轉(zhuǎn)移、調(diào)用、返回等指令改變其內(nèi)容,以實(shí)現(xiàn)程序的轉(zhuǎn)移。因地址不在SFR(專(zhuān)用寄存器)之內(nèi),所以一般不將PC計(jì)作專(zhuān)用寄存器。
(2)累加器(A,Accumulator)。A為8位寄存器,它既可用于存放操作數(shù),也可用來(lái)存放運(yùn)算的中間結(jié)果。MCS-51單片機(jī)中大部分單操作數(shù)指令的操作數(shù)就取自累加器,許多雙操作數(shù)指令中的一個(gè)操作數(shù)也取自累加器。
(3)?B寄存器。B寄存器是一個(gè)8位寄存器,主要用于乘除運(yùn)算。乘法運(yùn)算時(shí),B存乘數(shù),A放被乘數(shù),乘法操作后,乘積的高8位存于B中,低8位放于A中;除法運(yùn)算時(shí),A存被除數(shù),B存除數(shù),除法操作后,商存于A中,余數(shù)存于B中。此外,B寄存器也可作為一般數(shù)據(jù)寄存器使用。
(4)程序狀態(tài)字(PSW,ProgramStatusWord)。PSW是一個(gè)8位寄存器,用于存放程序運(yùn)行中的各種狀態(tài)信息。其中有些位的狀態(tài)是根據(jù)程序執(zhí)行結(jié)果由硬件自動(dòng)設(shè)置的,而有些位的狀態(tài)則使用軟件方法設(shè)定。PSW各位的定義如表2.7所示。表2.7程序狀態(tài)字PSW的位定義
(5)數(shù)據(jù)指針(DPTR)。DPTR為16位寄存器,用于存放16位的地址,以便對(duì)片外64KB的RAM間接尋址。DPTR通常在訪(fǎng)問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)作地址指針使用。編程時(shí),DPTR既可以按16位寄存器使用,也可以按兩個(gè)8位寄存器分開(kāi)使用,即DPH是DPTR的高8位字節(jié),DPL是DPTR的低8位字節(jié)。
(6)堆棧指針(SP,StackPointer)。SP是一個(gè)特殊的存儲(chǔ)區(qū),用來(lái)暫存數(shù)據(jù)和地址,它是按“先進(jìn)后出”的原則存取數(shù)據(jù)的。堆棧共有兩種操作:入棧和出棧。SP是一個(gè)8位寄存器,系統(tǒng)上電復(fù)位后,SP的內(nèi)容為07H,從而復(fù)位后堆棧實(shí)際上是從08H單元開(kāi)始的。但08H~1FH單元分別屬于工作寄存器1~3區(qū),所以一般在內(nèi)部RAM的30H~7FH單元中開(kāi)辟堆棧。
(7)并行端口P0~P3。P0~P3是4個(gè)8位特殊功能寄存器,實(shí)際上就是I/O端口的數(shù)據(jù)鎖存器。與RAM中的任意一個(gè)單元一樣,P0~P3都有自己的地址:80H、90H、A0H、B0H。所以,在MCS-51單片機(jī)中的輸入、輸出操作實(shí)際上與普通的RAM單元的操作一樣。
(8)串行數(shù)據(jù)緩沖器(SBUF)。SBUF用來(lái)存放要發(fā)送或已接收的數(shù)據(jù),實(shí)際上它是兩個(gè)獨(dú)立的寄存器。盡管在RAM中地址只是99H,但根據(jù)指令“發(fā)送”或“接收”兩種不同的操作,硬件會(huì)自動(dòng)區(qū)分并將數(shù)據(jù)送入對(duì)應(yīng)的發(fā)送或接收緩沖單元。
(9)定時(shí)器/計(jì)數(shù)器T0、T1。51子系列內(nèi)部有兩個(gè)定時(shí)器/計(jì)數(shù)器T0和T1,52子系列有3個(gè)定時(shí)器/計(jì)數(shù)器T0、T1和T2。無(wú)論是定時(shí)還是計(jì)數(shù),對(duì)于MCS-51單片機(jī)的定時(shí)器/計(jì)數(shù)器來(lái)說(shuō),都是計(jì)數(shù)器在計(jì)數(shù)。每個(gè)計(jì)數(shù)器是由兩個(gè)8位寄存器(高位字節(jié)和低位字節(jié))構(gòu)成的16位計(jì)數(shù)器,分別是TH0、TL0(T0),TH1、TL1(T1),TH2、TL2(T2)。
3.片外數(shù)據(jù)存儲(chǔ)器
MCS-51單片機(jī)片內(nèi)有128B或256B的數(shù)據(jù)存儲(chǔ)器,但數(shù)據(jù)存儲(chǔ)器不夠用時(shí),可擴(kuò)展外部數(shù)據(jù)存儲(chǔ)器,擴(kuò)展的外部數(shù)據(jù)存儲(chǔ)器最多為64KB,地址范圍是0000H~FFFFH。片外RAM采用間接尋址方式,可以用R0、R1或DPTR作為間接寄存器,P0、P1發(fā)送地址碼,P0接收或發(fā)送數(shù)據(jù)。 2.5MCS-51系列單片機(jī)的I/O結(jié)構(gòu)
1.?P0口
P0口是8位漏極開(kāi)路的三態(tài)雙向輸入/輸出口,其中某一位的結(jié)構(gòu)圖如圖2.6所示,它由一個(gè)輸出鎖存器(D型觸發(fā)器)、兩個(gè)三態(tài)緩沖器(控制讀引腳或讀鎖存器)、一個(gè)輸出驅(qū)動(dòng)電路和一個(gè)輸出控制電路組成。輸出驅(qū)動(dòng)電路由一對(duì)場(chǎng)效應(yīng)管FET組成,輸出控制電路由一個(gè)與門(mén)、一個(gè)多路開(kāi)關(guān)MUX和一個(gè)反相器等元件組成。圖2.6P0口某位結(jié)構(gòu)圖
P0口有下列6個(gè)特點(diǎn):
(1)可作I/O口或數(shù)據(jù)/地址總線(xiàn)使用。
(2)作通用數(shù)據(jù)I/O端口時(shí),輸出級(jí)上端的FET處于截止?fàn)顟B(tài),所以必須接“上拉電阻”,否則不能正確地輸出高電平。
(3)在輸入操作前,為了保證輸入正確,必須先向端口寫(xiě)“1”。
(4)“讀引腳”與“讀鎖存器”是不同的兩個(gè)數(shù)據(jù)通道。凡是“讀—修改—寫(xiě)”的操作,CPU讀的都是端口鎖存器中的數(shù)據(jù)。
(5)為了提高電路的可靠性,端口引腳不要直接與三極管一類(lèi)的器件連接,應(yīng)加隔離電路或在其與三極管之間加一個(gè)電阻。
(6)在總線(xiàn)方式下,P0口不能再作通用的I/O端口,它分時(shí)輸出地址/數(shù)據(jù)總線(xiàn)的信息(此時(shí)引腳不用外接上拉電阻)。
2.?P1口
P1口是8位帶有內(nèi)部上拉電阻的準(zhǔn)雙向輸入/輸出接口,只能作為通用I/O口,不能作為地址/數(shù)據(jù)總線(xiàn)使用。P1口某位結(jié)構(gòu)圖如圖2.7所示。該電路在結(jié)構(gòu)上與P0口有一些不同之處:首先它不需要多路開(kāi)關(guān)MUX;其次它的內(nèi)部有上拉電阻,與一個(gè)場(chǎng)效應(yīng)管V1構(gòu)成輸出驅(qū)動(dòng)電路,所以P1口作為輸出口使用時(shí),內(nèi)部有上拉電阻,能向外提供推拉負(fù)載電流,無(wú)需再外接上拉電阻。當(dāng)P1口作為輸入口使用時(shí),同樣也需由軟件先向其鎖存器寫(xiě)“1”,使輸出驅(qū)動(dòng)電路的V1截止。圖2.7P1口某位結(jié)構(gòu)圖
3.?P2口
P2口也是8位帶有內(nèi)部上拉電阻的準(zhǔn)雙向輸入/輸出接口。它有兩種用途:通用I/O口和片外存儲(chǔ)器高8位地址線(xiàn)。P2口某位結(jié)構(gòu)圖如圖2.8所示,P2口比P1口多了一個(gè)多路選通MUX和非門(mén)G3。圖2.8P2口某位結(jié)構(gòu)圖
4.?P3口
P3口某位的結(jié)構(gòu)如圖2.9所示,與其它口相比,區(qū)別在于與非門(mén)G3和緩沖器G4。與非門(mén)G3的作用實(shí)際是一個(gè)功能開(kāi)關(guān),即當(dāng)W為“1”時(shí),輸出Q端的信號(hào),當(dāng)Q為“1”時(shí),輸出W端的信號(hào)。圖2.9P3口某位結(jié)構(gòu)圖
5.端口的使用
作為通用I/O口時(shí),P0的負(fù)載能力為8個(gè)TTL負(fù)載,P1、P2和P3口的負(fù)載能力均為4個(gè)TTL負(fù)載,所以并行端口在與大電流負(fù)載連接時(shí)應(yīng)注意“拉電流”還是“灌電流”兩種方式。使用灌電流的方式與電流較大的負(fù)載直接連接時(shí),端口可以吸收約20mA的電流,從而保證端口電平不高于0.45V,如圖2.10(a)所示。圖2.10端口的工作方式采用拉電流方式連接負(fù)載時(shí),AT89C51所能提供的“拉電流”僅僅為80μA,否則輸出的高電平會(huì)急劇下降。如果我們采用圖2.10(b)所示的方式,向端口輸出一個(gè)高電平去點(diǎn)亮LED,則會(huì)發(fā)現(xiàn)端口輸出的電平不是“1”,而是“0”。當(dāng)然,不是所有的單片機(jī)都是這樣的,PIC單片機(jī)就可以提供30mA的拉電流和灌電流。對(duì)于大多數(shù)IC電路,最好還是使用“灌電流”去推動(dòng)負(fù)載。
AT89C51的端口可以吸收約20mA的電流。對(duì)于繼電器等大功率的負(fù)載,可以采用如圖2.11(a)所示的接法,即用一個(gè)三極管來(lái)承擔(dān)負(fù)載所需的大電流。在負(fù)載電流易造成干擾的環(huán)境中,應(yīng)采用如圖2.11(b)所示的“光電隔離”的方式。圖2.11并行端口的應(yīng)用方式2.6MCS-51系列單片機(jī)的時(shí)鐘電路及時(shí)序
2.6.1時(shí)鐘電路
在MCS-51芯片內(nèi)部有一個(gè)高增益反相放大器,可構(gòu)成內(nèi)部自激振蕩電路,其輸入端為芯片引腳XTAL1(19引腳),其輸出端為引腳XTAL2(18引腳)。MCS-51的振蕩電路有以下兩種形式。
1.內(nèi)部時(shí)鐘方式
內(nèi)部時(shí)鐘方式是指在XTAL1和XTAL2之間跨接晶體振蕩器和微調(diào)電容,與內(nèi)部振蕩電路組成并聯(lián)諧振電路,構(gòu)成穩(wěn)定的自激振蕩器,如圖2.12(a)所示。晶體振蕩器的振蕩頻率決定單片機(jī)的時(shí)鐘頻率。一般地,電容C1和C2取5pF~30pF。對(duì)外接電容的值雖然沒(méi)有嚴(yán)格的要求,但電容的大小會(huì)影響振蕩器的頻率高低、振蕩器的穩(wěn)定性和起振速度。晶體的振蕩頻率范圍一般是6MHz~24MHz。晶體振蕩頻率高,則系統(tǒng)的時(shí)鐘頻率也高,單片機(jī)運(yùn)行速度就快,同時(shí)對(duì)存儲(chǔ)器的速度要求就高,對(duì)印刷電路板的工藝要求也高,即要求線(xiàn)間寄生電容要小。實(shí)際應(yīng)用中,為了保證電路的穩(wěn)定性,晶振和電容應(yīng)靠近單片機(jī)芯片引腳,以減少寄生電容。MCS-51單片機(jī)在通常應(yīng)用情況下,使用的振蕩頻率為11.0592MHz或12MHz。隨著集成電路制造工藝的發(fā)展,單片機(jī)的時(shí)鐘頻率也在逐步提高,目前某些單片機(jī)的時(shí)鐘頻率可達(dá)到40MHz。
2.外部時(shí)鐘方式
在由多片單片機(jī)組成的系統(tǒng)中,為了保證各單片機(jī)之間時(shí)鐘信號(hào)的同步,引入唯一的公用外部脈沖信號(hào)作為各單片機(jī)的振蕩脈沖。這時(shí)外部的脈沖信號(hào)接至XTAL2引腳,而XTAL1接地,如圖2.12(b)所示,這就是外部時(shí)鐘方式。由于XTAL2端的邏輯電平不是TTL電平,所以接一個(gè)上拉電阻。圖2.12MCS-51單片機(jī)的時(shí)鐘電路2.6.2時(shí)序
1.時(shí)鐘周期和狀態(tài)周期
時(shí)鐘周期就是振蕩電路的振蕩周期,其值由外接晶體或外部輸入的時(shí)鐘來(lái)決定,在內(nèi)部時(shí)鐘的工作方式下,其值為石英晶振頻率(時(shí)鐘頻率)的倒數(shù)。例如,單片機(jī)外接1MHz的晶振,則單片機(jī)的系統(tǒng)時(shí)鐘的頻率為1MHz,時(shí)鐘周期為1
s。
通常將時(shí)鐘周期稱(chēng)為節(jié)拍(用P表示)。時(shí)鐘周期經(jīng)過(guò)二分頻后,就是單片機(jī)的時(shí)鐘信號(hào)的周期,通常將其定義為狀態(tài)周期(用S表示)。所以,一個(gè)狀態(tài)就包含兩個(gè)節(jié)拍(時(shí)鐘周期),前半周期對(duì)應(yīng)的節(jié)拍叫節(jié)拍1(P1),后半周期對(duì)應(yīng)的節(jié)拍叫節(jié)拍2(P2),如圖2.13所示。
2.機(jī)器周期
MCS-51單片機(jī)的一個(gè)機(jī)器周期為6個(gè)狀態(tài)周期,并依次表示為S1~S6。由于一個(gè)狀態(tài)又包括兩個(gè)節(jié)拍,因此,一個(gè)機(jī)器周期總共有12個(gè)節(jié)拍,分別記為S1P1,S1P2,…,S6P2,如圖2.13所示。
由于一個(gè)機(jī)器周期包含12個(gè)時(shí)鐘周期,因此機(jī)器脈沖就是振蕩脈沖的十二分頻。圖2.13MCS-51單片機(jī)的機(jī)器周期
3.指令周期
執(zhí)行一條指令所需要的時(shí)間稱(chēng)為指令周期,它一般由若干個(gè)機(jī)器周期組成。不同的指令所需要的機(jī)器周期不同。通常包含一個(gè)機(jī)器周期的指令稱(chēng)為單周期指令,包含兩個(gè)機(jī)器周期的指令稱(chēng)為雙周期指令。MCS-51指令系統(tǒng)可分為三種類(lèi)型,分別是單周期指令、雙周期指令和四周期指令。所以一條指令的運(yùn)算速度與它所包含的機(jī)器周期數(shù)有關(guān)。機(jī)器周期數(shù)越少,執(zhí)行的速度就越快。在MCS-51單片機(jī)的指令系統(tǒng)中,除了乘、除法指令為四個(gè)機(jī)器周期外,其余都是單周期和雙周期
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度油氣田打井工程設(shè)計(jì)與施工總承包合同4篇
- 2025年度水塔供水工程進(jìn)度與質(zhì)量保證合同4篇
- 2024節(jié)能燈購(gòu)買(mǎi)合同
- 2024版權(quán)購(gòu)買(mǎi)合同模板
- 2024版工程安全生產(chǎn)許可證協(xié)議
- 2025年度新型綠色建筑材料出口買(mǎi)賣(mài)合同4篇
- 2024版廣告公司承包經(jīng)營(yíng)合同
- 2025年靜電場(chǎng)治療儀項(xiàng)目投資可行性研究分析報(bào)告
- 2024版模特隱私保密協(xié)議書(shū)范本
- 2024年起重機(jī)安裝與安全教育培訓(xùn)合同范本3篇
- 割接方案的要點(diǎn)、難點(diǎn)及采取的相應(yīng)措施
- 2025年副護(hù)士長(zhǎng)競(jìng)聘演講稿(3篇)
- 2025至2031年中國(guó)臺(tái)式燃?xì)庠钚袠I(yè)投資前景及策略咨詢(xún)研究報(bào)告
- 原發(fā)性腎病綜合征護(hù)理
- (一模)株洲市2025屆高三教學(xué)質(zhì)量統(tǒng)一檢測(cè) 英語(yǔ)試卷
- 第三章第一節(jié)《多變的天氣》說(shuō)課稿2023-2024學(xué)年人教版地理七年級(jí)上冊(cè)
- 2025年中國(guó)電科集團(tuán)春季招聘高頻重點(diǎn)提升(共500題)附帶答案詳解
- 2025年度建筑施工現(xiàn)場(chǎng)安全管理合同2篇
- 建筑垃圾回收利用標(biāo)準(zhǔn)方案
- 2024年考研英語(yǔ)一閱讀理解80篇解析
- 樣板間合作協(xié)議
評(píng)論
0/150
提交評(píng)論