![第四章單片機(jī)的其他片內(nèi)功能部件_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/d5be1648-0f2d-4bfd-9002-47764b5f8f65/d5be1648-0f2d-4bfd-9002-47764b5f8f651.gif)
![第四章單片機(jī)的其他片內(nèi)功能部件_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/d5be1648-0f2d-4bfd-9002-47764b5f8f65/d5be1648-0f2d-4bfd-9002-47764b5f8f652.gif)
![第四章單片機(jī)的其他片內(nèi)功能部件_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/d5be1648-0f2d-4bfd-9002-47764b5f8f65/d5be1648-0f2d-4bfd-9002-47764b5f8f653.gif)
![第四章單片機(jī)的其他片內(nèi)功能部件_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/d5be1648-0f2d-4bfd-9002-47764b5f8f65/d5be1648-0f2d-4bfd-9002-47764b5f8f654.gif)
![第四章單片機(jī)的其他片內(nèi)功能部件_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/4/d5be1648-0f2d-4bfd-9002-47764b5f8f65/d5be1648-0f2d-4bfd-9002-47764b5f8f655.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、l實(shí)現(xiàn)和不同外設(shè)的速度匹配l改變數(shù)據(jù)傳送方式l改變信號(hào)的性質(zhì)和電平外部設(shè)備的編址外部設(shè)備的編址1.對(duì)外設(shè)端口單獨(dú)編址對(duì)外設(shè)端口單獨(dú)編址 IN A,(N) ;N端口中的數(shù) OUT (N),A2.外設(shè)端口和存儲(chǔ)器統(tǒng)一編址外設(shè)端口和存儲(chǔ)器統(tǒng)一編址將一部分地址空間讓給外設(shè)端口,存儲(chǔ)器不再使用。優(yōu)點(diǎn):優(yōu)點(diǎn):(1)一切指令均適用于I/O端口的訪問(wèn),增強(qiáng)了CPU對(duì)外圍設(shè)備的處理能力。(2)CPU本身不需要專門(mén)的I/O指令。(3)外設(shè)地址安排靈活,數(shù)量不限。l端口:端口:常指常指I/O接口中帶有端口地址的寄存器接口中帶有端口地址的寄存器或緩沖器,或緩沖器,CPU通過(guò)端口地址就可以對(duì)端口通過(guò)端口地址就可以對(duì)端口
2、中信息進(jìn)行讀寫(xiě)。中信息進(jìn)行讀寫(xiě)。l接口:接口:指指CPU與外設(shè)間的與外設(shè)間的I/O接口芯片,一個(gè)接口芯片,一個(gè)外設(shè)通常需要一個(gè)外設(shè)通常需要一個(gè)I/O接口,但一個(gè)接口,但一個(gè)I/O接口接口可以有多個(gè)可以有多個(gè)I/O端口,傳送數(shù)據(jù)字的端口稱數(shù)端口,傳送數(shù)據(jù)字的端口稱數(shù)據(jù)口,傳送命令字的稱命令口,傳送狀態(tài)字據(jù)口,傳送命令字的稱命令口,傳送狀態(tài)字的稱為狀態(tài)口。的稱為狀態(tài)口。v四個(gè)四個(gè)8位并行位并行I/O端口:端口:P0P0、P1P1、P2P2和和P3P3。v每個(gè)端口都是每個(gè)端口都是8位準(zhǔn)雙向口,包含一個(gè)鎖存器位準(zhǔn)雙向口,包含一個(gè)鎖存器(即特殊功能寄存器即特殊功能寄存器P0P0P3P3)、)、一個(gè)輸出驅(qū)
3、動(dòng)器一個(gè)輸出驅(qū)動(dòng)器和一個(gè)輸入緩沖器。和一個(gè)輸入緩沖器。v這四個(gè)并行這四個(gè)并行I/OI/O口都可以作準(zhǔn)雙向通用口都可以作準(zhǔn)雙向通用I/OI/O口,既口,既可以作輸入口,又可以作輸出口,還可以作雙向可以作輸入口,又可以作輸出口,還可以作雙向口???。輸出有鎖存功能;輸入有三態(tài)緩沖但無(wú)鎖存輸出有鎖存功能;輸入有三態(tài)緩沖但無(wú)鎖存功能功能。它們既可以以字節(jié)尋址,也可以按位獨(dú)立。它們既可以以字節(jié)尋址,也可以按位獨(dú)立輸入輸入/ /輸出。輸出。 三種I/O端口操作方式1.數(shù)據(jù)輸出方式(寫(xiě)端口)通過(guò)一條指令將數(shù)據(jù)寫(xiě)入P0-P3的數(shù)據(jù)鎖存器,然后通過(guò)輸出驅(qū)動(dòng)器送到端口引腳。MOV P0,A ;累加器A中內(nèi)容送P0口
4、2.讀端口對(duì)端口鎖存器數(shù)據(jù)進(jìn)行讀入,這個(gè)數(shù)據(jù)并非端口引腳上的數(shù)據(jù)MOV A,P1 ;P1鎖存器中數(shù)據(jù)送A3.讀引腳從端口引腳上讀數(shù)據(jù),先使對(duì)應(yīng)端口鎖存器置位,使T管截止,然后打開(kāi)數(shù)據(jù)緩沖器,使引腳數(shù)據(jù)輸入數(shù)據(jù)總線。MOV P1,#0FH ;使P1口低四位鎖存器置位MOV A,P1 ;讀P1口低四位引腳線信號(hào)P1.X鎖存器讀鎖存器內(nèi)部總線寫(xiě)鎖存器讀引腳VCC內(nèi)部上拉電阻QQDCLP1.X引腳P1口的位結(jié)構(gòu)口的位結(jié)構(gòu)l通用I/O口可以采用字節(jié)操作也可以采用位操作,CPU既可以把它們看作數(shù)據(jù)口也可以看作狀態(tài)口。CPU復(fù)位后,口鎖存器為“1”,對(duì)于作為輸入的口腳(讀引腳),相應(yīng)位的口鎖存器不能寫(xiě)入“0
5、”。例41讀P1.4P1.7口狀態(tài)送指示燈顯示。 字節(jié)操作參考程序: ORL P1,#0F0H ;P1.4P1.7口鎖存器置口鎖存器置1 MOV A,P1 ;讀讀P1.4P1.7引腳狀態(tài)引腳狀態(tài) SWAP A ; MOV P1,A ; RET P2口有兩種功能: 對(duì)于內(nèi)部有程序存貯器的單片機(jī),P2口既可以作為輸入/輸出口使用,也可以作為系統(tǒng)擴(kuò)展的地址總線口,輸出高8位地址A8A15。 對(duì)于內(nèi)部沒(méi)有程序存貯器的單片機(jī),必須外接程序存貯器,一般情況下P2口只能作為系統(tǒng)擴(kuò)展的高8位地址總線口,而不能作為外部設(shè)備的輸入輸出口。 P2口作通用口作通用I/O口口 例4-3 XRL P2,#01H ;P2.
6、0取反CPL P2.0 ;P2.0取反 P2口作地址總線口作地址總線(1)若片外數(shù)據(jù)存儲(chǔ)器的容量)若片外數(shù)據(jù)存儲(chǔ)器的容量256256B B 這時(shí)這時(shí)P2P2口不輸出地址,仍可作為口不輸出地址,仍可作為I/OI/O口使用口使用例4-4 將56H寫(xiě)入外部RAM的38H單元,CPU執(zhí)行下面的程序段不影響P2口狀態(tài): MOV R0, #38H MOV A, #56H MOVX R0, A (2)若片外數(shù)據(jù)存儲(chǔ)器的容量)若片外數(shù)據(jù)存儲(chǔ)器的容量256B MOVX A,DPTR MOVX DPTR,A P0口既可作通用I/O口(用8051時(shí))使用,又可作地址數(shù)據(jù)分時(shí)復(fù)用總線使用。 P3口除了作為準(zhǔn)雙向通用I
7、/O接口使用外,每一根線還具有第二種功能 。引腳第 二 功 能P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2INT0(外部中斷0請(qǐng)求輸入端)P3.3INT1(外部中斷1請(qǐng)求輸入端)P3.4T0(定時(shí)器/計(jì)數(shù)器0計(jì)數(shù)脈沖輸入端)P3.5T1(定時(shí)器/計(jì)數(shù)器1計(jì)數(shù)脈沖輸入端)P3.6WR(片外RAM寫(xiě)選通信號(hào)輸出端)P3.7RD(片外RAM讀選通信號(hào)輸出端)1、MCS-51內(nèi)部具有兩個(gè)定時(shí)/計(jì)數(shù)器,可用于定時(shí)控制,分頻器和事故處理來(lái)用。2、內(nèi)部是一個(gè)二進(jìn)制加1計(jì)數(shù)器,當(dāng)計(jì)數(shù)器計(jì)滿回零時(shí)能自動(dòng)產(chǎn)生溢出中斷請(qǐng)求,表示定時(shí)時(shí)間已到或計(jì)數(shù)已中止。2 2個(gè)可獨(dú)立控制的個(gè)可獨(dú)立控制的1616
8、位定時(shí)器位定時(shí)器/ /計(jì)數(shù)器:計(jì)數(shù)器:T0T0、T1T1原理:原理:1、定時(shí)模式每一個(gè)機(jī)器周期計(jì)數(shù)器加1,直至計(jì)滿溢出產(chǎn)生中斷請(qǐng)求。對(duì)于一個(gè)N位的加1計(jì)數(shù)器,若計(jì)數(shù)時(shí)鐘的頻率f是已知的,則從初值a開(kāi)始加1計(jì)數(shù)至溢出所占用的時(shí)間為:當(dāng)N=8、a=0、t=1/f時(shí),最大的定時(shí)時(shí)間為: T=256t 2、計(jì)數(shù)模式外部輸入信號(hào)是加到T0(P3.4)或T1(P3.5)端,CPU每個(gè)機(jī)器周期對(duì)T0(或T1)檢測(cè)一次,只有在前一次檢測(cè)為1后一次檢測(cè)為0時(shí)才使計(jì)數(shù)器加1。所以,對(duì)外部輸入信號(hào)的最高計(jì)數(shù)速率是晶振的1/24。)2(*1afN一一. .定時(shí)器控制、狀態(tài)寄存器定時(shí)器控制、狀態(tài)寄存器1.1.TMTMO
9、D D定時(shí)器定時(shí)器方式寄存器方式寄存器(8989H H)1 1)功能選擇位)功能選擇位C/TC/T:=0=0,定時(shí)功能,計(jì)數(shù)內(nèi)部機(jī)器周期脈沖;定時(shí)功能,計(jì)數(shù)內(nèi)部機(jī)器周期脈沖;=1=1,計(jì)數(shù)功能,計(jì)數(shù)引腳,計(jì)數(shù)功能,計(jì)數(shù)引腳T0(T1)T0(T1)輸入的脈沖下降沿。輸入的脈沖下降沿。2 2)方式選擇位)方式選擇位M1M1、M0M0:4 4種工作方式:種工作方式:13/16/813/16/8位位3 3)門(mén)控方式選擇位)門(mén)控方式選擇位GATE GATE : =0=0,非門(mén)控方式非門(mén)控方式( (內(nèi)部啟動(dòng)內(nèi)部啟動(dòng)) ):TRx=1TRx=1,啟動(dòng)定時(shí)器工作;啟動(dòng)定時(shí)器工作;TRx=0TRx=0,停止定時(shí)
10、器工作。停止定時(shí)器工作。=1=1,門(mén)控方式,門(mén)控方式( (外部啟動(dòng)外部啟動(dòng)) ):TRx=1TRx=1且引腳且引腳INTx=1INTx=1才啟動(dòng)。才啟動(dòng)。GATEC/TM1M0GATEC/TM1M0T1T0M1 M0方方式式功功能能描描述述0 0013位位0 1116位位1 028位位自自動(dòng)動(dòng)重重裝裝1 13T0為為兩兩個(gè)個(gè)8位位 M MOV VTMTMOD D,#1101 0010B#1101 0010B 或或 M MOV VTMTMOD D,#0D2H#0D2H注:只能字節(jié)尋址注:只能字節(jié)尋址 GATEC/TM1M0GATEC/TM1M0TMTMOD D確定定時(shí)器工作方式指令:確定定時(shí)器工
11、作方式指令:M MOV TMV TMOD D,# #方式字方式字例:例:設(shè)設(shè)T0T0用方式用方式2 2非門(mén)控定時(shí),非門(mén)控定時(shí),T1T1用方式用方式1 1門(mén)控計(jì)數(shù)。門(mén)控計(jì)數(shù)。1 1)啟動(dòng)控制位)啟動(dòng)控制位TR0TR0、TR1TR1=0=0,停止定時(shí)器工作;停止定時(shí)器工作; =1=1,啟動(dòng)定時(shí)器工作。,啟動(dòng)定時(shí)器工作。例:?jiǎn)?dòng)例:?jiǎn)?dòng)T0T0:SETBSETBTR0 ;TR0 ;注:可以位尋址注:可以位尋址2 2)溢出中斷標(biāo)志位)溢出中斷標(biāo)志位TF0TF0、TF1TF1定時(shí)器溢出使定時(shí)器溢出使TFx=1TFx=1。中斷方式:中斷方式: TFx=1 TFx=1引起中斷請(qǐng)求,引起中斷請(qǐng)求,CPUCPU
12、響應(yīng)響應(yīng)TxTx中斷后,自動(dòng)對(duì)中斷后,自動(dòng)對(duì)TFxTFx清清0 0 。軟件查詢方式:軟件查詢方式: 可用軟件檢測(cè)可用軟件檢測(cè)TFxTFx,必須軟件清必須軟件清0 0。WAITWAIT:JBC TF0JBC TF0,NEXTNEXT;檢測(cè)檢測(cè)T0T0是否溢出是否溢出SJMPSJMPWAITWAIT ;未溢出,繼續(xù)檢測(cè)未溢出,繼續(xù)檢測(cè)NEXTNEXT: ;溢出,溢出,TF0TF0清清0 0,處理溢出,處理溢出TF1TR1TF0TR03 3可預(yù)置初值的可預(yù)置初值的1616位加位加1 1定時(shí)計(jì)數(shù)器定時(shí)計(jì)數(shù)器 屬于屬于SFRSFR中的一種,中的一種,T0T0由由TH0TH0、TL0TL0組成,組成, T
13、1T1由由TH1TH1、TL1TL1組成。通過(guò)預(yù)設(shè)初值來(lái)定時(shí)。組成。通過(guò)預(yù)設(shè)初值來(lái)定時(shí)。預(yù)置預(yù)置T0T0初值指令:初值指令:M MOV VTH0TH0,#X#XH HM MOV VTL0TL0,#X#XL L1313位定時(shí)位定時(shí)/ /計(jì)數(shù)器。計(jì)數(shù)器。計(jì)數(shù)外部脈沖個(gè)數(shù):計(jì)數(shù)外部脈沖個(gè)數(shù):1 18192(28192(21313) )定時(shí)時(shí)間定時(shí)時(shí)間(12(12MHzMHz,即:即:T=1T=1 s)s):1 1 s s 8.192ms8.192msusfatosc12)2(13TRxINTxGATE振蕩器振蕩器12THxTLxTFx8位位 5位位Tx腳腳&TRx 1GATE啟動(dòng)啟動(dòng)控制控制
14、INTxC/T=0C/T=1中斷中斷申請(qǐng)申請(qǐng)THx THx 高高8 8位和位和TLx TLx 低低5 5位組成位組成1313位加位加1 1計(jì)數(shù)器計(jì)數(shù)器例:計(jì)算得初值為例:計(jì)算得初值為76927692,1313位定時(shí)器位定時(shí)器T0T0應(yīng)裝初值應(yīng)裝初值多少?多少?76927692化為化為1616進(jìn)制數(shù)進(jìn)制數(shù)1 1E0CH,E0CH,則則TH0TH00FOH,TL0=0CH0FOH,TL0=0CHT1T9T8T7T6T5T4T3T2T13T12T11T10TH0/TH1TL0/TL11616位定時(shí)位定時(shí)/ /計(jì)數(shù)器。計(jì)數(shù)器。 THx8THx8位和位和TLx8TLx8位組成位組成1616位加位加1 1
15、計(jì)數(shù)器計(jì)數(shù)器計(jì)數(shù)外部脈沖個(gè)數(shù):計(jì)數(shù)外部脈沖個(gè)數(shù):1 165536(265536(21616) )定時(shí)時(shí)間定時(shí)時(shí)間( (T=1T=1 s)s):1 1 s s 65536 65536T= 65.54msT= 65.54msusfatosc12)2(16振蕩器振蕩器12THxTLxTFx8位位 8位位Tx腳腳&TRx 1GATE啟動(dòng)啟動(dòng)控制控制INTxC/T=0C/T=1中斷中斷申請(qǐng)申請(qǐng)自動(dòng)恢復(fù)初值自動(dòng)恢復(fù)初值8 8位定時(shí)位定時(shí)/ /計(jì)數(shù)器。計(jì)數(shù)器。TLxTLx為為8 8位加位加1 1計(jì)數(shù)器,計(jì)數(shù)器,THxTHx為為8 8位初值暫存器。位初值暫存器。無(wú)需重裝初值,用于需要重復(fù)定時(shí)無(wú)需重裝初
16、值,用于需要重復(fù)定時(shí)和計(jì)數(shù)的場(chǎng)合。和計(jì)數(shù)的場(chǎng)合。最大計(jì)數(shù)值:最大計(jì)數(shù)值:256 (2256 (28 8) )最大定時(shí)時(shí)間最大定時(shí)時(shí)間( (T=1T=1 s)s): 256 256 s susfatosc12)2(8振蕩器振蕩器12TLxTHxTFx8位位 Tx腳腳&TRx 1GATE啟動(dòng)啟動(dòng)控制控制INTxC/T=0C/T=1中斷中斷申請(qǐng)申請(qǐng)重重裝裝 方式方式2下,當(dāng)定時(shí)器計(jì)滿回零時(shí),一方面向下,當(dāng)定時(shí)器計(jì)滿回零時(shí),一方面向CPU發(fā)出溢出中斷請(qǐng)求,另一方面從發(fā)出溢出中斷請(qǐng)求,另一方面從TH中重新獲得初值并啟動(dòng)計(jì)數(shù)。中重新獲得初值并啟動(dòng)計(jì)數(shù)。 而方式而方式0、1、3下,定時(shí)器必須通過(guò)重裝
17、初下,定時(shí)器必須通過(guò)重裝初值來(lái)重新啟動(dòng)計(jì)數(shù)。值來(lái)重新啟動(dòng)計(jì)數(shù)。T0T0分成分成2 2個(gè)獨(dú)立的個(gè)獨(dú)立的8 8位定時(shí)器:位定時(shí)器:TL0TL0定時(shí)定時(shí)/ /計(jì)數(shù)器和計(jì)數(shù)器和TH0TH0定時(shí)器定時(shí)器TL0TL0占用占用T0T0控制位:控制位:C/TC/T,TR0TR0,GATEGATE;TH0TH0占用占用T1T1控制位控制位。T1T1不能使用方式不能使用方式3 3工作工作, ,一般當(dāng)一般當(dāng)T1T1作為波特率發(fā)生器時(shí)作為波特率發(fā)生器時(shí), ,T0T0選方選方式式3 3。振蕩器振蕩器12TL0TF08位位 T0腳腳&TR0 1GATE啟動(dòng)啟動(dòng)控制控制INT0C/T=0C/T=1中斷中斷申請(qǐng)申請(qǐng)T
18、H0TF18位位 啟動(dòng)啟動(dòng)控制控制中斷中斷申請(qǐng)申請(qǐng)振蕩器振蕩器12TR11初始化步驟初始化步驟 1 1)給定時(shí)器方式寄存器)給定時(shí)器方式寄存器TMOD寫(xiě)一個(gè)方式控寫(xiě)一個(gè)方式控制字。制字。 2 2)給定時(shí)器送定時(shí)初值。)給定時(shí)器送定時(shí)初值。 3 3)給中斷允許寄存器)給中斷允許寄存器IEIE選送中斷控制字和中選送中斷控制字和中斷優(yōu)先級(jí)寄存器斷優(yōu)先級(jí)寄存器IPIP選送中斷優(yōu)先級(jí)字,以開(kāi)放選送中斷優(yōu)先級(jí)字,以開(kāi)放相應(yīng)中斷和設(shè)定中斷優(yōu)先級(jí)。相應(yīng)中斷和設(shè)定中斷優(yōu)先級(jí)。 4 4)給定時(shí)器控制寄存器)給定時(shí)器控制寄存器TCONTCON送命令字,以啟送命令字,以啟動(dòng)或禁止定時(shí)器動(dòng)或禁止定時(shí)器/ /計(jì)數(shù)器的運(yùn)行
19、。計(jì)數(shù)器的運(yùn)行。 2計(jì)數(shù)器初值的計(jì)算 TC=MC 方式時(shí)為方式時(shí)為213213;方式時(shí);方式時(shí)為為216216;方式和方式時(shí)為;方式和方式時(shí)為2828。TCTC為計(jì)數(shù)初值為計(jì)數(shù)初值C C為計(jì)滿所需要的計(jì)數(shù)個(gè)數(shù)為計(jì)滿所需要的計(jì)數(shù)個(gè)數(shù)定時(shí)器初值的計(jì)算定時(shí)器初值的計(jì)算T=(MT=(MTC) TTC) T計(jì)數(shù)計(jì)數(shù)上式也可寫(xiě)成:上式也可寫(xiě)成:TC=MTC=MT/ TT/ T計(jì)數(shù)計(jì)數(shù) 式中,為模值,和定時(shí)器的工作方式式中,為模值,和定時(shí)器的工作方式有關(guān);有關(guān);T T計(jì)數(shù)計(jì)數(shù)是單片機(jī)時(shí)鐘周期是單片機(jī)時(shí)鐘周期CLKCLK的的1212倍;倍;TCTC為定時(shí)器的定時(shí)初值。為定時(shí)器的定時(shí)初值。 例例4-7 若單片機(jī)
20、時(shí)鐘頻率為若單片機(jī)時(shí)鐘頻率為12MHz,請(qǐng)計(jì)算定時(shí)請(qǐng)計(jì)算定時(shí)2ms所需的定時(shí)器初值。所需的定時(shí)器初值。解:由于定時(shí)器工作在方式2和方式3下時(shí)的最大定時(shí)時(shí)間只有0.256ms,因此要想獲得2ms的定時(shí)時(shí)間定時(shí)器必須工作在方式0或方式1。若采用方式0,則根據(jù)公式可得定時(shí)器初值為:TC= M MT/ TT/ T計(jì)數(shù)計(jì)數(shù)= 213 2*103/1=6192=1830H即:TH0應(yīng)裝0C1H;TL0應(yīng)裝#10H(高三位為0)若采用方式1,則根據(jù)公式可得定時(shí)器初值為:TC=2ms/1=63536=F830H 即:TH0應(yīng)裝#0F8H;TL0應(yīng)裝#30H。0000110001100TH0TL0C110H例:
21、設(shè)8031時(shí)鐘頻率為12MHz,要求定時(shí)器T0定時(shí)50ms,寫(xiě)出初始化程序。TC=M-T/T計(jì)數(shù)216-50ms/1us=15536=3CB0HSTART:MOV TMOD #01H START:MOV TMOD #01H ;方式方式1 1 MOV TH0,#3CH MOV TH0,#3CH ;裝初值裝初值 MOV TL0,#0B0H MOV TL0,#0B0H SETB TR0 SETB TR0 ;啟動(dòng)啟動(dòng)T0T0計(jì)數(shù)計(jì)數(shù)WAITWAIT:JBC TF0JBC TF0,TT0 TT0 ;檢測(cè)檢測(cè)T0T0是否溢出是否溢出 SJMP WAITSJMP WAIT ;未溢出,繼續(xù)檢測(cè)未溢出,繼續(xù)檢測(cè)
22、TTO: MOV TH0, #3CH TTO: MOV TH0, #3CH ;重裝初值重裝初值 MOV TL0,#0B0H MOV TL0,#0B0H 一、數(shù)據(jù)通信的基本方式一、數(shù)據(jù)通信的基本方式并行通信并行通信數(shù)據(jù)有多少位就需多少根傳送線,傳送距離短,數(shù)據(jù)有多少位就需多少根傳送線,傳送距離短,傳送速度快。傳送速度快。串行通信串行通信只需一對(duì)傳送線,傳送距離相對(duì)較遠(yuǎn),但傳送只需一對(duì)傳送線,傳送距離相對(duì)較遠(yuǎn),但傳送速度慢。速度慢。二二. .串行通訊的基本方式串行通訊的基本方式( (一一).).異步通訊異步通訊 以字符為傳送單位用起始位和停止位標(biāo)識(shí)每個(gè)以字符為傳送單位用起始位和停止位標(biāo)識(shí)每個(gè)字符的
23、開(kāi)始和結(jié)束,字符間隔不固定,只需字字符的開(kāi)始和結(jié)束,字符間隔不固定,只需字符傳送時(shí)同步。符傳送時(shí)同步。 ( (二二).).同步通信同步通信 每一數(shù)據(jù)塊開(kāi)頭時(shí)發(fā)送一個(gè)或兩個(gè)同步字符,每一數(shù)據(jù)塊開(kāi)頭時(shí)發(fā)送一個(gè)或兩個(gè)同步字符,使發(fā)送與接收雙方取得同步。數(shù)據(jù)塊的各個(gè)字使發(fā)送與接收雙方取得同步。數(shù)據(jù)塊的各個(gè)字符間取消了起始位和停止位,所以通信速度得符間取消了起始位和停止位,所以通信速度得以提高。以提高。 三三. .串行數(shù)據(jù)傳送方向串行數(shù)據(jù)傳送方向單工通訊:數(shù)據(jù)單向傳送。單工通訊:數(shù)據(jù)單向傳送。半雙工通訊:數(shù)據(jù)可分時(shí)雙向傳送。半雙工通訊:數(shù)據(jù)可分時(shí)雙向傳送。全雙工通訊:可同時(shí)進(jìn)行發(fā)送和接收。全雙工通訊:可
24、同時(shí)進(jìn)行發(fā)送和接收。發(fā)送器接收器發(fā)送器接收器1.1.發(fā)送器:發(fā)送器:并并串?dāng)?shù)據(jù)格式轉(zhuǎn)換,添加標(biāo)識(shí)位和校驗(yàn)位,串?dāng)?shù)據(jù)格式轉(zhuǎn)換,添加標(biāo)識(shí)位和校驗(yàn)位,一幀發(fā)送結(jié)束,設(shè)置結(jié)束標(biāo)志,申請(qǐng)中斷。一幀發(fā)送結(jié)束,設(shè)置結(jié)束標(biāo)志,申請(qǐng)中斷。2.2.接收器:接收器:串串并數(shù)據(jù)格式轉(zhuǎn)換,檢查錯(cuò)誤,去掉標(biāo)識(shí)并數(shù)據(jù)格式轉(zhuǎn)換,檢查錯(cuò)誤,去掉標(biāo)識(shí)位,保存有效數(shù)據(jù),設(shè)置接收結(jié)束標(biāo)志,申請(qǐng)中斷。位,保存有效數(shù)據(jù),設(shè)置接收結(jié)束標(biāo)志,申請(qǐng)中斷。3.3.控制器:控制器:接收編程命令和控制參數(shù),設(shè)置工作方式:接收編程命令和控制參數(shù),設(shè)置工作方式:同步同步/ /異步、字符格式、波特率、校驗(yàn)方式、數(shù)據(jù)位與同異步、字符格式、波特率、校驗(yàn)方式、
25、數(shù)據(jù)位與同步時(shí)鐘比例等。步時(shí)鐘比例等。1.1.數(shù)據(jù)緩沖器數(shù)據(jù)緩沖器(發(fā)送器和接收器)(發(fā)送器和接收器)SBUFSBUF發(fā)送發(fā)送SBUFSBUF和接收和接收SBUFSBUF共用一個(gè)地址共用一個(gè)地址9999H H 。 1 1)發(fā)送發(fā)送SBUFSBUF存放待發(fā)送的存放待發(fā)送的8 8位數(shù)據(jù),寫(xiě)入位數(shù)據(jù),寫(xiě)入SBUFSBUF將同時(shí)將同時(shí)啟動(dòng)發(fā)送。啟動(dòng)發(fā)送。 發(fā)送指令:發(fā)送指令:M MOV V SBUFSBUF,A A2 2)接收接收SBUFSBUF存放已接收成功的存放已接收成功的8 8位數(shù)據(jù),供位數(shù)據(jù),供CPUCPU讀取。讀取。 讀取串行口接收數(shù)據(jù)指令:讀取串行口接收數(shù)據(jù)指令: M MOV AV A,S
26、BUFSBUFSM0 SM1 SM2 REN TB8 RB8TIRI2.2.串行口控制串行口控制/ /狀態(tài)寄存器狀態(tài)寄存器 SCON(98H)SCON(98H)(控制器)控制器)SM0SM0,SM1SM1:選擇串行口選擇串行口4 4種工作方式。種工作方式。SM1 SM0方式方式功能描述功能描述0 00擴(kuò)展移位寄存器方式,擴(kuò)展移位寄存器方式,12/oscf0 118 位位 UART,T1 溢出率溢出率/n1 029 位位 UART,32/oscf、64/oscf1 139 位位 UART,T1 溢出率溢出率/nSM0SM1SM2RENTB8RB8TIRI2.2.串行口控制串行口控制/ /狀態(tài)寄存
27、器狀態(tài)寄存器 SCONSCON SCONC SCONCON N(98H)(98H)SM2SM2:多機(jī)控制位,用于多機(jī)通訊。方式多機(jī)控制位,用于多機(jī)通訊。方式2 2、3 3時(shí),時(shí),SM2=1&RB8=1SM2=1&RB8=1則激活則激活RIRI;方式方式1 1時(shí),時(shí), SM2=0&RB8=1SM2=0&RB8=1時(shí)激活時(shí)激活RI.RI.RENREN:允許接收控制位,允許接收控制位,REN=1REN=1,允許接收;允許接收;REN=0REN=0,禁禁止接收止接收. .TB8TB8:發(fā)送的第發(fā)送的第9 9位數(shù)據(jù)位,可用作校驗(yàn)位和地址位數(shù)據(jù)位,可用作校驗(yàn)位和地址/ /數(shù)
28、據(jù)數(shù)據(jù)標(biāo)識(shí)位標(biāo)識(shí)位. .RB8RB8:接收的第接收的第9 9位數(shù)據(jù)位或停止位位數(shù)據(jù)位或停止位. .TITI:發(fā)送中斷標(biāo)志,發(fā)送一幀結(jié)束,發(fā)送中斷標(biāo)志,發(fā)送一幀結(jié)束,TI=1TI=1,須軟件清須軟件清零零. .RIRI:接收中斷標(biāo)志,接收一幀結(jié)束,接收中斷標(biāo)志,接收一幀結(jié)束,RI=1RI=1,須軟件清須軟件清零零. .SMOD(PCON.7) ):波特率加倍控制位。波特率加倍控制位。 SMOD=1,波特率加倍,波特率加倍, SMOD=0,則不加倍。則不加倍。SMOD3.3.節(jié)電控制寄存器節(jié)電控制寄存器 PCONPCONP P PCPCPCONONCONPCPCPCONONCON波特率:波特率:每
29、秒鐘傳送二進(jìn)制數(shù)碼的位數(shù)(bit 數(shù)),單位是bps(bit per second)。若波特率為1200bps,字符的實(shí)際傳送速率為1200/10=120幀/秒。l方式方式0 0:同步移位寄存器方式。同步移位寄存器方式。用于擴(kuò)展并行用于擴(kuò)展并行I/I/O接口。接口。l1.1.數(shù)據(jù)結(jié)構(gòu):一幀數(shù)據(jù)結(jié)構(gòu):一幀8 8位,無(wú)起始位和停止位。位,無(wú)起始位和停止位。2.2.RXDRXD:數(shù)據(jù)輸入數(shù)據(jù)輸入/ /輸出端。輸出端。 TXDTXD:同步脈沖輸出端,每個(gè)脈沖對(duì)應(yīng)一個(gè)數(shù)據(jù)位。同步脈沖輸出端,每個(gè)脈沖對(duì)應(yīng)一個(gè)數(shù)據(jù)位。3.3.波特率波特率:B = fosc/12:B = fosc/12 如:如: fosc=
30、12MHzfosc=12MHz,B=1MHzB=1MHz,每位數(shù)據(jù)占每位數(shù)據(jù)占1 1 s s。4.4.發(fā)送過(guò)程:先對(duì)發(fā)送過(guò)程:先對(duì)TITI清零,寫(xiě)入清零,寫(xiě)入SBUFSBUF,啟動(dòng)發(fā)送,一幀發(fā)送結(jié)啟動(dòng)發(fā)送,一幀發(fā)送結(jié) 束,束,TI=1TI=1。 接收過(guò)程:接收過(guò)程:REN=1REN=1且且RI=0RI=0,啟動(dòng)接收,一幀接收完畢,啟動(dòng)接收,一幀接收完畢,RI=1RI=1。 串行輸入、并行輸出移位寄存器內(nèi)部結(jié)構(gòu)串行輸入、并行輸出移位寄存器內(nèi)部結(jié)構(gòu)RXDTXD1.1.數(shù)據(jù)結(jié)構(gòu):一幀數(shù)據(jù)結(jié)構(gòu):一幀1010位,位,8 8位數(shù)據(jù)位,位數(shù)據(jù)位,1 1個(gè)起始位個(gè)起始位(0)(0),1 1個(gè)停止個(gè)停止位位(1
31、)(1)。 2.2.RXDRXD:接收數(shù)據(jù)端。接收數(shù)據(jù)端。 TXDTXD:發(fā)送數(shù)據(jù)端。發(fā)送數(shù)據(jù)端。3.3.波特率:波特率:用用T1作為波特率發(fā)生器,作為波特率發(fā)生器, B=(2 B=(2SMOD/32)/32)T1T1溢出率溢出率。4.4.發(fā)送:發(fā)送:先對(duì)先對(duì)TITI清零,清零,寫(xiě)入寫(xiě)入SBUFSBUF,同時(shí)啟動(dòng)發(fā)送,一幀發(fā)送結(jié)同時(shí)啟動(dòng)發(fā)送,一幀發(fā)送結(jié)束,束,TI=1TI=1。 接收:接收:REN=1REN=1,RI=0RI=0,允許接收。接收完一幀允許接收。接收完一幀,將接收數(shù)據(jù)裝將接收數(shù)據(jù)裝入入SBUFSBUF,RI=1RI=1。接收原理:接收原理:當(dāng)當(dāng)REN=1REN=1,CPUCPU開(kāi)
32、始采樣開(kāi)始采樣RXDRXD引腳負(fù)跳變信號(hào),若出現(xiàn)負(fù)引腳負(fù)跳變信號(hào),若出現(xiàn)負(fù)跳變,才進(jìn)入數(shù)據(jù)接收狀態(tài)。即先檢測(cè)起始位,若第一位跳變,才進(jìn)入數(shù)據(jù)接收狀態(tài)。即先檢測(cè)起始位,若第一位為為0 0,繼續(xù)接收其余位;否則,停止接收,重新采樣負(fù)跳,繼續(xù)接收其余位;否則,停止接收,重新采樣負(fù)跳變。變。數(shù)據(jù)采樣速率為波特率數(shù)據(jù)采樣速率為波特率1616倍頻,在數(shù)據(jù)位中間,用第倍頻,在數(shù)據(jù)位中間,用第7 7、8 8、9 9個(gè)脈沖采樣個(gè)脈沖采樣3 3次數(shù)據(jù)位,并次數(shù)據(jù)位,并3 3中取中取2 2保留采樣值。保留采樣值。寫(xiě)入寫(xiě)入SBUF采樣采樣(a) 發(fā)送時(shí)序圖發(fā)送時(shí)序圖TXD數(shù)據(jù)輸出數(shù)據(jù)輸出TID0D1D2D3D4D5D
33、6D7停止位停止位起始位起始位RXD輸入數(shù)據(jù)輸入數(shù)據(jù)(b) 接收時(shí)序圖接收時(shí)序圖D0D1D2D3D4D5D6D7停止位停止位起始位起始位RI檢測(cè)檢測(cè)負(fù)跳變負(fù)跳變接收和發(fā)送時(shí)序圖接收和發(fā)送時(shí)序圖1.1.一幀為一幀為1111位:位:9 9位數(shù)據(jù)位,位數(shù)據(jù)位,1 1個(gè)起始位個(gè)起始位(0)(0),1 1個(gè)停止個(gè)停止位位(1)(1)。第第9 9位數(shù)據(jù)位在位數(shù)據(jù)位在TB8/RB8TB8/RB8中,常用作校驗(yàn)位和多機(jī)中,常用作校驗(yàn)位和多機(jī)通訊標(biāo)識(shí)位通訊標(biāo)識(shí)位。2.2.RXDRXD:接收數(shù)據(jù)端接收數(shù)據(jù)端 TXD TXD:發(fā)送數(shù)據(jù)端發(fā)送數(shù)據(jù)端3.3.波特率:波特率: 方式方式2 2:B=(2B=(2SMOD/6
34、4)/64)fosc fosc 。 方式方式3 3:B=(2B=(2SMOD/32)/32)T1T1溢出率溢出率 。4.4.發(fā)送:先裝入發(fā)送:先裝入TB8TB8,寫(xiě)入寫(xiě)入SBUFSBUF并啟動(dòng)發(fā)送,發(fā)送結(jié)束,并啟動(dòng)發(fā)送,發(fā)送結(jié)束,TI=1TI=1。 接收:接收:REN=1REN=1,允許接收。接收完一幀,若允許接收。接收完一幀,若RI=0RI=0,SM2=0SM2=0或或RB8=1,RB8=1,將接收數(shù)據(jù)裝入接收將接收數(shù)據(jù)裝入接收SBUFSBUF,第第9 9位裝入位裝入RB8RB8,使使RI=1RI=1;否則丟棄接收數(shù)據(jù),不置位否則丟棄接收數(shù)據(jù),不置位RIRI。方式方式0 0為固定波特率:為固
35、定波特率:B=fosc/12B=fosc/12方式方式2 2可選兩種波特率:可選兩種波特率: B=(2B=(2SMOD /64)/64)fosc fosc 方式方式1 1、3 3為可變波特率,用為可變波特率,用T1T1作波特率發(fā)生器。作波特率發(fā)生器。B=(2B=(2SMOD/32)/32)T1T1溢出率溢出率T1T1為方式為方式2 2的溢出時(shí)間:的溢出時(shí)間: t= (2t= (28 8 -X)T = (2-X)T = (28 8 -X)-X)12/ fosc12/ foscT1T1溢出率溢出率=1/=1/t= fosc /12t= fosc /12(2(2n n -X)-X) 波特率波特率B=
36、(2B=(2SMOD /32)/32)fosc/12fosc/12(2(28 8-X)-X)串行口方式串行口方式1 1、3 3,根據(jù)波特率選擇,根據(jù)波特率選擇T1T1工作方式,計(jì)算時(shí)間常數(shù)。工作方式,計(jì)算時(shí)間常數(shù)。T1T1選方式選方式2 2: TH1=X= 2TH1=X= 28 8-fosc/12-fosc/122 2SMOD/(32/(32B)B)T1T1選方式選方式1 1用于低波特率,需考慮用于低波特率,需考慮T1T1重裝時(shí)間常數(shù)時(shí)間。重裝時(shí)間常數(shù)時(shí)間。1.雙機(jī)通訊雙機(jī)通訊8031應(yīng)用系統(tǒng)(A)TXDRXDGND8031應(yīng)用系統(tǒng) (B)RXDTXDGND電纜8031應(yīng)用系統(tǒng)(A)TXDRX
37、DGND8031應(yīng)用系統(tǒng) (B)RXDTXDGND電纜8031應(yīng)用系統(tǒng) (N)RXDTXDGND.2.多機(jī)通訊多機(jī)通訊串行口初始化編程格式:串行口初始化編程格式:SIO:MOV SCON,#H ;方式字,且方式字,且TI=RI=0 MOV PCON,#80H ;波特率加倍波特率加倍 MOV TMOD,#20H ;T1作波特率發(fā)生器作波特率發(fā)生器,方式方式2 MOV TH1, #X ;選定波特率選定波特率 MOV TL1, #X SETB TR1 SETB EA ;開(kāi)串行口中斷開(kāi)串行口中斷 SETB ES1.1.查詢方式:查詢方式:TRAM: MOV A,R0 ;取數(shù)據(jù)取數(shù)據(jù) MOV SBUF,
38、A ;發(fā)送一個(gè)字符發(fā)送一個(gè)字符WAIT:JBCTI,NEXT ;等待發(fā)送結(jié)束等待發(fā)送結(jié)束SJMP WAITNEXT:INCR0 ;準(zhǔn)備下一次發(fā)送準(zhǔn)備下一次發(fā)送SJMP TRAM2.中斷方式:中斷方式: ORG 0023H ;串行口中斷入口串行口中斷入口 AJMP SINTMAIN: ;初始化編程初始化編程TRAM: MOV A,R0 ;取數(shù)據(jù)取數(shù)據(jù)MOV SBUF,A ;發(fā)送第一個(gè)字符發(fā)送第一個(gè)字符 H:SJMP H ;其它工作其它工作 SINT:CLR TI ;中斷服務(wù)程序中斷服務(wù)程序INC R0MOV A,R0 ;取數(shù)據(jù)取數(shù)據(jù)MOV SBUF,A ;發(fā)送下一個(gè)字符發(fā)送下一個(gè)字符RETI1.
39、1.查詢方式:查詢方式: WAIT:JBCRI,NEXT;查詢等待查詢等待SJMP WAITNEXT:MOV A,SBUF ;讀取接收數(shù)據(jù)讀取接收數(shù)據(jù)MOV R0,A;保存數(shù)據(jù)保存數(shù)據(jù)INCR0 ;準(zhǔn)備下一次接收準(zhǔn)備下一次接收SJMP WAIT2.2.中斷方式:中斷方式:ORG 0023HAJMP RINTMAIN: ;初始化編程初始化編程 H:SJMP H ;其它任務(wù)其它任務(wù) RINT:CLRRI ;清中斷標(biāo)志清中斷標(biāo)志MOV A,SBUF ;讀取接收數(shù)據(jù)讀取接收數(shù)據(jù)MOV R0,A;保存數(shù)據(jù)保存數(shù)據(jù)INCR0RETI(二二)異步通訊程序舉例異步通訊程序舉例 1.1.發(fā)送程序:發(fā)送程序:將片
40、內(nèi)將片內(nèi)RAM 50HRAM 50H起始單元的起始單元的1616個(gè)數(shù)由串行口發(fā)個(gè)數(shù)由串行口發(fā)送。送。要求發(fā)送波特率為系統(tǒng)時(shí)鐘的要求發(fā)送波特率為系統(tǒng)時(shí)鐘的32分頻,并進(jìn)行奇偶校驗(yàn)。分頻,并進(jìn)行奇偶校驗(yàn)。MAINT: MOV SCON,#80H;串行口初始化,方式串行口初始化,方式2MOV PCON,#80H;波特率,波特率,SMOD=1MOV R0,#50H ;設(shè)數(shù)據(jù)指針設(shè)數(shù)據(jù)指針MOV R7,#10H ;數(shù)據(jù)長(zhǎng)度數(shù)據(jù)長(zhǎng)度 LOOP: MOV A,R0 ;取一個(gè)字符取一個(gè)字符MOV C,P ;加奇偶校驗(yàn)加奇偶校驗(yàn)MOV TB8,CMOV SBUF,A ;啟動(dòng)第一次發(fā)送啟動(dòng)第一次發(fā)送 WAIT:
41、JBCTI,NEXT ;等待發(fā)送結(jié)束等待發(fā)送結(jié)束SJMP WAIT NEXT: INCR0 ;準(zhǔn)備下一次發(fā)送準(zhǔn)備下一次發(fā)送DJNZ R7,LOOP ;是否發(fā)送完?是否發(fā)送完? ENDSM0 SM1 SM2 REN TB8 RB8TIRIMAIN: MOV SCON,#0D0H ;串行口方式串行口方式3允許接收允許接收MOV TMOD,#20H ;T1方式方式2定時(shí)定時(shí)MOV TL1, #0F4H ;寫(xiě)入寫(xiě)入T1時(shí)間常數(shù)時(shí)間常數(shù)MOV TH1, #0F4HSETB TR1 ;啟動(dòng)啟動(dòng)T1MOV R0, #50H ;設(shè)數(shù)據(jù)指針設(shè)數(shù)據(jù)指針 MOV R7, #10H ;接收數(shù)據(jù)長(zhǎng)度接收數(shù)據(jù)長(zhǎng)度 WAI
42、T: JBC RI,NEXT ;等待串行口接收等待串行口接收 SJMP WAITSM0 SM1 SM2 RENTB8RB8TIRINEXT: MOV A,SBUF ;取一個(gè)接收字符取一個(gè)接收字符 JNB P,COMP ;奇偶校驗(yàn)奇偶校驗(yàn) JNB RB8,ERR ;PRB8,數(shù)據(jù)出錯(cuò)數(shù)據(jù)出錯(cuò) SJMP RIGHT ;P=RB8,數(shù)據(jù)正確數(shù)據(jù)正確COMP: JB RB8,ERRRIGHT: MOV R0,A ;保存一個(gè)字符保存一個(gè)字符 INC R0 ;修改指針修改指針 DJNZ R7,WAIT ;全部字符接收完全部字符接收完? CLR F0 ;F0 =0,接收數(shù)據(jù)全部正確接收數(shù)據(jù)全部正確 SJMP
43、 QUITERR: SETB F0 ;F0 =1,接收數(shù)據(jù)出錯(cuò)接收數(shù)據(jù)出錯(cuò)QUIT: RET 中央處理器中央處理器CPUCPU正在處理某正在處理某事件的時(shí)候,外部發(fā)生了更為緊事件的時(shí)候,外部發(fā)生了更為緊急的事件,請(qǐng)求急的事件,請(qǐng)求CPUCPU暫停當(dāng)前的暫停當(dāng)前的工作,轉(zhuǎn)入處理所發(fā)生的事情,工作,轉(zhuǎn)入處理所發(fā)生的事情,處理完后,再回到被中斷的地方處理完后,再回到被中斷的地方,繼續(xù)原來(lái)的工作,繼續(xù)原來(lái)的工作, ,這樣的過(guò)程這樣的過(guò)程稱為中斷。稱為中斷。日常事務(wù)程序日常事務(wù)程序中斷服務(wù)程序中斷服務(wù)程序l中斷技術(shù)的優(yōu)點(diǎn):中斷技術(shù)的優(yōu)點(diǎn): 提高CPU的效率。 提高實(shí)時(shí)數(shù)據(jù)的處理時(shí)效。 被控對(duì)象的實(shí)時(shí)參數(shù)
44、、越限數(shù)據(jù)和故障信息為計(jì)算機(jī)及時(shí)采集,以便應(yīng)急處理。 故障處理 如掉電中斷。l中斷系統(tǒng)的功能:中斷系統(tǒng)的功能: 中斷優(yōu)先權(quán)排隊(duì) 根據(jù)輕重緩急排隊(duì),優(yōu)先處理最緊急事件的中斷請(qǐng)求。 實(shí)現(xiàn)中斷嵌套 CPU處理中斷時(shí),發(fā)生另一個(gè)優(yōu)先級(jí)更高的中斷請(qǐng)求,CPU轉(zhuǎn)而響應(yīng)優(yōu)先級(jí)更高的中斷請(qǐng)求,處理完之后再回到原來(lái)中斷服務(wù)程序。 自動(dòng)響應(yīng)中斷 實(shí)現(xiàn)中斷返回。2 2個(gè)外部中斷源信號(hào):個(gè)外部中斷源信號(hào):INT0INT0、INT1INT12 2個(gè)定時(shí)器個(gè)定時(shí)器T0T0、T1T1溢出中斷請(qǐng)求:溢出中斷請(qǐng)求:TF0TF0、TF1TF11 1個(gè)串行口數(shù)據(jù)發(fā)送、接收結(jié)束中斷請(qǐng)求:個(gè)串行口數(shù)據(jù)發(fā)送、接收結(jié)束中斷請(qǐng)求:TITI、
45、RIRI寄存器名稱寄存器名稱D7D6D5D4D3D2D1D0TCON(88H)TF1TF0IE1IT1IE0IT0定時(shí)器控制定時(shí)器控制寄存器寄存器位地址位地址8FH8FH8EH8EH8DH8DH8CH8CH8BH8BH8AH8AH89H89H88H88HSCON(98H)TIRI串行口控制串行口控制寄存器寄存器位地址位地址9FH9FH9EH9EH9DH9DH9CH9CH9BH9BH9AH9AH99H99H98H98HIE(A8H)EAESET1 EX1 ET0 EX0中斷允許中斷允許寄存器寄存器位地址位地址AFHAFHACHACHABHABHAAHAAHA9HA9HA8HA8HIP(B8H)P
46、SPT1PX1PT0PX0中斷優(yōu)先級(jí)中斷優(yōu)先級(jí)寄存器寄存器位地址位地址BCHBCHBBHBBHBAHBAHB9HB9HB8HB8H1.中斷標(biāo)志位中斷標(biāo)志位: TF1、TF0、IE1、IE0、RI 、TI TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 SM0 SM1 SM2 REN TB8 RB8TIRISCONTCON登記各中斷源請(qǐng)求信號(hào):登記各中斷源請(qǐng)求信號(hào):=1=1,有中斷請(qǐng)求;,有中斷請(qǐng)求;=0=0,無(wú)中斷請(qǐng)求。,無(wú)中斷請(qǐng)求。CPUCPU響應(yīng)中斷后,各中斷標(biāo)志自動(dòng)清零。響應(yīng)中斷后,各中斷標(biāo)志自動(dòng)清零。注意:注意:TITI,RIRI標(biāo)志必須軟件清零。標(biāo)志必須軟件清零。2.
47、外部中斷外部中斷觸發(fā)方式選擇位:觸發(fā)方式選擇位:IT0、IT1=1=1,負(fù)邊沿觸發(fā)中斷請(qǐng)求;,負(fù)邊沿觸發(fā)中斷請(qǐng)求;=0=0,低電平觸發(fā)中斷請(qǐng)求。,低電平觸發(fā)中斷請(qǐng)求。=1=1,開(kāi)中斷;,開(kāi)中斷;=0=0,關(guān)中斷。,關(guān)中斷。例:例:允許允許CPUCPU響應(yīng)響應(yīng)T0T0的中斷請(qǐng)求的中斷請(qǐng)求M MOV IE,#82H OV IE,#82H 或者或者 SETB ET0 SETB ET0 SETB EA SETB EA2 2級(jí)優(yōu)先級(jí):級(jí)優(yōu)先級(jí):=1=1,為高優(yōu)先級(jí);,為高優(yōu)先級(jí);=0=0,為低優(yōu)先級(jí)。,為低優(yōu)先級(jí)。 同一優(yōu)先級(jí)別按內(nèi)部查詢順序排列優(yōu)先級(jí)同一優(yōu)先級(jí)別按內(nèi)部查詢順序排列優(yōu)先級(jí): 高高 INT
48、0INT0、T0T0、INT1INT1、T1T1、SISIO 低低。3. .中斷允許控制位:中斷允許控制位:EA、ES、ET1、EX1、ET0、EX0EA/ET2ESET1EX1ET0EX0IE/PT2PSPT1PX1PT0PX0IP4 4中斷優(yōu)先級(jí)控制位:中斷優(yōu)先級(jí)控制位:PSPS、PT1PT1、PX1PX1、PT0PT0、PX0PX0l低優(yōu)先級(jí)中斷可以被高優(yōu)先級(jí)中斷所中斷,反之不能。l一種中斷一旦得到響應(yīng),與它同級(jí)的中斷不能再中斷它。(一)中斷響應(yīng)條件(一)中斷響應(yīng)條件 1. 1.有中斷源發(fā)出中斷請(qǐng)求;有中斷源發(fā)出中斷請(qǐng)求; 2. 2.中斷總允許位中斷總允許位EAEA1 1,即即CPUCPU開(kāi)中斷;開(kāi)中斷; 3. 3.相應(yīng)的中斷允許位為相應(yīng)的中斷允許位為1 1,即沒(méi)有屏蔽。,即沒(méi)有屏蔽。(二)(二) 響應(yīng)過(guò)程響應(yīng)過(guò)程1.阻斷同級(jí)或低級(jí)中斷;阻斷同級(jí)或低級(jí)中斷;2.PC指針內(nèi)容壓棧保護(hù);指針內(nèi)容壓棧保護(hù);3.相應(yīng)中斷入口地址裝入相應(yīng)中斷入口地址裝入PC,程序轉(zhuǎn)移到該程序轉(zhuǎn)移到該 中斷入口地址單元。中斷入口地址單元。中中斷斷源源中中斷斷入入口口地地址址INT00003HT0000BHINT10013HT1001BHSIO0023H(三)(三) 中斷響應(yīng)阻斷中斷響應(yīng)阻斷1 . 當(dāng)當(dāng)CPUCPU未執(zhí)行完一條指令。未執(zhí)行完一條指令。2當(dāng)有同級(jí)或高級(jí)中斷服務(wù)。當(dāng)有同級(jí)或高級(jí)中斷服務(wù)。
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- Unit 5 We're family (說(shuō)課稿)-2024-2025學(xué)年外研版(三起)(2024)英語(yǔ)三年級(jí)上冊(cè)
- 1《學(xué)習(xí)伴我成長(zhǎng)》(說(shuō)課稿)-部編版道德與法治三年級(jí)上冊(cè)
- Unit 2 Different families Part B Let's talk(說(shuō)課稿)-2024-2025學(xué)年人教PEP版(2024)英語(yǔ)三年級(jí)上冊(cè)
- 2《用水計(jì)量時(shí)間》說(shuō)課稿-2024-2025學(xué)年科學(xué)五年級(jí)上冊(cè)教科版
- 2025產(chǎn)品購(gòu)銷(xiāo)合同樣書(shū)
- 2023九年級(jí)數(shù)學(xué)下冊(cè) 第25章 投影與視圖25.1 投影第2課時(shí) 正投影說(shuō)課稿 (新版)滬科版001
- 2025城市民用戶燃?xì)夤こ虒?shí)施合同書(shū)范本范文
- 2025婦女發(fā)展監(jiān)測(cè)評(píng)估項(xiàng)目工程合同管理
- 2025合同模板合伙人利潤(rùn)分配協(xié)議范本
- 2024-2025學(xué)年高中政治 第3單元 第6課 第1框 源遠(yuǎn)流長(zhǎng)的中華文化說(shuō)課稿 新人教版必修3001
- 現(xiàn)代通信原理與技術(shù)(第五版)PPT全套完整教學(xué)課件
- 社區(qū)獲得性肺炎教學(xué)查房
- 病例展示(皮膚科)
- GB/T 39750-2021光伏發(fā)電系統(tǒng)直流電弧保護(hù)技術(shù)要求
- DB31T 685-2019 養(yǎng)老機(jī)構(gòu)設(shè)施與服務(wù)要求
- 燕子山風(fēng)電場(chǎng)項(xiàng)目安全預(yù)評(píng)價(jià)報(bào)告
- 高一英語(yǔ)課本必修1各單元重點(diǎn)短語(yǔ)
- 糖尿病運(yùn)動(dòng)指導(dǎo)課件
- 完整版金屬學(xué)與熱處理課件
- T∕CSTM 00640-2022 烤爐用耐高溫粉末涂料
- 心腦血管病的危害教學(xué)課件
評(píng)論
0/150
提交評(píng)論