

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第2章 單片機(jī)的硬件結(jié)構(gòu)和原理 2.1 MCS-51單片機(jī)的硬件組成,MCS-51單片機(jī)的組成部件:微處理器(CPU)、數(shù)據(jù)存儲器(RAM)、程序存儲器(ROM/EPROM)、I/O口(P0口、P1口、P2口、P3口)、串行口、定時器/計數(shù)器、中斷系統(tǒng)及特殊功能寄存(SFR) MCS-51單片機(jī)片內(nèi)結(jié)構(gòu)圖,結(jié)構(gòu)特點(diǎn):單一總線連接,CPU加外圍芯片的傳統(tǒng)結(jié)構(gòu)模式,采用SFR對各功能部件進(jìn)行集中控制。,各功能部件說明,1.數(shù)據(jù)
2、存儲器(RAM):片內(nèi)有128個字節(jié)(單元),片外最多可外擴(kuò)至64K字節(jié)。2.程序存儲器(ROM/EPROM/EEPROM):8031無此部件;8051為4K ROM;8751為4K EPROM。片外最多可外擴(kuò)至64K字節(jié)。3.中斷系統(tǒng):具有5個中斷源,2級中斷優(yōu)先權(quán)。4.定時器/計數(shù)器:2個16位的定時器/計數(shù)器,具有四種工作方式。,精確定時、對外部事件計數(shù)的需要、,5.串行口:1個全雙工的串行口,具有四種工作方式??捎脕磉M(jìn)行
3、串行通信。6.P0口、P1口、P2口、P3口:4個并行8位I/O口。7.特殊功能寄存器(SFR):共21個,用于對片內(nèi)各功能模塊進(jìn)行管理、控制、監(jiān)視。實(shí)際上一些控制寄存器和狀態(tài)寄存器,是一個特殊功能的RAM區(qū)。 8.微處理器(CPU):8位的CPU,且內(nèi)含一個1位CPU(位處理器)。不僅可處理字節(jié)數(shù)據(jù),還可進(jìn)行位變量的處理(位處理、查表、狀態(tài)檢測、中斷處理)。,,MCS-51 CPU中的位處理器,是一個完整的1位微計算機(jī),它有自己
4、的CPU、位寄存器、I/O口和指令集。這個1位機(jī)在開關(guān)決策、邏輯電路仿真 、工業(yè)控制方面很有效;而8位機(jī)在數(shù)據(jù)采集、運(yùn)算處理有優(yōu)勢。二者相輔相成,是單片機(jī)技術(shù)上的1個突破。,2.2 MCS-51的引腳,制造工藝為HMOS的MCS-51的單片機(jī)都采用40只引腳的雙列直插封裝(DIP)方式,目前大多數(shù)為此類封裝方式。制造工藝為CHMOS的80C51/80C31除采用DIP封裝外,還采用方形封裝方式,為44只引腳。,,40只引腳按其功能來分
5、,可分為三部分:1.電源及時鐘引腳: Vcc,Vss;XTAL1,XTAL22.控制引腳: PSEN、ALE、EA、RESET(即RST)。3.I/O口引腳: P0、P1、P2、P3,為4個8位I/O口的外部 引腳。,,,2.2.1 電源及時鐘引腳,電源引腳 : 接入單片機(jī)的工作電源 Vcc(40腳):接+5V電源; Vss(20腳):接地。時鐘引腳:時鐘引腳外接晶體與片內(nèi)的反相放
6、大器構(gòu)成了一個振蕩器,它提供單片機(jī)的時鐘控制信號。時鐘引腳也可外接晶體振蕩器。,XTAL1(19腳):接外部晶體的一個引腳。在單片機(jī)內(nèi)部,它是一個反相放大器的輸入端。這個放大器構(gòu)成片內(nèi)振蕩器。當(dāng)采用外接晶體振蕩器時,此引腳應(yīng)接地。,XTAL2(18腳):接外部晶體的另一端,在單片機(jī)內(nèi)部,接至內(nèi)部反相放大器的輸出端。當(dāng)采用外接晶體振蕩器時,該引腳接收振蕩器的信號。,2.2.2 控制引腳,RST/VPD(9腳)RST:單片機(jī)剛接上電源時,
7、其內(nèi)部各寄存器處于隨機(jī)狀態(tài),在此腳輸入24個時鐘周期寬度以上的高電平將使單片機(jī)復(fù)位。單片機(jī)正常工作時,此腳應(yīng)為≤0.5V低電平。VPD:備用電源輸入端。當(dāng)Vcc下降到低于規(guī)定 的值,而VPD在其規(guī)定的電壓范圍內(nèi)(5±0.5V)時,VPD就向內(nèi)部RAM提供備用 電源以保持內(nèi)部RAM的數(shù)據(jù)。,ALE/PROG(30引腳)訪問片外存儲器時,ALE(地址鎖存允許信號)輸出脈沖的負(fù)跳沿用于16位地址的低8位鎖存
8、信號。不訪問片外存儲器,ALE端以時鐘振蕩器頻率的1/6固定輸出正脈沖。在訪問外部數(shù)據(jù)存儲器時(執(zhí)行MOVX指令),ALE會丟失一個ALE脈沖。注:對于EPROM型單片機(jī)(8751),在EPROM編程期間,此引腳用來輸入編程脈沖。,,思考:ALE能用做時鐘源或做定時嗎,為什么?,,PSEN(29引腳) 此腳的輸出信號是單片機(jī)訪問外部ROM的讀選通信號,在訪問外部ROM取指令(或常數(shù))期間,每個機(jī)器周期PSE
9、N兩次有效,在訪問外部RAM時(即執(zhí)行MOVX類指令),這兩次有效的PSEN不出現(xiàn)。PSEN可驅(qū)動8個LSTTL負(fù)載。,,,,,EA/VPP,,EA :內(nèi)外程序存儲器選擇控制端。 輸入高電平,CPU訪問內(nèi)部程序存儲器(4K)。PC值超過0FFFH時,將自動執(zhí)行片外程序存儲器的程序。 輸入低電平,CPU僅訪問片外程序存儲器。 注意:對于8031來說此腳必須接地。,,VPP: 8751片內(nèi)EPROM固化編程時,用于施加較
10、高的編程電壓。編程電壓。,2.2.3 I/O口引腳,P0口:雙向8位三態(tài)I/O口,此口為地址總線(低8位)及數(shù)據(jù)總線分時復(fù)用口,可帶8個LSTTL負(fù)載。 P1口:8位準(zhǔn)雙向I/O口,可帶4個LSTTTL負(fù)載。P2口:8位準(zhǔn)雙向I/O口,與地址總線(高8位) 復(fù)用。P3口:8位準(zhǔn)雙向I/O口,雙功能復(fù)用口。,無固定上拉電阻,有兩個MOS管串接。,有固定的上拉電阻。無高阻“浮空”狀態(tài)。,,提示:當(dāng)P1、P2、P3
11、口作為輸入口使用時,必須 先向該口寫1(對應(yīng)口線置為高電平). P1口作為輸入口 MOV P1,#0FFH 思考:MOV P2,#07H的作用是什么?,2.3 MCS-51 的CPU,2.3.1 運(yùn)算器 包含部件:ALU、位處理器、累加器A、寄存器B、暫存器以及程序狀態(tài)字寄存器PSW以及BCD碼修正電路。 功能:實(shí)現(xiàn)數(shù)據(jù)的算術(shù)、邏輯運(yùn)算,位變量處理和數(shù)據(jù)傳輸。,,ALU,累加器A(ACC)
12、8位的累加器,也是CPU中使用最頻繁的寄存器。它的進(jìn)位標(biāo)志Cy是特殊的,因?yàn)樗瑫r是位處理器的一位累加器。思考:如何減少“瓶頸”現(xiàn)象的發(fā)生?,數(shù)據(jù)存送大都通過通過A,易形成“瓶頸”。,增加了不經(jīng)過累加器A的傳送指令,既可以加快數(shù)據(jù)的傳送速度,同時又可減少“瓶頸”現(xiàn)象的發(fā)生。,寄存器B 是為執(zhí)行乘法和除法操作設(shè)置的,在不執(zhí)行乘法、除法操作的情況下,可作普通寄存器使用。乘法:A、B存放乘數(shù)和被乘數(shù),乘積存放
13、 在BA寄存器對中。除法: 被除數(shù)取自A,除數(shù)取自B,商存放在A, 余數(shù)存放于B。,,程序狀態(tài)寄存器PSW(Program Status Word) 8位可讀寫的寄存器。其各位的定義如下:,其中PSW.1是保留位,未用。,位地址:0D0H,Cy:進(jìn)位標(biāo)志位,在執(zhí)行算數(shù)和邏輯指令時,可被硬件或軟件置位或清除,在位處理器中,它是位累加器。 AC:輔助進(jìn)位標(biāo)志位,當(dāng)進(jìn)行加法或減法操作而產(chǎn)生由低4位進(jìn)位或借位時,A
14、C被硬件置1,否則被清除。 F0:標(biāo)志位,它是由用戶使用的標(biāo)志位,可用軟件對它置位或清除,也可靠軟件測試F0以控制程序流向。RS1、RS0寄存器區(qū)選擇控制位:這兩位用來選擇4組工作寄存器區(qū)。,,,OV(PSW.2)溢出標(biāo)志位:當(dāng)執(zhí)行算術(shù)指令時,由硬件置1或清0,以指示是否溢出。 P(PSW.0)奇偶標(biāo)志位:每個指令周期都由硬件來置位或清除,以表示累加器A中值為1的位數(shù)的奇偶數(shù)。 P=1,則A中1的個數(shù)為奇數(shù)。 P
15、=0,則A中1的個數(shù)為偶數(shù)。 此標(biāo)志位對串行口通訊中的數(shù)據(jù)傳輸有意義,常用奇偶檢驗(yàn)的方法來檢驗(yàn)數(shù)據(jù)傳輸?shù)目煽啃?(A)=10101011 P=1還是0?,2.3.2 控制器,控制器是單片機(jī)的神經(jīng)中樞。單片機(jī)執(zhí)行指令是在控制器下進(jìn)行的。 一條指令的執(zhí)行過程: 取指令→分析指令(指令譯碼)→執(zhí)行指令 包含部件:指令部件、時序部件和微操作控制部件。,指令部件介紹,程序計數(shù)器PCPC中存放的內(nèi)容:下一條將要執(zhí)行的指令在
16、程序 存儲器中的地址。PC的位數(shù)決定了單片機(jī)對程序存儲器可以直接尋址的范圍。,PC是一個16位的計數(shù)器,所以尋址范圍為 64KB(216=65536).,思考:MCS-51系列單片機(jī),尋址范圍是多少?,程序計數(shù)器的基本工作方式:(1)順序執(zhí)行時,PC自動加1。(2)執(zhí)行轉(zhuǎn)移指令時,PC被置入新值,從而使程序流向改變。(3)執(zhí)行子程序調(diào)用或響應(yīng)中斷時,單片機(jī)自動完成下列操作: ① P
17、C的現(xiàn)行值(斷點(diǎn)值),自動壓入堆棧。 ② 將子程序入口地址或中斷向量的地址送入PC,程序改變流向,轉(zhuǎn)向執(zhí)行子程序或ISR。執(zhí)行完畢后,遇到RET或RETI時,將堆棧中保存的斷點(diǎn)值彈到PC中,程序又返回到斷點(diǎn)處繼續(xù)執(zhí)行未完成的部分。,,指令寄存器IR IR: 存放指令操作碼。,控制器的功能可總結(jié)為:接受來自存儲器的指令,進(jìn)行指令譯碼,根據(jù)指令的性質(zhì)控制單片機(jī)各功能部件,保證單片機(jī)各部分協(xié)調(diào)工作,完成指令做規(guī)定的各種操作。,CP
18、U時序及時鐘電路,單片機(jī)的時序就是CPU在執(zhí)行指令時所需控制信號的時間順序。單片機(jī)運(yùn)行時是以主振頻率為基準(zhǔn)的,控制器控制CPU的時序,對指令進(jìn)行譯碼,然后發(fā)出各種控制信號,將各個硬件環(huán)節(jié)組織在一起,這種嚴(yán)格的時序保證了各部件間的同步工作。 為了便于對CPU時序進(jìn)行分析,我們將指令的執(zhí)行過程規(guī)定了以下幾種周期,即時鐘周期、機(jī)器周期和指令周期。,時鐘周期(振蕩周期) 時鐘周期是計算機(jī)中最基本的、最小的時間單位。它定義為時鐘脈
19、沖頻率的倒數(shù)。在80C51單片機(jī)中將一個時鐘周期定義為1個節(jié)拍。 即 TOSC = 1/f OSC 若 f OSC= 1 MHz, TOSC = 1µS 對于8051單片機(jī)而言,時鐘頻率范圍是1.2—12 MHz。,機(jī)器周期 一條指令的指令過程劃分為若干個階段,每一階段完成一項(xiàng)基本操作,例如取指令、讀存儲器、寫存儲器等,我們將CPU完成這每一個基本操作所需的時間定義為機(jī)器周期。
20、 每個機(jī)器周期(12個振蕩周期)由6個狀態(tài)周期組成,即S1、S2、……S6,而每個狀態(tài)周期由兩個時相P1,P2組成(即為2個主振振蕩周期)。所以一個機(jī)器周期可依次表示為S1P1、S1P2、S2P1、S2P2……S6P1、S6P2。,從上圖可以看到,一個機(jī)器周期中通常出現(xiàn)兩次ALE信號,即從ROM中取兩次操作碼,讀入指令寄存器,指令周期的執(zhí)行開始于S1P1時刻,而總是結(jié)束于S6P2時刻 。提示:訪問片外數(shù)據(jù)存儲器(MOVX)時,將
21、會丟失1個ALE脈沖。,,指令周期 定義:執(zhí)行一條指令所需的時間。 MCS-51的指令周期一般只有1—2個機(jī)器周期,只有乘、 除兩條指令占4個機(jī)器周期。當(dāng)用12MHz晶體作主振頻率時,執(zhí)行一條指令的時間,也就是一個指令周期為1us、2us及4us。,2.4 MCS-51存儲器的結(jié)構(gòu),MCS-51單片機(jī)存儲器采用的是哈佛結(jié)構(gòu),即程序存儲器空間和數(shù)據(jù)存儲器空間是分開的。,8051在物理結(jié)構(gòu)上有 4個存儲空間: 片內(nèi)程序存儲器
22、 片外程序存儲器 片內(nèi)數(shù)據(jù)存儲器 片外數(shù)據(jù)存儲器,8051在邏輯結(jié)構(gòu)(用戶角度)有3個存儲空間:1.片內(nèi)外統(tǒng)一編址的64K字節(jié)程序存儲器地址空間(用16位地址);2.片內(nèi)256BRAM;3.片外64KBRAM,,提示:訪問不同的邏輯空間時,應(yīng)采用不同的指令。 但是,為了對MCS-51的存儲器講述的更清楚,下面分五類加以介紹:程序存儲器、內(nèi)部數(shù)據(jù)存儲器、特殊功能寄存器、位地址空間和外部數(shù)據(jù)存儲器。,2.4.1 程
23、序存儲器,程序存儲器用于存放應(yīng)用程序和表格之類的固定常數(shù)。上一小節(jié)我們已經(jīng)了解了由于程序計數(shù)器PC是16位的(地址總線為16根),所以程序存儲器最多可擴(kuò)展至64KB的。,,EA接高電平, PC的值在低4K字節(jié)(0000H—0FFFH)內(nèi),執(zhí)行片內(nèi)ROM,PC>0FFFH,CPU自動訪問片外。 EA接低電平,只執(zhí)行片外程序存儲器中的程序。,,,程序存儲器可分為片內(nèi)和片外。由于邏輯上還是屬于同一空間,所以訪問用的是相同的指令。訪問片內(nèi)還是
24、片外取決于 EA引腳上所接電平。,,,提示:對于8051、8751單片機(jī),若將 EA接低電平,可用于程序調(diào)試。 8031由于片內(nèi)無程序存儲器,必須使 EA引腳固定接低電平。,,,程序存儲器的某些單元被固定用于各中斷源的中斷服務(wù)程序(ISR----Interrupt Service Routine)的入口地址。,2.4.2 內(nèi)部數(shù)據(jù)存儲器,MCS-51 RAM在物理上和邏輯上分為兩個地址空間。片內(nèi)RAM:128字節(jié),用MOV指令訪問
25、。(從廣義上來說,應(yīng)該有256B。)片外RAM:可擴(kuò)展64KB,用MOVX指令訪問。,,2.4.3 特殊功能寄存器(SFR),SFR的實(shí)質(zhì)是一些具有特殊功能的片內(nèi)RAM單元。個數(shù)的總數(shù)為21個,字節(jié)地址范圍為80H--FFH。離散地分布在該區(qū)域中。其中有些SFR還可以進(jìn)行位尋址。,在上述表中,打*SFR是可以位尋址的。我們可以發(fā)現(xiàn)一個規(guī)律,那就是其字節(jié)地址的末尾是0H或是8H(字節(jié)地址能被8整除)。,對于尚未定義的字節(jié)地址單元,
26、用戶不能作普通寄存器使用,若訪問沒有定義的單元,將得到一個不確定的隨機(jī)數(shù)。,下面將簡單介紹幾個SFR。 堆棧指針SP SP是一個8位的SFR, 堆棧的實(shí)質(zhì)是一個特殊的RAM區(qū),主要功能是暫放數(shù)據(jù)和地址。堆棧的具體功能為: (1) 保護(hù)斷點(diǎn):子程序調(diào)用以及中斷時,最終都要返回主程序。為了保證程序能正確返回,應(yīng)該在堆棧中預(yù)先將主程序的斷點(diǎn)保護(hù)起來。(2)
27、;現(xiàn)場保護(hù): 單片機(jī)執(zhí)行子程序或ISR之后,很可能要用到單片機(jī)中的一些寄存器,為了不破壞寄存器中的原有內(nèi)容,可以把有關(guān)寄存器的內(nèi)容保存起來,送入堆棧。,堆棧的特點(diǎn): 先進(jìn)后出。堆棧的操作:進(jìn)棧(PUSH),出棧(POP)。第一個進(jìn)棧的數(shù)據(jù)所在的單元稱為棧底,然后逐次進(jìn)棧,最后進(jìn)棧的數(shù)據(jù)所在的存儲單元稱為棧頂。,堆棧的操作有兩種方式:(1)指令方式,使用堆棧操作指令進(jìn)行進(jìn)棧/出棧操作。(2)自動方式,在調(diào)用子程序或產(chǎn)生中斷時,
28、返回地址(斷點(diǎn))自動進(jìn)棧。程序返回時,斷點(diǎn)地址再自動彈回PC。這種堆棧操作不需要干預(yù),是通過硬件自動實(shí)現(xiàn)的。,提示:系統(tǒng)復(fù)位后,SP初始化為07H,使得堆棧事實(shí)上由08H開始。因?yàn)?8H---1FH單元為工作寄存器區(qū)1---3, 20H---2FH為位尋址區(qū),在程序設(shè)計很可能要用到這些區(qū),所以用戶在編程時最好把SP初值設(shè)為2FH或更大值,當(dāng)然同時還要顧及其允許的深度。要防止設(shè)置不當(dāng),引起內(nèi)部RAM單元沖突。,數(shù)據(jù)指針DPTR
29、 16位的SFR,高位字節(jié)寄存器用DPH表示,低位字節(jié)寄存器用DPL表示。DPTR既可以作為1個16位寄存器DPTR來用,也可以作為2個獨(dú)立的8位寄存器DPH和DPL來用。 I/O端口P0---P3 特殊功能寄存器P0---P3分別為I/O端口P0---P3的鎖存器。 在MCS-51中,I/O端口和RAM是統(tǒng)一編址的,所有訪問RAM單元的指令,都可用來訪問I/O端口。,串行數(shù)據(jù)緩沖器SBUF 用于存放
30、欲發(fā)送或已接受的數(shù)據(jù),它在SFR塊中只有一個字節(jié)地址,但是物理上是由兩個獨(dú)立的寄存器組成的,一個發(fā)送緩沖器,另一個是接收緩沖器。 定時器/計數(shù)器 MCS-51單片機(jī)有2個16位定時器/計數(shù)器T1和T0,它們各由2個獨(dú)立的8位寄存器組成,共有4個獨(dú)立的寄存器:TH1、TL1、TH0、TL0,可以分別對這4個寄存器進(jìn)行字節(jié)尋址,但不能把T1或T0當(dāng)作1個16位寄存器來尋址訪問。,2.4.4 位地址空間,MCS-51有一個功能
31、很強(qiáng)的位處理器,指令系統(tǒng)中有著豐富的位操作指令,這些指令構(gòu)成了位處理機(jī)的指令機(jī)。在RAM和SFR中共有211個尋址位的位地址 128位 20H---2FH 211個尋址位的位地址 83位 80H---FFH 可位尋址的SFR有11個,共有位地址88個,其中5個未使用,其余83位
32、離散地分布在片內(nèi)字節(jié)地址范圍80H---FFH中。,,MCS-51內(nèi)部RAM的可尋址位及其位地址表,2.4.5 外部數(shù)據(jù)存儲器,當(dāng)MCS-51片內(nèi)的128B的RAM不夠用時,需要通過外擴(kuò)存儲器,最多可擴(kuò)展64KB,這對許多應(yīng)用場合已是足夠使用的。,下面就MCS-51存儲器的結(jié)構(gòu)簡要進(jìn)行小結(jié): 地址的重疊性 存在3處重疊性,但是盡管有這些重疊,卻不會產(chǎn)生操作的混亂。這是因?yàn)镸CS-51采用了不同的操作指令及EA的控制選
33、擇來自動區(qū)分這些重疊的空間。具體的區(qū)分方法:,,(1) 程序存儲器和數(shù)據(jù)存儲器全部64k重疊。 訪問程序存儲器使用MOVC類指令。 訪問數(shù)據(jù)存儲器使用MOV和MOVX類指令。,(2) 數(shù)據(jù)存儲器片內(nèi)和片外低128B重疊 訪問片內(nèi)數(shù)據(jù)存儲器使用MOV類指令。 訪問片外數(shù)據(jù)存儲器使用MOVX類指令。,(3) 程序存儲器片內(nèi)和片外低4KB重疊 EA接高電平, 執(zhí)行片內(nèi)RO
34、M中的程序,PC>0FFFH,CPU自動訪問片外。 EA接低電平,只執(zhí)行片外程序存儲器中的程序。,程序存儲器與數(shù)據(jù)存儲器在使用上的嚴(yán)格區(qū)分 程序存儲器存放指令及常數(shù)表格,其操作指令不分片內(nèi)與片外。數(shù)據(jù)存儲器存放數(shù)據(jù),訪問片內(nèi)與片外的指令是不同的。 位地址共有2個區(qū)域 片外數(shù)據(jù)存儲區(qū)中,RAM存儲單元與MCS-51外擴(kuò)的I/O口是統(tǒng)一編址的。因此,應(yīng)用系統(tǒng)中所有外圍I/O端口的地址均占
35、用RAM地址單元 .,2.5 并行I/O端口,P0口:雙向8位三態(tài)I/O口,此口為地址總線(低 8位)及數(shù)據(jù)總線復(fù)用口,只有該口能直 接用于對外部存儲器的讀/寫數(shù)據(jù)操作。P1口:準(zhǔn)雙向口,專門供用戶使用的I/O口。P2口:準(zhǔn)雙向口,供系統(tǒng)擴(kuò)展時輸出高8位地 址,也可作為一般I/O口。P3口:準(zhǔn)雙向口,雙功能口。,P3口的第二功能定義,,2.5.1 I/O口的內(nèi)部結(jié)構(gòu),P0口的字節(jié)地
36、址為80H。P0口既可以作為通用的I/O口使用,也可作為單片機(jī)系統(tǒng)的地址/數(shù)據(jù)線使用,所以在P0口的電路中有一個多路轉(zhuǎn)換開關(guān)MUX。在內(nèi)部控制信號的作用下,多路開關(guān)MUX可以分別接通鎖存器輸出和地址線/數(shù)據(jù)線。,,P1口作通用I/O口使用的。其輸出驅(qū)動部分與P0口不同,內(nèi)部有上拉負(fù)載電阻與電源相連。在端口由輸出口轉(zhuǎn)為輸入口時,必須先向?qū)?yīng)的鎖存器寫入“1”。,,P2口的字節(jié)地址為A0H。在實(shí)際應(yīng)用中,因?yàn)镻2口用于為系統(tǒng)提供高位地址,因
37、此同P0口一樣,在口電路中有一個MUX。但MUX的1個輸入端不再是“地址/數(shù)據(jù)”,而是單一的“地址”,這是因?yàn)镻2口只作為地址線使用。,在系統(tǒng)擴(kuò)展片外程序存儲器時,由P2口輸出高8位地址(低8位地址由P0口輸出)。此時,MUX在CPU的控制下轉(zhuǎn)向內(nèi)部地址線的一端。因?yàn)樵L問片外程序存儲器的操作往往接連不斷,P2口要不斷送出高8位地址,所以這是P2口無法再作通用I/O口。 在不需要外擴(kuò)程序存儲器而只需擴(kuò)展小容量的片外數(shù)據(jù)存儲器的
38、系統(tǒng)中,使用“MOVX @Ri”類指令訪問片外RAM時,尋址范圍是256B,則只需低8位地址線就可實(shí)現(xiàn)。P2口不受該指令影響,仍可作通用I/O口。,,P3口的字節(jié)地址為B0H。由于MCS-51的引腳數(shù)目有限,因此在P3口電路中增加了引腳的第二功能。,2.5.2 I/0口的讀操作,每個I/O口都有兩種讀入方法: 讀鎖存器(讀-修改-寫指令):當(dāng)目的操作數(shù)為某一I/O口或I/O口的某一位時,這些指令為讀-修改-寫指令:例:
39、 ANL P1,A ORL P2,A JBC P1.1LABEL; P1.1=1則轉(zhuǎn)移并清除該位。,讀引腳:以I/O端口為源操作數(shù)的指令,執(zhí)行該指令時,打開三態(tài)門,輸入口狀態(tài)(即先向該口寫入“1”),例: MOV A,P1,2.6 復(fù)位電路,2.6.1 復(fù)位操作 復(fù)位是單片機(jī)的初始化操作,只需要在復(fù)位引腳RST(RESET)加上大于兩個機(jī)器周期的高電平就可使MCS-51復(fù)位。復(fù)位時,PC初始化為0000H,所
40、以單片機(jī)是從0000H單元開始執(zhí)行程序。復(fù)位時片內(nèi)個寄存器的狀態(tài):,,2.6.2 復(fù)位電路,上電復(fù)位的原理: 利用電容充電來實(shí)現(xiàn)。上電瞬間,RC電路充電,RST引腳端出現(xiàn)正脈沖。只要RST引腳端保持10ms以上高電平,就能使單片機(jī)有效地復(fù)位。 MCS-51的復(fù)位是由外部的復(fù)位電路來實(shí)現(xiàn)的。,復(fù)位電路通常采用上電自動復(fù)位和按鈕復(fù)位兩種方式。,在實(shí)際的應(yīng)用系統(tǒng)設(shè)計中,若有外部擴(kuò)展的I/O接口電路也需要初始復(fù)位。如果它們的復(fù)位端和M
41、CS-51的復(fù)位端相連,復(fù)位電路中的R、C參數(shù)要受到影響,為保證可靠復(fù)位,R、C參數(shù)要統(tǒng)一考慮。如果單片機(jī)MCS-51與外圍I/O接口電路的復(fù)位電路和復(fù)位時間不完全一致,使單片機(jī)初始化程序不能正常運(yùn)行,可采用獨(dú)立的上電復(fù)位電路。,提示:單片機(jī)的復(fù)位速度比外圍I/O接口電路快,為保證系統(tǒng)可靠復(fù)位,在初始化程序中應(yīng)安排一定的復(fù)位延遲時間。,2.7 時鐘電路,時鐘電路用于產(chǎn)生MCS-51單片機(jī)工作時所必需的時鐘控制信號。MCS-51單片機(jī)
溫馨提示
- 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 89c51單片機(jī)硬件結(jié)構(gòu)和原理mcs-51系列
- mcs-51單片機(jī)結(jié)構(gòu)和原理
- mcs-51單片機(jī)結(jié)構(gòu)及原理題解
- 單片機(jī)相關(guān)外文翻譯-- mcs -51系列單片機(jī)的功能和結(jié)構(gòu)
- mcs-51單片機(jī)結(jié)構(gòu)介紹
- 單片機(jī)相關(guān)外文翻譯--mcs-51系列單片機(jī)的功能和結(jié)構(gòu)
- 單片機(jī)外文翻譯----51系列單片機(jī)的結(jié)構(gòu)和功能
- mcs-51單片機(jī)串行接口
- mcs-51單片機(jī)存儲器結(jié)構(gòu)
- 單片機(jī)課程設(shè)計--基于mcs-51單片機(jī)的溫度采集系統(tǒng)
- 51單片機(jī)畢業(yè)論文--基于mcs-51單片機(jī)的步進(jìn)電機(jī)系統(tǒng)
- 第2章單片機(jī)硬件結(jié)構(gòu)3
- mcs-51單片機(jī)的串行通信口
- 第2章單片機(jī)硬件結(jié)構(gòu)2
- 51單片機(jī)
- 單片機(jī)課程設(shè)計---基于mcs-51單片機(jī)的頻率計的設(shè)計
- 單片機(jī)硬件設(shè)計的經(jīng)驗(yàn)總結(jié)
- 單片機(jī)系統(tǒng)等的硬件調(diào)試方法
- 基于單片機(jī)的程控電源硬件設(shè)計
- at89s51單片機(jī)用于智能電飯煲的硬件分析
評論
0/150
提交評論