單片機(jī)原理及應(yīng)用.ppt
《單片機(jī)原理及應(yīng)用.ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《單片機(jī)原理及應(yīng)用.ppt(157頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、單片機(jī)原理及應(yīng)用,第五章MCS-51單片機(jī)的硬件資源 5.1 MCS-51的并行接口及其應(yīng)用 5.2 MCS-51的中斷系統(tǒng) 5.3 MCS-51的定時(shí)器/計(jì)數(shù)器 5.4 MCS-51的串行接口及串行通信,輸入/輸出接口是CPU外設(shè)間信息的橋梁,它可以制成一塊單獨(dú)的大規(guī)模集成電路,也可以和CPU集成在同一塊芯片上,單片機(jī)中就是后一種結(jié)構(gòu)。I/O接口有并行接口和串行接口兩種。,5.1.1 MCS51內(nèi)部并行I/O端口,8031有四個(gè)并行端口,分別命名為P0、P1 、P2 和P3 。這四個(gè)并行I/O端口的內(nèi)部位結(jié)構(gòu)如圖51所示,每個(gè)端口皆有八位。由圖51可見(jiàn),每個(gè)位結(jié)構(gòu)都有一個(gè)輸出鎖存器和一個(gè)輸入
2、緩沖器。輸出鎖存器,用于存放需要輸出的數(shù)據(jù)。,5.1 MCS-51的并行接口及其應(yīng)用,第五章MCS-51單片機(jī)的硬件資源,每個(gè)端口的八位輸出鎖存器構(gòu)成一個(gè)特殊功能寄存器,且冠名與端口相同。輸入緩沖器用于對(duì)端口引腳上輸入數(shù)據(jù)進(jìn)行緩沖,因此各引腳上輸入的數(shù)據(jù)必須一直保持到CPU把它讀走為止。P0、P1 、P2 和P3端口的電路形式不同,其功能也不同。下面結(jié)合電路結(jié)構(gòu)就其功能加以說(shuō)明。,一、P0口,第五章 MCS-51單片機(jī)的硬件資源,在訪問(wèn)外部存儲(chǔ)器時(shí),P0口是一個(gè)真正的雙向數(shù)據(jù)口,并分時(shí)送出地址的8位和送出(接收)相應(yīng)存儲(chǔ)單元的數(shù)據(jù)。,第五章MCS-51單片機(jī)的硬件資源,,圖51(a)是P0口的
3、位結(jié)構(gòu)圖,它包括一個(gè)輸出鎖存器,兩個(gè)三態(tài)緩沖器,一個(gè)輸出驅(qū)動(dòng)電路和一個(gè)輸出控制電路。,,,第五章MCS-51單片機(jī)的硬件資源,當(dāng)從P0口輸出地址或數(shù)據(jù)時(shí),控制信號(hào)應(yīng)為高電平1,模擬轉(zhuǎn)換開(kāi)關(guān)(MUX)把地址/數(shù)據(jù)信息經(jīng)反相器和下拉場(chǎng)效應(yīng)管接通,同時(shí)與門(mén)打開(kāi)。輸出的地址或數(shù)據(jù)既通過(guò)與門(mén)去驅(qū)動(dòng)上拉場(chǎng)效應(yīng)管,又通過(guò)反相器去驅(qū)動(dòng)下拉場(chǎng)效應(yīng)管。,例如,若地址/數(shù)據(jù)信息為“0”,該“0”信號(hào)一方面通過(guò)與門(mén)使上拉場(chǎng)效應(yīng)管截止,另一方面經(jīng)反相器使下拉場(chǎng)效應(yīng)管導(dǎo)通,從而使引腳上輸出相應(yīng)的“0”信號(hào),反之,若地址/數(shù)據(jù)信息為“1”,將會(huì)使上拉場(chǎng)效應(yīng)管導(dǎo)通而下拉場(chǎng)效應(yīng)管截止,引腳上將出現(xiàn)相應(yīng)的“1”信號(hào)。,第五章MC
4、S-51單片機(jī)的硬件資源,若P0口作為一般I/O口使用,在CPU向端口輸出數(shù)據(jù)時(shí),對(duì)應(yīng)的輸出控制信號(hào)應(yīng)為0,模擬轉(zhuǎn)換開(kāi)關(guān)將把輸出級(jí)與鎖存器Q端接通。同時(shí),因與門(mén)輸出為0,使上拉場(chǎng)效應(yīng)管處于截止?fàn)顟B(tài),因此輸出級(jí)是漏極開(kāi)路電路。這樣,當(dāng)寫(xiě)脈沖加在觸發(fā)器時(shí)針端CP上時(shí),則與內(nèi)部總線相連的D端數(shù)據(jù)取反后就出現(xiàn)在Q端,再經(jīng)場(chǎng)效應(yīng)管反相,在P0引腳上出現(xiàn)的數(shù)據(jù)正好是內(nèi)部總線的數(shù)據(jù)。,不難看出,P0口在輸出地址/數(shù)據(jù)信息和作為一般I/O口輸出數(shù)據(jù)時(shí),其輸出驅(qū)動(dòng)電路的工作狀態(tài)是有差別的。,第五章MCS-51單片機(jī)的硬件資源,一般P0口的輸出級(jí)能驅(qū)動(dòng)8個(gè)LS TTL 輸入,但對(duì)NMOS輸入而言,P0口做地址/數(shù)
5、據(jù)總線口使用時(shí),不必外加提升電阻。而作一般I/O口使用時(shí),由于輸出驅(qū)動(dòng)電路工作于開(kāi)漏狀態(tài),故需外接上拉電阻。,,當(dāng)P0口引腳上輸入數(shù)據(jù),此時(shí)上拉FET應(yīng)一直處于截止?fàn)顟B(tài)。引腳上的外部信號(hào)即加在下面一個(gè)三態(tài)緩沖器的輸入端,又加在下拉FET的漏極,假定在此之前曾輸出鎖存過(guò)數(shù)據(jù)0 ,則FET是導(dǎo)通的,這樣引腳上的電位就始終被鉗位在0 電平,使輸入高電平無(wú)法讀入。因此作為一般I/O口使用時(shí),P0口是一個(gè)準(zhǔn)雙向口,即輸入數(shù)據(jù)時(shí),應(yīng)先向口寫(xiě)“1”,使兩個(gè)FET均截止,然后方可作高阻抗輸入。,第五章 MCS-51單片機(jī)的硬件資源,但在P0口連接外部存儲(chǔ)器時(shí),由于訪問(wèn)外部存儲(chǔ)器期間,CPU會(huì)自動(dòng)向口0的鎖存器
6、寫(xiě)入0FFH,所以,對(duì)用戶(hù)而言,P0口用作地址/數(shù)據(jù)總線時(shí),則是一個(gè)真正的雙向口。,上面所述為數(shù)據(jù)由引腳輸入的情況,稱(chēng)為“讀引腳”操作。但在有些情況下 ,例如用一根口線去驅(qū)動(dòng)一個(gè)晶體管的基極,則向此口線寫(xiě)“1”時(shí),晶體管導(dǎo)通,并把引腳上的電平拉低,這時(shí)若從引腳上讀取數(shù)據(jù),會(huì)把此數(shù)據(jù)錯(cuò)讀為0。為了避免錯(cuò)讀引腳上電平的可能性,單片機(jī)中還提供了另一類(lèi)所謂“讀鎖存器”操作。,第五章MCS-51單片機(jī)的硬件資源,這類(lèi)操作的特點(diǎn)是:先讀口,隨之可對(duì)讀入的數(shù)據(jù)進(jìn)行修改,然后再寫(xiě)到端口上。例如執(zhí)行指令ORL P0,A時(shí),則先把P0上的內(nèi)容讀入CPU,然后與A累加器內(nèi)容按位進(jìn)行邏輯“或”操作,最后把“或”的結(jié)果
7、送回P0口。能使單片機(jī)產(chǎn)生這種讀-修改-寫(xiě)操作的指令,其目的操作數(shù)一般為某I/O口或口的某一位,這些指令是:ANL,ORL,XRL,JBC,CPL,INC,DEC,DJNZ,MOV PXY,C,CLR PXY和SETB PXY等,它們的含義詳見(jiàn)指令系統(tǒng)一章的說(shuō)明。,第五章MCS-51單片機(jī)的硬件資源,綜上所述,P0口既可作地址/數(shù)據(jù)總線口,這時(shí)它是真正的雙向口,也可作通用I/O口,但只是一個(gè)準(zhǔn)雙向口。一般情況下,P0口已當(dāng)作地址/數(shù)據(jù)口使用時(shí),就不能再作通用I/O口使用。,P2口的位結(jié)構(gòu)如圖5-1(b)所示,它與P0口基本相同,只有輸出部分略有不同,在輸出FET的漏極接有上拉電阻,這種結(jié)構(gòu)不必
8、外接上拉電阻就可驅(qū)動(dòng)任何MOS輸入電路,且能驅(qū)動(dòng)四個(gè)LSTTL輸入。P2口常用作外部存儲(chǔ)器的高八位地址口。當(dāng)不用作地址口時(shí),P2口亦可作通用I/O口,這時(shí)它也是一個(gè)準(zhǔn)雙向I/O口。,二、P2口,第五章MCS-51單片機(jī)的硬件資源,,第五章MCS-51單片機(jī)的硬件資源,三、P1口,第五章MCS-51單片機(jī)的硬件資源,四、P3口,P3口是一個(gè)雙功能口,第一功能和P2口一樣可作為通用I/O口。P3口工作于第二功能時(shí),各位的定義如下:,第五章MCS-51單片機(jī)的硬件資源,第五章MCS-51單片機(jī)的硬件資源,由圖5-1(d)P3口位結(jié)構(gòu)可以看出,實(shí)現(xiàn)第一功能作通用I/O輸出口時(shí),選擇輸出功能端應(yīng)保持高電
9、平,使與非門(mén)對(duì)鎖存器Q端是暢通的。同理,實(shí)現(xiàn)第二功能做專(zhuān)用信號(hào)輸出時(shí),則該位的鎖存器應(yīng)置1,使與非門(mén)對(duì)選擇輸出功能端是暢通的。對(duì)輸入而言,無(wú)論該位是作通用輸入口還是作第二功能輸入口,其輸出鎖存器和選擇輸出功能端都應(yīng)置1,即使FET 截止。,由于所有口鎖存器在上電復(fù)位時(shí)均置為1,自然滿足了上述條件,所以用戶(hù)不必做任何工作,就可以直接使用P3口的第二功能。至于第一功能,應(yīng)在確信某一引腳第二功能提供的信號(hào)不用時(shí),該引腳才可作I/O線使用,使用方法同與一般準(zhǔn)雙向口相同。,第五章MCS-51單片機(jī)的硬件資源,5.1.2 MCS51內(nèi)部并行I/O口的應(yīng)用,MCS51四個(gè)I/O端口共有三種操作方式:輸出數(shù)據(jù)
10、方式,讀端口數(shù)據(jù)方式和讀端口引腳方式。,在數(shù)據(jù)輸出方式下,CPU通過(guò)一條數(shù)據(jù)操作指令就可以把輸出數(shù)據(jù)寫(xiě)入P0P3的端口鎖存器,然后通過(guò)輸出驅(qū)動(dòng)器送到端口引腳。因此,凡是端口操作指令都能達(dá)到從端口引腳上輸出數(shù)據(jù)的目的,例如如下指令均可在P0口輸出數(shù)據(jù):,MOV P0,A ;累加器A中的內(nèi)容送P0口 ANL P0,A ;P0口的內(nèi)容和A中的內(nèi)容相與后送P0口,第五章 MCS-51單片機(jī)的硬件資源,讀端口數(shù)據(jù)方式是一種僅對(duì)端口鎖存器中數(shù)據(jù)進(jìn)行讀入的操作方式,CPU讀入的這個(gè)數(shù)據(jù)并非端口引腳的數(shù)據(jù)。因此,CPU只要用一條傳送指令就可把端口鎖存器中的數(shù)據(jù)讀入累加器A或內(nèi)部RAM中來(lái)。例如,如下指令可以從
11、P1口輸入數(shù)據(jù):,MOV A, P1 ;P1鎖存器中數(shù)據(jù)送A MOV 20H, P1 ; P1鎖存器數(shù)據(jù)送內(nèi)部20H單元,讀引腳方式可從端口引腳上讀入信息。在這種方式下,CPU首先必須使欲讀端口引腳所對(duì)應(yīng)的鎖存器置1,以便驅(qū)動(dòng)器中的T2管截止,然后打開(kāi)輸入三態(tài)緩沖器,使相應(yīng)端口引腳上信號(hào)輸入CPU內(nèi)部數(shù)據(jù)總線。因此,在讀引腳時(shí)必須連續(xù)使用兩條指令。,第五章 MCS-51單片機(jī)的硬件資源,例如讀P1口低四位引腳上的信號(hào)的程序?yàn)椋?MOV P1,#0FH ;使P1口低4位鎖存器置1 MOV A,P1 ;讀P1口低4位引腳信號(hào),I/O端口的應(yīng)用舉例:,一、I/O口直接用于輸入/輸出,在I/O
12、口直接用作輸入/輸出時(shí),既可以把它們看作數(shù)據(jù)口也可以看作狀態(tài)口,這由用戶(hù)根據(jù)實(shí)際情況決定。,第五章 MCS-51單片機(jī)的硬件資源,例5.1 試編出模擬圖5-2(a)中電路的程序。,對(duì)電路進(jìn)行模擬是指模擬它的輸出狀態(tài)如何隨輸入狀態(tài)的變化而變化。,第五章 MCS-51單片機(jī)的硬件資源,相應(yīng)程序?yàn)椋?ORG 0500H D BIT 00H E BIT 01H G BIT 02H LOOP1:ORL P1,#08H ;準(zhǔn)備P1.3輸入 LOOP2:MOV C,P1.3 ;檢測(cè)K2狀態(tài) JC LOOP2 ;若未準(zhǔn)備好(K2斷開(kāi)),則轉(zhuǎn) ; LOOP2
13、 ORL P1,#03H ;若準(zhǔn)備好了,則輸入K0和K1狀態(tài) MOV C,P1.0 ;K0狀態(tài)送入D MOV D,C MOV C,P1.1 ;K1狀態(tài)送入E MOV E,C ANL C, D ;D與E送G,第五章 MCS-51單片機(jī)的硬件資源,第五章 MCS-51單片機(jī)的硬件資源,二、 I/O口對(duì)外部鎖存器的接口,第五章 MCS-51單片機(jī)的硬件資源,,MOV DPTR, #7FFFH ;DPTR指向74LS373端口 MOVX A, DPTR ;輸入數(shù)據(jù),應(yīng)當(dāng)注意:8031也可以通過(guò)外部鎖存器輸出數(shù)據(jù),但由于8031內(nèi)部每個(gè)I/O端口都帶有8位鎖存器,
14、因此只有擴(kuò)展I/O端口時(shí)才需要利用外部鎖存器來(lái)輸出數(shù)據(jù)。,第五章 MCS-51單片機(jī)的硬件資源,5.2 MCS-51中斷系統(tǒng),5.2.1中斷概述,一、中斷和中斷系統(tǒng),CPU正在處理某件事的時(shí)候,外部發(fā)生了另一事件,請(qǐng)求CPU迅速處理,CPU暫時(shí)停止當(dāng)時(shí)的工作,轉(zhuǎn)入處理所發(fā)生的事件,處理結(jié)束后,再回到原來(lái)的地方,繼續(xù)原來(lái)的工作,這樣的過(guò)程稱(chēng)為中斷,如圖5-4所示。,第五章 MCS-51單片機(jī)的硬件資源,,中斷系統(tǒng)實(shí)現(xiàn)中斷功能的部件,中斷源產(chǎn)生中斷請(qǐng)求的源,二、中斷優(yōu)先級(jí),一般計(jì)算機(jī)系統(tǒng)允許有多個(gè)中斷源。當(dāng)幾個(gè)中斷源同時(shí)向CPU請(qǐng)求中斷,要求服務(wù)時(shí),就存在CPU優(yōu)先響應(yīng)哪一個(gè)中斷請(qǐng)求的問(wèn)題。為此系
15、統(tǒng)根據(jù)中斷源的輕重緩急進(jìn)行排隊(duì),規(guī)定每個(gè)中斷源都有一個(gè)中斷優(yōu)先級(jí)別,優(yōu)先處理最緊急事件的中斷請(qǐng)求。,第五章 MCS-51單片機(jī)的硬件資源,三、中斷嵌套,中斷嵌套是指CPU正在處理一個(gè)中斷源請(qǐng)求的時(shí)候,又發(fā)生了另一個(gè)優(yōu)先級(jí)比它高的中斷源請(qǐng)求,如果CPU能夠暫時(shí)中止執(zhí)行原來(lái)的處理程序,轉(zhuǎn)而去處理優(yōu)先級(jí)更高的中斷請(qǐng)求,處理結(jié)束后,再繼續(xù)執(zhí)行原來(lái)的低級(jí)中斷處理程序的過(guò)程。,第五章 MCS-51單片機(jī)的硬件資源,四、中斷過(guò)程,對(duì)于不同的計(jì)算機(jī),中斷過(guò)程可能不盡相同,但是一般應(yīng)包括中斷請(qǐng)求、中斷響應(yīng)、中斷處理和中斷返回等四個(gè)步驟。,1.中斷請(qǐng)求,中斷過(guò)程是由中斷源向CPU發(fā)出中斷請(qǐng)求而開(kāi)始的。有效中斷請(qǐng)求
16、信號(hào)應(yīng)該一直保持到CPU作出響應(yīng)為止。,2.中斷響應(yīng),CPU檢測(cè)到中斷請(qǐng)求信號(hào)后,在滿足一定條件的情況下進(jìn)行響應(yīng)。其主要條件是:中斷標(biāo)志是否開(kāi)放,是否高級(jí)中斷,是否執(zhí)行完一條指令等。,第五章 MCS-51單片機(jī)的硬件資源,3.中斷處理,中斷處理或稱(chēng)為中斷服務(wù),就是執(zhí)行中斷源所要求的中斷服務(wù)程序。在中斷服務(wù)程序中需要完成的主要工作是:,保護(hù)現(xiàn)場(chǎng)根據(jù)需要把斷點(diǎn)處有關(guān)存儲(chǔ)器的內(nèi)容壓入堆棧,以保護(hù)主程序運(yùn)行的結(jié)果。,開(kāi)/關(guān)中斷標(biāo)志根據(jù)CPU響應(yīng)中斷后開(kāi)/關(guān)中斷情況,適當(dāng)處理中斷標(biāo)志,以確保保護(hù)/恢復(fù)現(xiàn)場(chǎng)的正確進(jìn)行,確保所需中斷嵌套的實(shí)現(xiàn)。,中斷處理根據(jù)中斷源的要求,完成相應(yīng)的任務(wù),這是中斷服務(wù)的核心。
17、,第五章 MCS-51單片機(jī)的硬件資源,,恢復(fù)現(xiàn)場(chǎng)在完成中斷服務(wù)之后,返回被中斷的主程序之前,恢復(fù)堆棧中保護(hù)的各有關(guān)寄存器的內(nèi)容。,4.中斷返回,在中斷服務(wù)程序后,用一條中斷返回指令(RETI),保證返回主程序繼續(xù)執(zhí)行被中斷的程序。,5.2.2 MCS-51中斷系統(tǒng)與控制,MCS51的51子系列(8031、8051、8751等)有5個(gè)中斷源,52子系列(8032、8052等)有6個(gè)中斷源,它們均有兩個(gè)優(yōu)先級(jí),通過(guò)4個(gè)中斷控制器(IE、IP、TCON、SCON)進(jìn)行中斷管理,其結(jié)構(gòu)原理如圖5-6所示。,第五章 MCS-51單片機(jī)的硬件資源,第五章 MCS-51單片機(jī)的硬件資源,一、中斷源,CPU
18、在每個(gè)機(jī)器周期的S5P2檢測(cè)上的信號(hào)。,第五章 MCS-51單片機(jī)的硬件資源,,對(duì)于電平方式,只要檢測(cè)到低電平信號(hào)即為有效申請(qǐng);對(duì)于脈沖方式,則需要比較兩次檢測(cè)到的信號(hào),才能確定中斷請(qǐng)求信號(hào)是否有效,并且中斷請(qǐng)求信號(hào)高低電平的狀態(tài)都應(yīng)至少維持一個(gè)機(jī)器周期,以確保電平變化能被單片機(jī)檢測(cè)到。,思考:,脈沖觸發(fā)方式下,外部中斷脈沖的最高觸發(fā)頻率為系統(tǒng)振蕩頻率的多少倍?, 內(nèi)部中斷除外部中斷源外,內(nèi)部還有TF0、TF1、TI、RI分別為定時(shí)器/計(jì)數(shù)器中斷和發(fā)送/接收中斷的中斷源。,第五章 MCS-51單片機(jī)的硬件資源,,二、中斷控制,MCS-51單片機(jī)設(shè)置了4個(gè)專(zhuān)用寄存器用于中斷控制 ,用戶(hù)通過(guò)設(shè)置其
19、狀態(tài)來(lái)管理中斷系統(tǒng)。,1.定時(shí)器控制寄存器(TCON),TCON的格式如下:,TCON D7 D6 D5 D4 D3 D2 D1 D0,(88H),如前所述,寄存器中TR1(TR0)用于定時(shí)器/計(jì)數(shù)器的啟動(dòng)控制,其余6位用于中斷控制,其作用如下:,第五章 MCS-51單片機(jī)的硬件資源,,,IT0為外部中斷0請(qǐng)求信號(hào)方式控制位。IT0 = 1,脈沖方式(負(fù)跳變有效);IT0 = 0,電平方式(低電平有效)。,IT1為外部中斷1請(qǐng)求信號(hào)方式控制位,其作用同IT0。,IE1為外部中斷1請(qǐng)求標(biāo)志位,其作用同IE0。,TF0(TF1)為定時(shí)器/計(jì)數(shù)器溢出標(biāo)志位,此標(biāo)志作用將在定時(shí)器/計(jì)數(shù)器一節(jié)說(shuō)明。,
20、第五章 MCS-51單片機(jī)的硬件資源,,2.串行口控制寄存器(SCON),SCON格式如下:,SCON D7 D6 D5 D4 D3 D2 D1 D0,(98H),串行口控制寄存器格式及各位功能將在串行接口一節(jié)介紹,其中高6位用于串行口控制,低2位(RI、TI)用于中斷控制,其作用如下:,TI為串行口發(fā)送中斷請(qǐng)求標(biāo)志位,發(fā)送完一幀串行數(shù)據(jù)后,由硬件置1,其清零須由軟件完成。,第五章 MCS-51單片機(jī)的硬件資源,,,RI為串行口接收中斷請(qǐng)求標(biāo)志位,接完一幀串行數(shù)據(jù)后,由硬件置1,其清零由軟件完成。,在MCS-51單片機(jī)串行口中,TI和RI的邏輯“或”作為一個(gè)內(nèi)部中斷源,二者之一置位都可以產(chǎn)
21、生串行口中斷請(qǐng)求,然后在中斷服務(wù)程序中測(cè)試這兩個(gè)標(biāo)志位,以決定是發(fā)送中斷還是接收中斷。,3.中斷允許控制寄存器(IE),中斷允許寄存器格式如下:,IE D7 D6 D5 D4 D3 D2 D1 D0,(A8H),第五章 MCS-51單片機(jī)的硬件資源,ES為串行口中斷允許位,ES=1時(shí),允許串行口中斷;ES=0時(shí),禁止串行口中斷。,寄存器中用于控制中斷的共6位,實(shí)現(xiàn)中斷的管理,其作用如下:,,EX1為外部中斷1允許控制位,EX1=1允許外部中 斷1中斷,EX1=0,禁止外部中斷1中斷。,ET1為定時(shí)器/計(jì)數(shù)器1(T1)中斷允許控制位,ET1=1時(shí),允許T1中斷;ET1=0時(shí),禁止T1中斷。
22、,ET0為定時(shí)器/計(jì)數(shù)器0(T0)中斷允許控制位,其控制功能同ET1。,EX0為外部中斷0允許控制位,其控制功能同EX1。,MCS-51單片機(jī)的硬件資源,MCS51單片機(jī)中斷系統(tǒng)的管理是由中斷允許總控制位EA和各中斷源的中斷控制位聯(lián)合作用實(shí)現(xiàn)的,缺一不可。,4.中斷優(yōu)先級(jí)控制寄存器(IP),中斷優(yōu)先級(jí)控制寄存器的格式如下:,IP D7 D6 D5 D4 D3 D2 D1 D0,(B8H),MCS-51單片機(jī)規(guī)定了兩級(jí)中斷優(yōu)先級(jí):高級(jí)中斷和低級(jí)中斷,用中斷優(yōu)先級(jí)寄存器(IP)的5位狀態(tài)管理5個(gè)中斷源的優(yōu)先級(jí)別。相應(yīng)位是“0”的中斷源為低級(jí)中斷,相應(yīng)位是“1”的中斷源為高級(jí)中斷。,MCS-51
23、單片機(jī)的硬件資源,各狀態(tài)位的作用如下:,PS為串行口中斷優(yōu)先控制位,PS = 1,串行口為高優(yōu)先級(jí)中斷;PS = 0,串行口為低優(yōu)先級(jí)中斷。,PT1為定時(shí)器/計(jì)數(shù)器1(T1)中斷優(yōu)先控制位,PT1 = 1,T1為高優(yōu)先級(jí)中斷,PT1 = 0,T1為低優(yōu)先級(jí)中斷。,PT0為定時(shí)器/計(jì)數(shù)器優(yōu)先控制位,PT0 = 1,T0為高優(yōu)先級(jí)中斷;PT0 = 0,T0為低優(yōu)先級(jí)中斷。,PX0為外部中斷0中斷優(yōu)先控制位,PX0 = 1,外部中斷0為高優(yōu)先級(jí)中斷;PX0 = 0,外部中斷0為低優(yōu)先級(jí)中斷,MCS-51單片機(jī)的硬件資源,PX0為外部中斷0中斷優(yōu)先控制位,PX0 = 1,外部中斷0為高優(yōu)先級(jí)中斷;PX
24、0 = 0,外部中斷0為低優(yōu)先級(jí)中斷。,MCS51單片機(jī)優(yōu)先級(jí)的控制原則是:,為了實(shí)現(xiàn)中斷嵌套,高優(yōu)先級(jí)中斷請(qǐng)求可以中斷低優(yōu)先級(jí)的中斷服務(wù);反之則不允許。,同等優(yōu)先級(jí)中斷源之間不能中斷對(duì)方的中斷服務(wù)過(guò)程。,多個(gè)同級(jí)中斷源同時(shí)產(chǎn)生中斷請(qǐng)求時(shí),則按查詢(xún)順序確定哪個(gè)中斷請(qǐng)求先被響應(yīng)。MCS51單片機(jī)規(guī)定的查詢(xún)順序是:外部中斷0、定時(shí)器/計(jì)數(shù)器0、外部中斷1、定時(shí)器/計(jì)數(shù)器1和串行口中斷。,MCS-51單片機(jī)的硬件資源,5.2.3 中斷響應(yīng),一、中斷響應(yīng)過(guò)程,MCS51單片機(jī)在每個(gè)機(jī)器周期的S6狀態(tài)按優(yōu)先級(jí)順序查詢(xún)中斷標(biāo)志,如果查詢(xún)到某個(gè)標(biāo)志位為“1”,則表明有中斷請(qǐng)求發(fā)生,以下一個(gè)機(jī)器周期的S1狀態(tài)
25、開(kāi)始響應(yīng)中斷。但是,出現(xiàn)下列情況之一時(shí),中斷不能進(jìn)行:, CPU正在為高級(jí)或同級(jí)的中斷服務(wù);, 查詢(xún)中斷請(qǐng)求的機(jī)器周期不是當(dāng)前指令的最后一個(gè)機(jī)器周期(以確保當(dāng)前指令的完整執(zhí)行);, 正在執(zhí)行的指令是RETI或是訪問(wèn)IE或IP的指令(這時(shí),必須再執(zhí)行一條指令后才能響應(yīng)中斷)。,MCS-51單片機(jī)的硬件資源,以上三種情況,通常稱(chēng)為中斷受阻。 在響應(yīng)中斷請(qǐng)求時(shí),MCS51的中斷系統(tǒng)先把該中斷請(qǐng)求存在各自的中斷標(biāo)志位中,然后在下一個(gè)機(jī)器周期內(nèi)按照IP和固定的中斷優(yōu)先級(jí)順序查詢(xún)中斷標(biāo)志位狀態(tài),并完成中斷優(yōu)先級(jí)排隊(duì)。在下一個(gè)機(jī)器周期的S1狀態(tài)時(shí),MCS51開(kāi)始響應(yīng)最高優(yōu)先級(jí)中斷。在響應(yīng)中斷時(shí),CPU將自
26、動(dòng)做如下幾件事:,先將斷點(diǎn)地址壓入堆棧進(jìn)行保護(hù),然后根據(jù)不同的中斷源將程序轉(zhuǎn)向相應(yīng)的中斷服務(wù)程序入口。這是通過(guò)硬件自動(dòng)生成一條長(zhǎng)調(diào)用指令LCALL實(shí)現(xiàn)的。,中斷源與其中斷服務(wù)程序入口地址之間的關(guān)系是固定的,見(jiàn)表51。,表51 8051中斷服務(wù)程序入口地址表,ORG 0003H LJMP 2000H,二、中斷響應(yīng)時(shí)間,在實(shí)時(shí)控制系統(tǒng)中,為了滿足控制速度要求,常要弄清CPU響應(yīng)中斷所需的時(shí)間。中斷響應(yīng)時(shí)間是指從查詢(xún)中斷請(qǐng)求標(biāo)志位到轉(zhuǎn)向中斷服務(wù)程序入口地址所需的機(jī)器周期數(shù),一般是3-8個(gè)機(jī)器周期。,響應(yīng)中斷最短時(shí)間是:,CPU查詢(xún)中斷標(biāo)志的周期正好是執(zhí)行一條指令的最后一個(gè)機(jī)器周期(占用一個(gè)機(jī)器周期)
27、,此后,不需等待即可響應(yīng)中斷,硬件自動(dòng)生成并執(zhí)行LCALL指令(需要2個(gè)機(jī)器周期),所以總共需要3個(gè)機(jī)器周期。,響應(yīng)中斷最長(zhǎng)時(shí)間是:,CPU查詢(xún)中斷標(biāo)志時(shí),正好是開(kāi)始執(zhí)行RETI或訪問(wèn)IE、IP的指令,此時(shí),需要把當(dāng)前指令執(zhí)行完再繼續(xù)執(zhí)行一條指令后,才能響應(yīng)中斷。執(zhí)行前者最長(zhǎng)需2個(gè)機(jī)器周期,而執(zhí)行后者最長(zhǎng)需4個(gè)機(jī)器周期(如乘、除指令),再加上執(zhí)行長(zhǎng)調(diào)用指令LCALL所需2個(gè)機(jī)器周期,總共需要8個(gè)機(jī)器周期。,通常,中斷響應(yīng)時(shí)間可以不予考慮,但在某些需要精確定時(shí)的場(chǎng)合,應(yīng)作出調(diào)整,以保證精確的定時(shí)。,5.2.4中斷請(qǐng)求的撤除,在中斷請(qǐng)求被響應(yīng)前,中斷源發(fā)出的中斷請(qǐng)求是由CPU鎖存在特殊功能寄存器T
28、CON和SCON的相應(yīng)中斷標(biāo)志位中的。一旦某個(gè)中斷請(qǐng)求得到響應(yīng),CPU必須把它的相應(yīng)標(biāo)志位復(fù)位成“0”狀態(tài)。否則,MCS51就會(huì)因中斷未能得到及時(shí)撤除而重復(fù)響應(yīng)同一中斷請(qǐng)求,這是絕對(duì)不能允許的。,五個(gè)中斷源只分屬于三種中斷類(lèi)型。這三種類(lèi)型是:外部中斷、定時(shí)器溢出中斷和串行口中斷。對(duì)于這三種中斷類(lèi)型的中斷請(qǐng)求,其撤除方法是不同的。,一、定時(shí)器溢出中斷請(qǐng)求的撤除,定時(shí)器溢出中斷源的中斷請(qǐng)求是自動(dòng)撤除的,用戶(hù)根本不必專(zhuān)門(mén)為它們撤除。,二、串行口中斷請(qǐng)求的撤除,TI和RI是串行口中斷的標(biāo)志位,中斷系統(tǒng)不能自動(dòng)將它們撤除,這是因?yàn)镸CS51進(jìn)入串行口中斷服務(wù)程序后常需要對(duì)它們進(jìn)行檢測(cè),以測(cè)定串行口發(fā)生了
29、接收中斷還是發(fā)送中斷。為了防止CPU再次響應(yīng)這類(lèi)中斷,用戶(hù)應(yīng)在中斷服務(wù)程序的適當(dāng)位置處通過(guò)如下指令將它們撤除:,CLR TI ;撤除發(fā)送中斷 CLR RI ;撤除接收中斷,若采用字節(jié)指令,則也可采用如下指令: ANL SCON,#0FCH;撤除發(fā)送和接收中斷,三、外部中斷的撤除,外部中斷請(qǐng)求有二種觸發(fā)方式:電平觸發(fā)和負(fù)邊沿觸發(fā)。對(duì)于這兩種不同的中斷觸發(fā)方式,MCS51撤除它們的中斷請(qǐng)求的方法是不相同的。,在負(fù)邊沿觸發(fā)方式下,外部中斷標(biāo)志IE0和IE1是依靠CPU兩次檢測(cè)INT0和INT1上觸發(fā)電平狀態(tài)而置位的。因此,芯片設(shè)計(jì)者使CPU在響應(yīng)中斷時(shí)自動(dòng)復(fù)位IE0和IE1,以撤除INT0或INT1
30、上的中斷請(qǐng)求。在中斷服務(wù)時(shí),既然INT0或INT1停留在低電平,就不會(huì)再產(chǎn)生負(fù)邊沿而使相應(yīng)中斷標(biāo)志位IE0或IE1置位。,在電平觸發(fā)方式下,外部中斷標(biāo)志IE0和IE1是依靠CPU檢測(cè)INT0或INT1 上低電平而置位的。盡管CPU響應(yīng)中斷時(shí)相應(yīng)中斷標(biāo)志IE0或IE1,能自動(dòng)復(fù)位成“0”狀態(tài),但若外部中斷源不能及時(shí)撤除它在INT0或INT1上低電平就會(huì)再次使已經(jīng)變“0”的中斷標(biāo)志IE0或IE1置位,這是絕對(duì)不能允許的。因此,電平觸發(fā)型外部中斷請(qǐng)求的撤除必須使INT0或INT1上低電平隨著其中斷被CPU響應(yīng)而變?yōu)楦唠娖健?,外部中斷信號(hào),INSVR:ORL P1,#01H ANL P1,#
31、0FEH CLR IE0 END,5.2.5中斷系統(tǒng)的初始化,中斷系統(tǒng)初始化就是用戶(hù)對(duì)管理中斷系統(tǒng)的特殊功能寄存器中的各控制位進(jìn)行賦值。,中斷系統(tǒng)初始化步驟如下:,(1)開(kāi)相應(yīng)中斷源的中斷;,(2)設(shè)定所有中斷源的中斷優(yōu)先級(jí);,(3)若為外部中斷,則應(yīng)規(guī)定低電平還是負(fù)邊沿的中斷觸發(fā)方式。,MCS-51單片機(jī)的硬件資源,解: 采用位操作指令, 采用字節(jié)型指令,MCS-51單片機(jī)的硬件資源,5.2.6 MCS-51單片機(jī)的單步工作方式,單步工作方式,即單步執(zhí)行:就是由外來(lái)脈沖控制程序的執(zhí)行,使之達(dá)到來(lái)一個(gè)脈沖就執(zhí)行一條指令的目的。而外來(lái)脈沖是通過(guò)按鍵產(chǎn)生的,因此實(shí)際上單步執(zhí)行
32、就是按一次鍵執(zhí)行一條指令。,假定利用外部中斷0來(lái)實(shí)現(xiàn)程序的單步執(zhí)行,為此應(yīng)事先作好兩項(xiàng)準(zhǔn)備工作:, 建立單步執(zhí)行的外部控制電路;, 編寫(xiě)外部中斷0的中斷服務(wù)程序。,第五章 MCS-51單片機(jī)的硬件資源,CLR IT0 ;設(shè)置外部中斷0為電平觸發(fā) SETB EA;CPU開(kāi)中斷 SETB PX0;置外部中斷0為高優(yōu)先級(jí) SETB EX0;外部中斷0開(kāi)中斷,其初始化程序如下:,第五章 MCS-51單片機(jī)的硬件資源,5.2.7 外部中斷源的擴(kuò)展,一、定時(shí)器/計(jì)數(shù)器用于外部中斷源的擴(kuò)展,用8051的定時(shí)器/計(jì)數(shù)器作為計(jì)數(shù)器使用時(shí),計(jì)數(shù)輸入端T1(T0)發(fā)生負(fù)跳變將使計(jì)數(shù)器加1。利用此特性,適當(dāng)處理
33、計(jì)數(shù)初值,就可以把計(jì)數(shù)輸入端T1(T0)作為外部中斷請(qǐng)求輸入端。,例如,將定時(shí)器/計(jì)數(shù)器0設(shè)置為工作方式2、計(jì)數(shù)模式、計(jì)數(shù)初值0FFH,且允許中斷,其初始化程序如下:,MOV TMOD,#06H ;設(shè)置定時(shí)器0為工作方式2、計(jì)數(shù)模式 MOV TH0,#0FFH ;設(shè)置計(jì)數(shù)器初值 MOV TL0,#0FFH SETB TR0 ;啟動(dòng)定時(shí)器0 SETB ET0 ;允許定時(shí)器中斷 SETB EA ;CPU開(kāi)中斷,第五章 MCS-51單片機(jī)的硬件資源,以上程序執(zhí)行后,當(dāng)定時(shí)器/計(jì)數(shù)器0計(jì)數(shù)輸入端T0的信號(hào)發(fā)生負(fù)跳變時(shí),TL0加1,產(chǎn)生溢出,標(biāo)志位TF0置“1”,向CPU發(fā)出中斷請(qǐng)求,同時(shí)
34、TH0的值重新送入TL0。這樣T0端相當(dāng)于脈沖方式的外部中斷請(qǐng)求輸入端。,用本方法擴(kuò)展外部中斷源是以犧牲內(nèi)部定時(shí)中斷為代價(jià)的!,二、查詢(xún)式擴(kuò)展外部中斷源,當(dāng)外部中斷源較多時(shí),可以采用查詢(xún)的方式擴(kuò)展中斷源。把多個(gè)中斷源通過(guò)硬件(如或非門(mén))引入外中斷源輸入端(INT0或INT1),同時(shí)又連到某I/O口。這樣,每個(gè)中斷源都可能引起中斷,并在中斷服務(wù)程序中通過(guò)軟件查詢(xún)便可確定哪一個(gè)是正在申請(qǐng)的中斷源,其查詢(xún)的次序則由中斷源優(yōu)先級(jí)決定,這樣可實(shí)現(xiàn)多個(gè)外部中斷源的擴(kuò)展。,第五章 MCS-51單片機(jī)的硬件資源,當(dāng)系統(tǒng)的各部分工作正常時(shí),4個(gè)故障源輸入端全為低電平,顯示燈全熄滅。只有當(dāng)某部分出現(xiàn)故障時(shí),對(duì)應(yīng)的
35、輸入線由低電平變?yōu)楦唠娖?,從而引?031中斷,在中斷服務(wù)程序中通過(guò)查詢(xún)即可判定故障源,并進(jìn)行相應(yīng)的燈光顯示。,第五章 MCS-51單片機(jī)的硬件資源,對(duì)應(yīng)的參考程序清單如下:,ORG 0000H AJMP MAIN ORG 0003H AJMP PINT;轉(zhuǎn)中斷服務(wù)程序 ORG 100H MAIN:ANL P1,#55H;使P1口輸入不變,輸出全0 SETB IT0 ;置外部中斷0為邊沿觸發(fā)方式 SETB EX0;外部中斷0開(kāi)中斷 SETB EA;CPU開(kāi)中斷 LOOP: MOV A,P1;取P1口輸入狀態(tài) ANL A,#55H,第五章 MCS-51單片機(jī)
36、的硬件資源,JNZ LOOP;有外部中斷請(qǐng)求去LOOP ANL P1,#55H;無(wú)外部中斷請(qǐng)求輸出清0 ;(燈全滅) SJMP LOOP;去LOOP等待中斷,參考中斷服務(wù)程序如下:,PINT: JNB P1.0,L1 ;查詢(xún)中斷源,P1.0為0轉(zhuǎn)L1 SETB P1.1 ;P1.0為1,P1.1送出“1”使對(duì)應(yīng)的燈亮 SJMP L2 ;查詢(xún)中斷源,P1.2 L1: CLR P1.1 ;清P1.1,使對(duì)應(yīng)燈滅 L2: JNB P1.2,L3 ;P1.2為0轉(zhuǎn)查下一個(gè)中斷源,第五章 MCS-51單片機(jī)的硬件資源,SETB P1.3 ;P1.2為1,P1.3送出1使對(duì)應(yīng)燈亮
37、SJMP L4 L3: CLR P1.3 L4: JNB P1.4,L5 SETB P1.5 SJMP L6 L5: CLR P1.5 L6: JNB P1.6,L7 SETB P1.7 SJMP L8 L7: CLR P1.7 L8: RETI;返回主程序,第五章 MCS-51單片機(jī)的硬件資源,5.3 MCS-51單片機(jī)的定時(shí)器/計(jì)數(shù)器,5.3.1定時(shí)方法概述,可供選擇的定時(shí)方法有:,一、 軟件定時(shí),軟件定時(shí)靠執(zhí)行一個(gè)循環(huán)程序以進(jìn)行時(shí)間延遲。,特點(diǎn)是時(shí)間精確,且不需要外加硬件電路。但軟件定時(shí)要占用CPU開(kāi)銷(xiāo),因此軟件定時(shí)的時(shí)間不宜太長(zhǎng)。,二、硬件定時(shí),特點(diǎn)是(定時(shí)功能全部由硬件電路完
38、成)不占CPU時(shí)間,但需通過(guò)改變電路的元件參數(shù)來(lái)調(diào)節(jié)定時(shí)時(shí)間,在使用上不夠靈活方便。,第五章 MCS-51單片機(jī)的硬件資源,三、可編程定時(shí)器定時(shí),這種定時(shí)方法是通過(guò)對(duì)系統(tǒng)時(shí)鐘脈沖的計(jì)數(shù)來(lái)實(shí)現(xiàn)的。計(jì)數(shù)值通過(guò)程序設(shè)定,改變計(jì)數(shù)值,也就改變了定時(shí)時(shí)間,使用起來(lái)既靈活有方便。,MCS-51單片機(jī)把定時(shí)電路集成在芯片中,稱(chēng)之為定時(shí)器/計(jì)數(shù)器。,5.3.2定時(shí)器/計(jì)數(shù)器的定時(shí)和計(jì)數(shù)功能,MCS51單片機(jī)內(nèi)部有兩個(gè)可編程的定時(shí)器/計(jì)數(shù)器,分別稱(chēng)為定時(shí)器/計(jì)數(shù)器0和定時(shí)器/計(jì)數(shù)器1。它們都是16位加法計(jì)數(shù)結(jié)構(gòu),分別由TH0和TL0及TH1和TL1兩個(gè)8位計(jì)數(shù)器組成。,第五章 MCS-51單片機(jī)的硬件資源,,一
39、、計(jì)數(shù)功能,計(jì)數(shù)是指對(duì)外部事件進(jìn)行計(jì)數(shù)。外部事件的發(fā)生以輸入脈沖表示,因此計(jì)數(shù)功能的實(shí)質(zhì)就是對(duì)外來(lái)脈沖進(jìn)行計(jì)數(shù)。MCS51芯片有T0(P3.4)和T1(P3.5)兩個(gè)信號(hào)引腳,分別是這兩個(gè)計(jì)數(shù)器的輸入端。外部輸入的脈沖為負(fù)跳變時(shí)有效,進(jìn)行計(jì)數(shù)器加1。,單片機(jī)在每個(gè)機(jī)器周期的S5P2拍節(jié)對(duì)外部計(jì)數(shù)脈沖進(jìn)行采樣。如果前一個(gè)機(jī)器周期采樣為高電平,后一個(gè)機(jī)器周期采樣為低電平,即為一個(gè)有效脈沖。在下一個(gè)機(jī)器周期的S3P1進(jìn)行計(jì)數(shù)??梢?jiàn)采樣計(jì)數(shù)脈沖是在2個(gè)機(jī)器周期進(jìn)行的。因此,計(jì)數(shù)脈沖的頻率不能高于震蕩脈沖頻率的1/24。外部輸入脈沖高電平和低電平時(shí)間必須在一個(gè)機(jī)器周期以上。,第五章 MCS-51單片機(jī)的
40、硬件資源,,二、定時(shí)功能,定時(shí)功能也是通過(guò)定時(shí)器/計(jì)數(shù)器的計(jì)數(shù)來(lái)實(shí)現(xiàn)的。不過(guò)此時(shí)的計(jì)數(shù)脈沖來(lái)自單片機(jī)內(nèi)部,即每個(gè)機(jī)器周期產(chǎn)生一個(gè)計(jì)數(shù)脈沖,也就是每個(gè)機(jī)器周期計(jì)數(shù)器加1。,由于一個(gè)機(jī)器周期等于12個(gè)振蕩脈沖周期,因此計(jì)數(shù)頻率為振蕩頻率的1/12。這樣不但可以根據(jù)計(jì)數(shù)值計(jì)算出定時(shí)時(shí)間,也可以反過(guò)來(lái)按定時(shí)時(shí)間的要求計(jì)算出計(jì)數(shù)器的初值。,第五章 MCS-51單片機(jī)的硬件資源,,5.3.3 定時(shí)器/計(jì)數(shù)器的控制寄存器,與定時(shí)器/計(jì)數(shù)器應(yīng)用有關(guān)的控制寄存器有:,一、 定時(shí)控制寄存器(TCON),TCON寄存器既參與中斷控制又參與定時(shí)控制,其中有關(guān)定時(shí)的控制位共有4位:, TF0和TF1計(jì)數(shù)溢出標(biāo)志位,當(dāng)計(jì)
41、數(shù)器計(jì)數(shù)溢出(計(jì)滿)時(shí),該位置“1”;使用查詢(xún)方式時(shí),此位作狀態(tài)位供查詢(xún),但應(yīng)注意查詢(xún)有效后,須用軟件方法及時(shí)將該位清“0”;使用中斷方式時(shí),此位作中斷標(biāo)志位,在轉(zhuǎn)向中斷服務(wù)程序時(shí)由硬件自動(dòng)清“0”。,第五章 MCS-51單片機(jī)的硬件資源,, TR0和TR1定時(shí)器運(yùn)行控制位 TR0(TR1)=0 停止定時(shí)器/計(jì)數(shù)器工作 TR0(TR1)=1 啟動(dòng)定時(shí)器/計(jì)數(shù)器工作 該位根據(jù)需要以軟件方法使其置“1”或清“0”。,二、 工作方式控制寄存器(TMOD, 89H),各位定義如下:,第五章 MCS-51單片機(jī)的硬件資源,M1 M0工作方式選擇位 M1 M0=00 方式0為13位定時(shí)器/計(jì)數(shù)器; M1
42、M0=01 方式1為16位定時(shí)器/計(jì)數(shù)器; M1 M0=10 方式2為常數(shù)自動(dòng)裝入的8位定時(shí)器/計(jì)數(shù)器; M1 M0=11 方式3(僅適用于T0)為兩個(gè)8位定時(shí)器/計(jì)數(shù)器,在方式3時(shí)T1停止計(jì)數(shù)。,GATE門(mén)控位 GATE=0 由運(yùn)行控制位TR啟動(dòng)定時(shí)器; GATE=1 由外中斷請(qǐng)求信號(hào)(INT0或INT1)啟動(dòng)定時(shí)器; C/T定時(shí)方式或計(jì)數(shù)方式選擇位 C/T=0 定時(shí)工作方式; C/T=1 計(jì)數(shù)工作方式;,,,,,第五章 MCS-51單片機(jī)的硬件資源,三、中斷允許控制寄存器(IE,A8H),與定時(shí)器/計(jì)數(shù)器有關(guān)的位重復(fù)介紹如下:,EA中斷允許總控制位。,ET0和ET1定時(shí)/計(jì)數(shù)中斷允許控制位
43、。 ET0(ET1)= 0,禁止定時(shí)/計(jì)數(shù)中斷;ET0(ET1)=1,允許定時(shí)/計(jì)數(shù)中斷。,5.3.4 定時(shí)器/計(jì)數(shù)器工作方式,MCS51單片機(jī)的定時(shí)器/計(jì)數(shù)器共有4種工作模式。,一、方式0,第五章 MCS-51單片機(jī)的硬件資源,,定時(shí)器/計(jì)數(shù)器方式0的計(jì)數(shù)器結(jié)構(gòu):,第五章 MCS-51單片機(jī)的硬件資源,,定時(shí)器/計(jì)數(shù)器運(yùn)行控制的情況:,由TR0控制的情況,要運(yùn)行控制位TR0能夠控制定時(shí)器/計(jì)數(shù)器的運(yùn)行,其或門(mén)的輸出一定要為1,這就意味著GATE要設(shè)置為0或者INT0=1。 因此在單片機(jī)的定時(shí)或計(jì)數(shù)應(yīng)用中,要注意定時(shí)器方式寄存器TMOD的GATE位一定要設(shè)置為0。,,第五章 MCS-51單片
44、機(jī)的硬件資源,,2、定時(shí)和計(jì)數(shù)應(yīng)用,在方式0下,當(dāng)為計(jì)數(shù)工作方式時(shí),計(jì)數(shù)值的范圍是:18192(213),當(dāng)為定時(shí)工作方式時(shí),定時(shí)時(shí)間的計(jì)算公式為: T=(213計(jì)數(shù)初值)晶振周期12,如晶振頻率為6MHZ,則最小定時(shí)時(shí)間為:,Tmin=213(2131)1/610- 612 =210-6=2(s),最大定時(shí)時(shí)間為:,Tmax=(2130)1/610-612=16384(s),第五章 MCS-51單片機(jī)的硬件資源,例5.3設(shè)單片機(jī)晶振頻率為6MHZ,使用定時(shí)器1以方式0產(chǎn)生周期為500s的等寬正方波連續(xù)脈沖,并由P1.0輸出。以查詢(xún)方式完成。,解: 計(jì)算計(jì)數(shù)初值,欲產(chǎn)生500s的等寬正方波脈
45、沖,只需在P1.0端以250s為周期交替輸出高低電平即可實(shí)現(xiàn),為此定時(shí)時(shí)間應(yīng)為250s。使用6MHZ晶振,則一個(gè)機(jī)器周期為2s。方式0為13位計(jì)數(shù)結(jié)構(gòu)。設(shè)待求的計(jì)數(shù)初值為X,則,(213X)210-6=25010-6,求解得:X=8067。二進(jìn)制數(shù)表示為0001111110000011B。十六進(jìn)制(按方式0的13位11111100XXX00011)表示得:高8位為0FCH,低5位為03H。,第五章 MCS-51單片機(jī)的硬件資源, 相關(guān)控制寄存器的設(shè)定,TMOD各位的設(shè)定。設(shè)定方式0:M1M0=00;實(shí)現(xiàn)定時(shí):C/T=0;定時(shí)應(yīng)用:GATE=0。注意: 定時(shí)器/計(jì)數(shù)器0不用,一般來(lái)說(shuō)不要改變其原
46、設(shè)置,為此在程序設(shè)計(jì)時(shí),應(yīng)加以屏蔽。,TCON(地址:88H)是可以位尋址的,又因與該題有關(guān)的位只有TR1,故這里采用位尋址方式,用設(shè)置TR1 =1來(lái)啟動(dòng)定時(shí)器T1,TR1 =0來(lái)停止定時(shí)器T1。,IE的設(shè)定。題目要求采用查詢(xún)方式,當(dāng)定時(shí)時(shí)間到定時(shí)器溢出標(biāo)志位TF1置1時(shí),不允許產(chǎn)生中斷,故應(yīng)禁止中斷,即置IE=00H。,第五章 MCS-51單片機(jī)的硬件資源, 程序設(shè)計(jì),ANL TMOD,#0FH ;設(shè)置T1為定時(shí)工作方式0 ORL TMOD,#00H ;且不影響T0的工作 MOV TH1,#0FCH ;置計(jì)數(shù)初值 MOV TL1,#03H MOV IE,#00H ;禁止中斷 LOO
47、P:SETB TR1 ;啟動(dòng)定時(shí)器 JBC TF1,LOOP1 ;查詢(xún)計(jì)數(shù)溢出 AJMP LOOP LOOP1:MOV TH1,#0FCH ;重新設(shè)置計(jì)數(shù)初值 MOV TL1,#03H CPL P1.0 ;輸出取反 AJMP LOOP ;重復(fù)循環(huán) END,第五章 MCS-51單片機(jī)的硬件資源,二、方式1,方式1是16位計(jì)數(shù)結(jié)構(gòu)的工作方式,計(jì)數(shù)器由TH0全部8位和TL0全部8位構(gòu)成。,第五章 MCS-51單片機(jī)的硬件資源,當(dāng)定時(shí)器/計(jì)數(shù)器在方式1下作計(jì)數(shù)器用時(shí),其計(jì)數(shù)范圍是:165536(216),當(dāng)定時(shí)器/計(jì)數(shù)器在方式1下作定時(shí)器用時(shí),其定時(shí)時(shí)間計(jì)算公式為: T=(216-計(jì)數(shù)初
48、值)晶振周期12,如晶振頻率為6MHZ,則最小定時(shí)時(shí)間為: Tmin=216-(216-1)1/6 10-612 =210-6=2(s),第五章 MCS-51單片機(jī)的硬件資源,X=65411=FF83H,即可得:TH0=0FFH,TL0=83H,最大定時(shí)時(shí)間為: Tmax=(216-0)1/610-612=131072 10-6 =131072(s),例5.4設(shè)單片機(jī)晶振頻率為6MHZ,要求使用定時(shí)器0工作方式1產(chǎn)生周期為500s的等寬正脈沖,并在P1.0端輸出。試編寫(xiě)采用中斷方式完成的相關(guān)程序。,解:.計(jì)算計(jì)數(shù)初值,(216-X)1/610-612=25010-6,第五章 MCS-51單片
49、機(jī)的硬件資源,.設(shè)置各相關(guān)控制寄存器,TMOD應(yīng)設(shè)置為XXXX0001B; IE和TCON均采用位尋址方式。,.程序設(shè)計(jì),ORG 0000H START: AJMP MAIN ORG 000BH AJMP INTER ORG 0100H MAIN: ANL TMOD,#0F0H ;置定時(shí)器0工作方式1 ORL TMOD,#01H,第五章 MCS-51單片機(jī)的硬件資源,MOV TH0,#0FFH ;設(shè)置計(jì)數(shù)初值 MOV TL0,#83H SETB EA ;CPU開(kāi)中斷 SETB ET0 ;定時(shí)器0開(kāi)中斷 SETB TR0 ;啟動(dòng)定時(shí)器0 SJMP ;等
50、待中斷 INTER:MOV TH0,#0FF ;重新設(shè)置計(jì)數(shù)初值 MOV TL0, #83H CPL P1.0 ;輸出取反 RETI ;中斷返回 END,第五章 MCS-51單片機(jī)的硬件資源,三、方式2,具有自動(dòng)重裝計(jì)數(shù)初值的功能。在這種工作方式下,把16位計(jì)數(shù)分為兩部分,即以TL作計(jì)數(shù)器,以TH作預(yù)置計(jì)數(shù)器,初始化時(shí)把計(jì)數(shù)初值分別裝入TL和TH中。當(dāng)計(jì)數(shù)溢出時(shí),由預(yù)置計(jì)數(shù)器自動(dòng)給計(jì)數(shù)器TL重新裝初值。,第五章 MCS-51單片機(jī)的硬件資源,2、循環(huán)定時(shí)和循環(huán)計(jì)數(shù)應(yīng)用,自動(dòng)重裝工作方式非常適應(yīng)于循環(huán)定時(shí)或循環(huán)計(jì)數(shù)應(yīng)用。,例5.5已知晶振頻率fosc=6MHz,要求使用定時(shí)
51、器0以工作方式2產(chǎn)生100s定時(shí),在P1.0輸出周期為200s的連續(xù)正方波脈沖。試編寫(xiě)相關(guān)程序。,解:計(jì)算計(jì)數(shù)初值,在6MHZ晶振下,一個(gè)機(jī)器周期為2s,假設(shè)計(jì)數(shù)初值為X,則: (28-X)210-6=10010-6,求解得: X=206=0CEH,第五章 MCS-51單片機(jī)的硬件資源, 各有關(guān)控制寄存器的設(shè)置,IE和TCON均采用位尋址方式,即分別將應(yīng)位置“1”或清“0”。,TMOD的設(shè)置:, 程序設(shè)計(jì)(查詢(xún)方式),第五章 MCS-51單片機(jī)的硬件資源,ANL TMOD,#0F0H;設(shè)置定時(shí)器0 ORL TMOD,#02H ;為工作方式2 MOV TH0,#0CEH ;設(shè)置計(jì)數(shù)初值
52、 MOV,TL0,#0CEH MOV IE,#00H;禁止中斷 SETB TR0;啟動(dòng)定時(shí) LOOP:JBC TF0,LOOP1;查詢(xún)計(jì)數(shù)溢出 AJMP LOOP LOOP1:CPL P1.0;輸出方波,初值自動(dòng)裝入 AJMP LOOP,第五章 MCS-51單片機(jī)的硬件資源, 程序設(shè)計(jì)(中斷方式) 主程序: ANL TMOD,#0F0H ORL TMOD,#02H MOV TH0, #0CEH MOV TL0, #0CEH SETB EA ;CPU開(kāi)中斷 SETB ET0 ;定時(shí)器0開(kāi)中斷 SETB TR0 ;啟動(dòng)定時(shí) SJMP ;等待中斷 中斷服務(wù)
53、程序: CLP P1.0 RETI,第五章 MCS-51單片機(jī)的硬件資源,四、 方式3,前三種工作方式,對(duì)兩個(gè)定時(shí)器/計(jì)數(shù)器的設(shè)置和使用是完全相同的。但是在工作方式3下,兩個(gè)定時(shí)器/計(jì)數(shù)器的設(shè)置和使用卻是不同的。,1、工作方式3下的定時(shí)器/計(jì)數(shù)器0,在工作方式3下,定時(shí)器/計(jì)數(shù)器0被拆成兩個(gè)獨(dú)立的8位計(jì)數(shù)器TL0和TH0。其中TL0既可以用作計(jì)數(shù),又可以用作定時(shí),定時(shí)器/計(jì)數(shù)器0的各控制位和引腳信號(hào)全歸它使用。其功能和操作與方式0和方式1完全相同,而且邏輯電路結(jié)構(gòu)也極其類(lèi)似,如圖513a所示。,第五章 MCS-51單片機(jī)的硬件資源,定時(shí)器/計(jì)數(shù)器0的高8位TH0,則只能作為簡(jiǎn)單的定時(shí)器使用
54、。而且由于定時(shí)器/計(jì)數(shù)器0的控制位已被TL0占用,因此只好借用定時(shí)器/計(jì)數(shù)器1的控制位TR1和TF1。即以計(jì)數(shù)溢出去置位TF1,而定時(shí)的啟動(dòng)和停止則由TR1的狀態(tài)控制,見(jiàn)圖5 13b。,第五章 MCS-51單片機(jī)的硬件資源,在工作方式3下,定時(shí)器/計(jì)數(shù)器0可以構(gòu)成兩個(gè)定時(shí)器或一個(gè)定時(shí)器一個(gè)計(jì)數(shù)器。,2、在定時(shí)器/計(jì)數(shù)器0 設(shè)置為工作方式3時(shí)的定時(shí)器/計(jì)數(shù)器1,定時(shí)器/計(jì)數(shù)器1不能工作于方式3,只能工作于方式0、方式1或方式2。且在定時(shí)器/計(jì)數(shù)器0已工作于方式3時(shí),定時(shí)器/計(jì)數(shù)器1通常用作串行口的波特率發(fā)生器,以確定串行通信的速率。因?yàn)橐褯](méi)有計(jì)數(shù)溢出標(biāo)志位TF1可供使用,因此只能把計(jì)數(shù)溢出直接送
55、給串行口,如圖5 14所示。,第五章 MCS-51單片機(jī)的硬件資源,圖514定時(shí)器/計(jì)數(shù)器0在方式3時(shí)定時(shí)器/計(jì)數(shù)器1的使用,當(dāng)作為波特率發(fā)生器使用時(shí),只需設(shè)置好工作方式,便可自動(dòng)運(yùn)行。如要停止工作,只需送入一個(gè)把它設(shè)置為方式3的方式控制字就可以了。,第五章 MCS-51單片機(jī)的硬件資源,5.4 MCS-51單片機(jī)的串行接口及其串行通信,5.4.1串行通信基礎(chǔ),并行數(shù)據(jù)傳送的特點(diǎn)是:多個(gè)數(shù)據(jù)位同時(shí)傳送,傳送速度快,效率高。但并行數(shù)據(jù)傳送有多少數(shù)據(jù)位就需多少根數(shù)據(jù)線,因此傳送成本高。適用于短距離的數(shù)據(jù)傳送,如計(jì)算機(jī)內(nèi)部的數(shù)據(jù)傳送 。,串行數(shù)據(jù)傳送的特點(diǎn)是:數(shù)據(jù)傳送按位順序進(jìn)行,最少只需一根傳輸線
56、即可完成,成本低但速度慢。計(jì)算機(jī)與外界的數(shù)據(jù)傳送大多數(shù)是串行的,其傳送的距離可以從幾米到幾千公里。,第五章 MCS-51單片機(jī)的硬件資源,計(jì)算機(jī)與外界的數(shù)據(jù)傳送稱(chēng)之為通信,串行通信又分為異步和同步兩種方式。,一、異步串行通信的字符格式,異步串行通信以字符為單位,即一個(gè)字符一個(gè)字符的傳送。,第五章 MCS-51單片機(jī)的硬件資源, 奇偶效驗(yàn)位用于對(duì)字符的傳送作正確性檢查,因此奇偶效驗(yàn)位是可選擇的,共有3種可能,即奇效驗(yàn)、偶效驗(yàn)和無(wú)效驗(yàn),由用戶(hù)根據(jù)需要選定。, 起始位開(kāi)始一個(gè)字符的傳送的標(biāo)志位。起始位使數(shù)據(jù)線處于“0”狀態(tài)。, 數(shù)據(jù)位起始位之后傳送的數(shù)據(jù)信號(hào)位。在數(shù)據(jù)位中,低位在前(左)高位在后(右
57、)。由于字符編碼方式的不同,數(shù)據(jù)位可以是5、6、7或8位。, 停止位用以標(biāo)志一個(gè)字符的結(jié)束,它對(duì)應(yīng)于“1”狀態(tài)。停止位在一幀的最后,它可能是1、1.5或2位,在實(shí)際中根據(jù)需要確定。,第五章 MCS-51單片機(jī)的硬件資源, 位時(shí)間一個(gè)格式位的時(shí)間寬度。, 幀(frame)從起始位開(kāi)始到停止位結(jié)束的全部?jī)?nèi)容稱(chēng)之為一幀。幀是一個(gè)字符的完整通信格式,因此也就把串行通信的字符格式稱(chēng)之為幀格式。,二、異步串行通信的信號(hào)形式,1、近程通信,近程通信又稱(chēng)本地通信。,近程通信采用數(shù)字信號(hào)直接傳送形式,即在傳送過(guò)程中不改變?cè)瓟?shù)據(jù)代碼的波形和頻率。這種數(shù)據(jù)傳送方式稱(chēng)之為基帶傳送方式。,第五章 MCS-51單片機(jī)的硬
58、件資源,計(jì)算機(jī)內(nèi)部的數(shù)據(jù)信號(hào)是TTL電平標(biāo)準(zhǔn),而通信線上的數(shù)據(jù)信號(hào)卻是RS232C電平標(biāo)準(zhǔn)。然而,盡管電平標(biāo)準(zhǔn)不同,但數(shù)據(jù)信號(hào)的波形和頻率并沒(méi)有改變。近程串行通信只需用傳輸線把兩端的接口電路直接連起來(lái)即可實(shí)現(xiàn),既方便又經(jīng)濟(jì)。,第五章 MCS-51單片機(jī)的硬件資源,,2、遠(yuǎn)程通信,在遠(yuǎn)程串行通信中,應(yīng)使用專(zhuān)用的通信電纜,但出于經(jīng)濟(jì)上的考慮也可以使用電話線作為傳輸線。,遠(yuǎn)距離直接傳送數(shù)字信號(hào),信號(hào)會(huì)發(fā)生畸變,因此要把數(shù)字信號(hào)變?yōu)槟M信號(hào)再進(jìn)行傳送。信號(hào)形式的轉(zhuǎn)變通常使用頻率調(diào)制法,即以不同頻率的載波信號(hào)代表數(shù)字信號(hào)的兩種不同電平狀態(tài)。這種數(shù)據(jù)傳送方式就稱(chēng)為頻帶傳送方式。,第五章 MCS-51單片機(jī)
59、的硬件資源,三、串行通信的數(shù)據(jù)通路形式,1、單工(Simplex)形式 單工形式的數(shù)據(jù)傳送是單向的,通信雙方中一方固定為接收端。單工形式的串行通信,只需要一條數(shù)據(jù)線,如圖518所示,第五章 MCS-51單片機(jī)的硬件資源,2、半雙工(Half-duplex)形式 半雙工形式的數(shù)據(jù)傳送也是雙向的,但任何時(shí)刻只能由其中的一方發(fā)送數(shù)據(jù),另一方接收數(shù)據(jù)。因此半雙工形式既可以使用一條數(shù)據(jù)線,也可以使用兩條數(shù)據(jù)線,如圖519所示。,3、全雙工(Full-duplex)形式 全雙工形式的數(shù)據(jù)傳送是雙向的,且可以同時(shí)發(fā)送和接收數(shù)據(jù),因此全雙工形式的串行通信需要兩條數(shù)據(jù)線,如圖520所示。,第五章 M
60、CS-51單片機(jī)的硬件資源,四、 串行通信的傳送速率,傳送速率用于描述數(shù)據(jù)傳送的快慢。在串行通信中,數(shù)據(jù)是按位進(jìn)行傳送的,因此傳送速率用每秒鐘傳送格式位的數(shù)目來(lái)表示,稱(chēng)之為波特率(baud rate)。每秒傳送一個(gè)格式位就是1波特,即: 1波特=1bps(位/秒),在串行通信中,格式位的發(fā)送和接收分別由發(fā)送時(shí)鐘脈沖和接收時(shí)鐘脈沖進(jìn)行定時(shí)控制。,串行通信可以使用的標(biāo)準(zhǔn)波特率在RS232C標(biāo)準(zhǔn)中已有規(guī)定,使用時(shí)應(yīng)根據(jù)速度需要、線路質(zhì)量以及設(shè)備情況等因素選定。,第五章 MCS-51單片機(jī)的硬件資源,五、串行接口電路通用的異步接收/發(fā)送器(UART),第五章 MCS-51單片機(jī)的硬件資源,當(dāng)計(jì)算機(jī)
61、向外發(fā)送數(shù)據(jù)時(shí),必須將并行的數(shù)據(jù)轉(zhuǎn)換為串行的數(shù)據(jù)再傳送。反之,又必須將串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù)輸入計(jì)算機(jī)中。,通用的異步接收/發(fā)送器,簡(jiǎn)稱(chēng)UART(Universal Asynchronous Receiver/Transmitter),就是完成這一功能的硬件電路。,它既能發(fā)送,由并行串行輸出,又能接收,由串行并行輸入。對(duì)每一方來(lái)說(shuō)都是一個(gè)雙緩沖結(jié)構(gòu)。當(dāng)接收數(shù)據(jù)時(shí),串行數(shù)據(jù)先經(jīng)RXD(Receiver Data)端進(jìn)入移位寄存器,再經(jīng)移位寄存器輸出并行數(shù)據(jù)到數(shù)據(jù)緩沖器,最后通過(guò)數(shù)據(jù)總線送到CPU;當(dāng)發(fā)送信息時(shí),先由CPU經(jīng)數(shù)據(jù)總線將并行數(shù)據(jù)給緩沖器,再由緩沖器并行送給移位寄存器,最后逐位由TXD
62、(Transmitter Data)端輸出。所有這些工作都是在時(shí)鐘信號(hào)和其它控制信號(hào)作用下完成的。,第五章 MCS-51單片機(jī)的硬件資源,為了檢測(cè)傳送中可能發(fā)生的錯(cuò)誤,UART在發(fā)送時(shí)會(huì)檢查每個(gè)要傳送的字符中“1”的個(gè)數(shù),自動(dòng)在奇偶效驗(yàn)位上添“1”或“0”,使得“1”的總和在偶效驗(yàn)時(shí)為偶數(shù),奇效驗(yàn)時(shí)為奇數(shù)。UART在接收時(shí)會(huì)檢查字符中的每一位并計(jì)其“1”的總和,以確定是否發(fā)生傳送錯(cuò)誤。,為了使數(shù)據(jù)傳輸更為可靠,UART常設(shè)置如下三鐘出錯(cuò)標(biāo)志: 奇偶錯(cuò)誤(Parrity Error):奇偶錯(cuò)誤由奇偶錯(cuò)標(biāo)志觸發(fā)器PE指示,該觸發(fā)器由奇偶效驗(yàn)結(jié)果信號(hào)置位。 幀錯(cuò)誤(Frame Error):幀錯(cuò)誤由
63、幀錯(cuò)誤標(biāo)志觸發(fā)器FE指示,該觸發(fā)器在UART檢測(cè)到幀的停止位不是“1”而為“0”時(shí)被置位。,第五章 MCS-51單片機(jī)的硬件資源, 溢出錯(cuò)誤(Overrun Error):UART接收端 在接收到第一個(gè)字符后便放入“接收數(shù)據(jù)緩沖器”,然后就繼續(xù)從RXD線上接收第二個(gè)字符,并等待CPU從“接收數(shù)據(jù)緩沖器”中取走第一個(gè)字符。如果CPU很忙,一直沒(méi)有機(jī)會(huì)取走第一個(gè)字符,以致接收到的第二個(gè)字符進(jìn)入“接收數(shù)據(jù)緩沖器”而造成第一個(gè)字符被丟失。這種錯(cuò)誤就稱(chēng)為溢出錯(cuò)誤。發(fā)生溢出錯(cuò)誤時(shí),UART自動(dòng)使“溢出錯(cuò)誤標(biāo)志觸發(fā)器”O(jiān)E置位。,接收數(shù)據(jù)的確認(rèn)。UART通過(guò)對(duì)RXD線的采樣來(lái)完成接收數(shù)據(jù)的確認(rèn)。對(duì)RXD的
64、采樣由接收時(shí)鐘RXC完成,RXC的周期Tc和傳送數(shù)據(jù)位的傳輸時(shí)間Td之間必須滿足如下關(guān)系:,第五章 MCS-51單片機(jī)的硬件資源,Tc=,式中,K=16或64?,F(xiàn)以K=16來(lái)說(shuō)明UART對(duì)RXD線上字符的接收過(guò)程。,UART按RXC脈沖上升沿采樣RXD線。每當(dāng)連續(xù)采樣到RXD線上8個(gè)低電平(起始位之半)后,UART便確認(rèn)對(duì)方在發(fā)送數(shù)據(jù)(不是干擾信號(hào))。此后,UART便每隔16個(gè)RXC脈沖采樣RXD線一次,并把采樣到的數(shù)據(jù)作為輸入數(shù)據(jù),以移位方式存入接收移位寄存器。RXC對(duì)RXD線的采樣關(guān)系如圖522所示。,第五章 MCS-51單片機(jī)的硬件資源,5.4.2 MCS51單片機(jī)的串行口及其控制寄存器
65、,MCS51系列單片機(jī)的串行口是全雙工的,這個(gè)口既可以用于網(wǎng)絡(luò)通信,也可以實(shí)現(xiàn)串行異步通信,還可以作為同步移位寄存器使用。,第五章 MCS-51單片機(jī)的硬件資源,在串行口中可供用戶(hù)使用的是它的寄存器,因此了解其寄存器結(jié)構(gòu)對(duì)用戶(hù)來(lái)說(shuō)是十分重要的。,一、串行口寄存器結(jié)構(gòu),第五章 MCS-51單片機(jī)的硬件資源,在接收方式下,串行數(shù)據(jù)通過(guò)引腳RXD(P3.0)進(jìn)入。由于在接收寄存器之間還有移位寄存器,從而構(gòu)成了串行接收的雙緩沖結(jié)構(gòu),以避免在數(shù)據(jù)接收過(guò)程中出現(xiàn)幀重疊錯(cuò)誤,即在下一幀數(shù)據(jù)來(lái)時(shí),前一幀數(shù)據(jù)還沒(méi)有讀走。,在發(fā)送方式下,串行數(shù)據(jù)通過(guò)TXD(P3.1)送出。與接收數(shù)據(jù)情況不同,發(fā)送數(shù)據(jù)時(shí),由于CP
66、U是主動(dòng)的,不會(huì)發(fā)生幀重疊錯(cuò)誤,因此發(fā)送電路就不需雙重緩沖結(jié)構(gòu),這樣可以提高數(shù)據(jù)發(fā)送速度。,第五章 MCS-51單片機(jī)的硬件資源,二、串行通信控制寄存器,1、串行控制寄存器SCON (99H),第五章 MCS-51單片機(jī)的硬件資源,SM2是多機(jī)通信控制位。因多機(jī)通信是在方式2和方式3下進(jìn)行,所以SM2位主要用于方式2和方式3。當(dāng)串行口以方式2或方式3接收時(shí),如SM2 = 1,則只有當(dāng)接收到的第9位數(shù)據(jù)(RB8)為“1”時(shí),才將接收到的前8位數(shù)據(jù)送入SBUF,并置位RI產(chǎn)生中斷請(qǐng)求;否則,將接收到的前8位數(shù)據(jù)丟棄。而當(dāng)SM2 = 0時(shí),不論第9位數(shù)據(jù)為“0”還是為“1”,都將前8位數(shù)據(jù)裝入SBUF中,并產(chǎn)生中斷請(qǐng)求。,在方式1時(shí),若SM2 = 1,則只有接收到有效停止位時(shí),RI才置1,以便接收下一幀數(shù)據(jù)。,在方式0時(shí),SM2必須為0。,REN是允許接收位,當(dāng)REN = 1時(shí),允許接收數(shù)據(jù),當(dāng)REN = 0時(shí),禁止接收數(shù)據(jù)。該位由軟件置位或復(fù)位。,第五章 MCS-51單片機(jī)的硬件資源,TB8是發(fā)送數(shù)據(jù)的第9位。在方式2、3時(shí),其值由用戶(hù)通過(guò)軟件設(shè)置。在雙機(jī)通信時(shí),TB8一般作為奇偶效驗(yàn)位使
- 溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 川渝旅游日記成都重慶城市介紹推薦景點(diǎn)美食推薦
- XX國(guó)有企業(yè)黨委書(shū)記個(gè)人述責(zé)述廉報(bào)告及2025年重點(diǎn)工作計(jì)劃
- 世界濕地日濕地的含義及價(jià)值
- 20XX年春節(jié)節(jié)后復(fù)工安全生產(chǎn)培訓(xùn)人到場(chǎng)心到崗
- 大唐女子圖鑒唐朝服飾之美器物之美繪畫(huà)之美生活之美
- 節(jié)后開(kāi)工第一課輕松掌握各要點(diǎn)節(jié)后常見(jiàn)的八大危險(xiǎn)
- 廈門(mén)城市旅游介紹廈門(mén)景點(diǎn)介紹廈門(mén)美食展示
- 節(jié)后開(kāi)工第一課復(fù)工復(fù)產(chǎn)十注意節(jié)后復(fù)工十檢查
- 傳統(tǒng)文化百善孝為先孝道培訓(xùn)
- 深圳城市旅游介紹景點(diǎn)推薦美食探索
- 節(jié)后復(fù)工安全生產(chǎn)培訓(xùn)勿忘安全本心人人講安全個(gè)個(gè)會(huì)應(yīng)急
- 預(yù)防性維修管理
- 常見(jiàn)閥門(mén)類(lèi)型及特點(diǎn)
- 設(shè)備預(yù)防性維修
- 2.乳化液泵工理論考試試題含答案