第九章 可編程串行異步通信接口芯片8250_第1頁
第九章 可編程串行異步通信接口芯片8250_第2頁
第九章 可編程串行異步通信接口芯片8250_第3頁
第九章 可編程串行異步通信接口芯片8250_第4頁
第九章 可編程串行異步通信接口芯片8250_第5頁
已閱讀5頁,還剩41頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、9.19.1 串行通訊概述串行通訊概述9.2 82509.2 8250簡介簡介9.3 82509.3 8250應(yīng)用舉例應(yīng)用舉例一、串并行通訊一、串并行通訊9.1 串行通訊概述 串行通信是指使用一條數(shù)據(jù)線,將數(shù)據(jù)一位一位地依次傳輸,串行通信是指使用一條數(shù)據(jù)線,將數(shù)據(jù)一位一位地依次傳輸,每一位數(shù)據(jù)占據(jù)一個固定的時間長度。其只需要少數(shù)幾條線每一位數(shù)據(jù)占據(jù)一個固定的時間長度。其只需要少數(shù)幾條線就可以在系統(tǒng)間交換信息,特別使用于計算機與計算機、計就可以在系統(tǒng)間交換信息,特別使用于計算機與計算機、計算機與外設(shè)之間的遠距離通信。算機與外設(shè)之間的遠距離通信。 其特點是:其特點是:v節(jié)省傳輸線,這是顯而易見的。

2、尤其是在遠程通信時,此特節(jié)省傳輸線,這是顯而易見的。尤其是在遠程通信時,此特點尤為重要。這也是串行通信的主要優(yōu)點。點尤為重要。這也是串行通信的主要優(yōu)點。 v數(shù)據(jù)傳送效率低。與并行通信比,這也這是顯而易見的。這數(shù)據(jù)傳送效率低。與并行通信比,這也這是顯而易見的。這也是串行通信的主要缺點。也是串行通信的主要缺點。 如果一組數(shù)據(jù)的各數(shù)據(jù)位在多條線上同時被傳輸,這種傳輸方如果一組數(shù)據(jù)的各數(shù)據(jù)位在多條線上同時被傳輸,這種傳輸方式稱為并行通信。并行通信時數(shù)據(jù)的各個位同時傳送,可以式稱為并行通信。并行通信時數(shù)據(jù)的各個位同時傳送,可以字或字節(jié)為單位并行進行。字或字節(jié)為單位并行進行。 其特點是:其特點是:v各數(shù)據(jù)

3、位同時傳輸,傳輸速度快、效率高,多用在實時、快各數(shù)據(jù)位同時傳輸,傳輸速度快、效率高,多用在實時、快速的場合。速的場合。v并行傳輸?shù)臄?shù)據(jù)寬度可以是并行傳輸?shù)臄?shù)據(jù)寬度可以是1-1281-128位,甚至更寬,但是有多少位,甚至更寬,但是有多少數(shù)據(jù)位就需要多少根數(shù)據(jù)線,因此傳輸?shù)某杀据^高。數(shù)據(jù)位就需要多少根數(shù)據(jù)線,因此傳輸?shù)某杀据^高。v并行數(shù)據(jù)傳輸只適用于近距離的通信,通常傳輸距離小于并行數(shù)據(jù)傳輸只適用于近距離的通信,通常傳輸距離小于3030米。米。 串行通信串行通信優(yōu)點優(yōu)點:便于長距離傳送便于長距離傳送 缺點缺點:傳送速度較慢傳送速度較慢計算機與外界信息交換稱為計算機與外界信息交換稱為通信通信。通信

4、的通信的基本方式基本方式可分為并行通信和串行通信:可分為并行通信和串行通信:并行通信并行通信是數(shù)據(jù)的各位同時發(fā)送或同時接收;是數(shù)據(jù)的各位同時發(fā)送或同時接收;串行通信串行通信是數(shù)據(jù)的各位依次逐位發(fā)送或接收。是數(shù)據(jù)的各位依次逐位發(fā)送或接收。并行通信并行通信優(yōu)點優(yōu)點:傳送速度快傳送速度快 缺點缺點:不便長距離傳送不便長距離傳送異步通信對硬件要求較低,實現(xiàn)起來比較簡異步通信對硬件要求較低,實現(xiàn)起來比較簡單、靈活,適用于數(shù)據(jù)的隨機發(fā)送單、靈活,適用于數(shù)據(jù)的隨機發(fā)送/接收,但因接收,但因每個字節(jié)都要建立一次同步,即每個字符都要每個字節(jié)都要建立一次同步,即每個字符都要額外附加兩位,所以工作速度較低,在單片機

5、額外附加兩位,所以工作速度較低,在單片機中主要采用異步通信方式。中主要采用異步通信方式。二、二、異步通信和同步通信異步通信和同步通信串行通信按同步方式可分為異步通信和同步通信。串行通信按同步方式可分為異步通信和同步通信。1、異步通信異步通信異步通信依靠起始位、停止位保持通信同步。異步通信依靠起始位、停止位保持通信同步。 異步通信數(shù)據(jù)傳送按幀傳輸,一幀數(shù)據(jù)包含異步通信數(shù)據(jù)傳送按幀傳輸,一幀數(shù)據(jù)包含起始位、數(shù)據(jù)位、校驗位和停止位。起始位、數(shù)據(jù)位、校驗位和停止位。 同步通信傳輸速度較快,但要求有準確的同步通信傳輸速度較快,但要求有準確的時鐘來實現(xiàn)收發(fā)雙方的嚴格同步,對硬件要求時鐘來實現(xiàn)收發(fā)雙方的嚴格

6、同步,對硬件要求較高,適用于成批數(shù)據(jù)傳送。較高,適用于成批數(shù)據(jù)傳送。2、 同步通信同步通信同步通信依靠同步字符保持通信同步。同步通信依靠同步字符保持通信同步。 同步通信是由同步通信是由1 12 2個同步字符和多字節(jié)數(shù)個同步字符和多字節(jié)數(shù)據(jù)位組成,同步字符作為起始位以觸發(fā)同步時據(jù)位組成,同步字符作為起始位以觸發(fā)同步時鐘開始發(fā)送或接收數(shù)據(jù);多字節(jié)數(shù)據(jù)之間不允鐘開始發(fā)送或接收數(shù)據(jù);多字節(jié)數(shù)據(jù)之間不允許有空隙,每位占用的時間相等;空閑位需發(fā)許有空隙,每位占用的時間相等;空閑位需發(fā)送同步字符。送同步字符。 波特率的倒數(shù)即為每位傳輸所需的時間。波特率的倒數(shù)即為每位傳輸所需的時間。 相互通信的甲乙雙方必須具

7、有相同的波特相互通信的甲乙雙方必須具有相同的波特率,否則無法成功地完成串行數(shù)據(jù)通信。率,否則無法成功地完成串行數(shù)據(jù)通信。三、三、串行通信波特率串行通信波特率波特率波特率bps(bitbps(bit per second) per second)定義定義: 每秒傳輸數(shù)據(jù)的位數(shù),即:每秒傳輸數(shù)據(jù)的位數(shù),即:1波特波特 = 1位位/秒(秒(1bps1bps)四四 、串行通信的制式串行通信的制式 串行通信按照數(shù)據(jù)傳送方向可分為三種制串行通信按照數(shù)據(jù)傳送方向可分為三種制式:式: 單工制式單工制式是指甲乙雙方通信時是指甲乙雙方通信時只能單向傳只能單向傳送數(shù)據(jù)送數(shù)據(jù),發(fā)送方和接收方固定。,發(fā)送方和接收方固定

8、。 1 1、單工制式(單工制式(SimplexSimplex) 半雙工制式半雙工制式是指通信雙方都具有發(fā)送器是指通信雙方都具有發(fā)送器和接收器,既可發(fā)送也可接收,但不能同時和接收器,既可發(fā)送也可接收,但不能同時接收和發(fā)送,接收和發(fā)送,發(fā)送時不能接收,接收時不能發(fā)送時不能接收,接收時不能發(fā)送發(fā)送。2、半雙工制式(半雙工制式(Half DuplexHalf Duplex) 全雙工制式全雙工制式是指通信雙方均設(shè)有發(fā)送器和是指通信雙方均設(shè)有發(fā)送器和接收器,并且信道劃分為發(fā)送信道和接收信道,接收器,并且信道劃分為發(fā)送信道和接收信道,因此全雙工制式可實現(xiàn)甲乙雙方因此全雙工制式可實現(xiàn)甲乙雙方同時發(fā)送和接同時發(fā)

9、送和接收數(shù)據(jù)收數(shù)據(jù),發(fā)送時能接收,接收時也能發(fā)送。,發(fā)送時能接收,接收時也能發(fā)送。3 3、全雙工制式(全雙工制式(Full DuplexFull Duplex)六、調(diào)制解調(diào)器六、調(diào)制解調(diào)器 計算機內(nèi)的信息是由計算機內(nèi)的信息是由“0”0”和和“1”1”組成數(shù)字信號,而在電話組成數(shù)字信號,而在電話線上傳遞的卻只能是模擬電信號。于是,當(dāng)兩臺計算機要線上傳遞的卻只能是模擬電信號。于是,當(dāng)兩臺計算機要通過電話線進行數(shù)據(jù)傳輸時,就需要一個設(shè)備負責(zé)數(shù)模的通過電話線進行數(shù)據(jù)傳輸時,就需要一個設(shè)備負責(zé)數(shù)模的轉(zhuǎn)換。這個數(shù)模轉(zhuǎn)換器就是轉(zhuǎn)換。這個數(shù)模轉(zhuǎn)換器就是ModemModem。計算機在發(fā)送數(shù)據(jù)時,。計算機在發(fā)送數(shù)

10、據(jù)時,先由先由ModemModem把數(shù)字信號轉(zhuǎn)換為相應(yīng)的模擬信號,這個過程稱把數(shù)字信號轉(zhuǎn)換為相應(yīng)的模擬信號,這個過程稱為為“調(diào)制調(diào)制”。經(jīng)過調(diào)制的信號通過電話載波傳送到另一臺。經(jīng)過調(diào)制的信號通過電話載波傳送到另一臺計算機之前,也要經(jīng)由接收方的計算機之前,也要經(jīng)由接收方的ModemModem負責(zé)把模擬信號還原負責(zé)把模擬信號還原為計算機能識別的數(shù)字信號,這個過程稱為為計算機能識別的數(shù)字信號,這個過程稱為“解調(diào)解調(diào)”。正。正是通過間這樣一個是通過間這樣一個“調(diào)制調(diào)制”與與“解調(diào)解調(diào)”的數(shù)模轉(zhuǎn)換過程,的數(shù)模轉(zhuǎn)換過程,從而實現(xiàn)了兩臺計算機遠程通訊。從而實現(xiàn)了兩臺計算機遠程通訊。 9.2 82509.2

11、8250簡介簡介一、一、PCPC中的中的UARTUART UART:Universal UART:Universal Asynchronous Asynchronous Receiver/TransmitterReceiver/Transmitter,通用異步接收,通用異步接收/ /發(fā)送裝置,發(fā)送裝置,UARTUART是一個并行輸入成為串行輸出的芯片,通常集是一個并行輸入成為串行輸出的芯片,通常集成在主板上。成在主板上。 1.INS82501.INS8250 2.PC16450/PC16550 2.PC16450/PC16550 帶帶1616字節(jié)的發(fā)送緩沖器和字節(jié)的發(fā)送緩沖器和1414字節(jié)的接

12、收緩沖器字節(jié)的接收緩沖器 FIFOFIFO我的電腦中串口配置二、二、UARTUART的簡單應(yīng)用的簡單應(yīng)用1.1.連線:連線:RS232CRS232C接口標準,接口標準,3 3線或線或7 7線連接方式線連接方式 2.2.編程:編程: 1 1)自己編寫初始化及接收發(fā)送程序)自己編寫初始化及接收發(fā)送程序 2 2)調(diào)用)調(diào)用BIOSBIOS編程:編程:INT 14H 3 3)調(diào)用)調(diào)用DOSDOS編程:編程: INT 21H,調(diào)用號 03和04 4 4)DOSDOS下按照文件編程,文件名就是下按照文件編程,文件名就是COM1:COM1:或或COM2:COM2: 5 5)WINDOWSWINDOWS下下

13、VBVB編程,用編程,用MSCOMMMSCOMM控件編程控件編程 6 6)WINDOWSWINDOWS下下VCVC編程,用類、控件,或者按文件編程。編程,用類、控件,或者按文件編程。 7 7)用開發(fā)包編程:有很多,可以從網(wǎng)上下載。)用開發(fā)包編程:有很多,可以從網(wǎng)上下載。三、三、82508250的管腳與結(jié)構(gòu)的管腳與結(jié)構(gòu) 1.1.管腳管腳1D0D1D2D3RCLKSINSOUTDOSTRDOSTR4021VCCRIRLSDDSRCTSMROUT1DTROUTINTRNCA0ADS302535CS0CS1CS2BAUDOUTXTAL1GNDCSOUT2345678910111213141516171

14、81920D4D5D6D7XTAL2222324262728293132333436373839A1A2DDISDISTRDISTRRTS管腳信號說明管腳信號說明v數(shù)據(jù)總線緩沖器數(shù)據(jù)總線緩沖器:D D0 0D D7 7:雙向數(shù):雙向數(shù)據(jù)線據(jù)線v選擇與控制邏輯選擇與控制邏輯:vCS0CS0、CS1CS1、CS2-CS2-:輸入片選信號:輸入片選信號vA0A0、A1A1、A2A2:82508250內(nèi)部寄存器選擇內(nèi)部寄存器選擇信號信號vMRMR:主復(fù)位輸入信號,高電平有效:主復(fù)位輸入信號,高電平有效vADS-ADS-:地址選通信號:地址選通信號=AEN=AENvDISTRDISTR、DISTR-DI

15、STR-:數(shù)據(jù)輸入選通信號:數(shù)據(jù)輸入選通信號vDOSTRDOSTR、DOSTR-DOSTR-:數(shù)據(jù)輸出選通信號:數(shù)據(jù)輸出選通信號vDDISDDIS:驅(qū)動器禁止信號,在:驅(qū)動器禁止信號,在CPUCPU從從82508250讀取數(shù)據(jù)時為低電平,其他時讀取數(shù)據(jù)時為低電平,其他時間為高電平禁止外部收發(fā)器對系統(tǒng)間為高電平禁止外部收發(fā)器對系統(tǒng)總線的驅(qū)動總線的驅(qū)動 vCSOUTCSOUT:片選輸出信號:片選輸出信號vXTAL1XTAL1、XTAL2XTAL2:外部時鐘端:外部時鐘端v中斷控制邏輯:中斷控制邏輯:vINTRINTR:中斷請求輸出信號:中斷請求輸出信號vMODEMMODEM控制邏輯:控制邏輯:vC

16、TS-CTS-:清除發(fā)送信號:清除發(fā)送信號vRTS-RTS-:請求發(fā)送信號:請求發(fā)送信號vDTR-DTR-:數(shù)據(jù)終端準備好信號:數(shù)據(jù)終端準備好信號vDSR-DSR-:數(shù)據(jù)裝置準備好信號:數(shù)據(jù)裝置準備好信號vRLSD-RLSD-:接收線路信號檢測信號:接收線路信號檢測信號vRI-RI-:振鈴指示信號:振鈴指示信號vOUT1-OUT1-:由用戶編程指定的輸出端:由用戶編程指定的輸出端vOUT2-OUT2-:與:與OUT1OUT1一樣,可以由用戶一樣,可以由用戶編程指定(編程指定(PCPC用)用)v發(fā)送移位寄存器發(fā)送移位寄存器vSOUTSOUT:串行輸出信號:串行輸出信號v接收移位寄存器接收移位寄存

17、器vSINSIN:串行輸入信號:串行輸入信號vRCLKRCLK:接收時鐘信號:接收時鐘信號v波特率發(fā)生器波特率發(fā)生器vBAUDOUTBAUDOUT:波特率輸出:波特率輸出2.內(nèi)部結(jié)構(gòu)內(nèi)部結(jié)構(gòu)數(shù)據(jù)接收寄存器數(shù)據(jù)發(fā)送寄存器接收移位寄存器發(fā)送移位寄存器線路控制寄存器線路狀態(tài)寄存器除數(shù)寄存器高位除數(shù)寄存器低位波特率發(fā)生器MODE控制寄存器MODE狀態(tài)寄存器中斷允許寄存器中斷識別寄存器 控制邏輯 控制邏輯數(shù)據(jù)總線緩沖器讀寫控制邏輯內(nèi)部數(shù)據(jù)總線D0 D7CS0CS1CS2A2A1A0ADSDISTRDISTRDOSTRDOSTRDDISMROOOSOUTSINXTAL2XTAL1BAUD OUTRTSCT

18、SDTRDSRRLSDRIOUT1OUT2INTRPTRCLK發(fā)送器控制邏輯接收器控制邏輯3. 連接連接PC / XT異步通信適配器電路異步通信適配器電路 四、寄存器與四、寄存器與BPSBPS1.1.地址分配及其復(fù)用地址分配及其復(fù)用 3 3根地址信號線:根地址信號線:A2 A1 A0A2 A1 A0 8 8個地址,個地址,7 7個可用,個可用,1010個可編程物理端口,復(fù)個可編程物理端口,復(fù)用。用。2.102.10個寄存器及其每位的作用個寄存器及其每位的作用(1)通信控制寄存器 該控制字主要決定在串行通信時所使用的數(shù)據(jù)格式,例如數(shù)據(jù)位數(shù)、奇偶校驗及停止位的多少。同時,特別注意該控制字的D7。當(dāng)

19、我們需要讀寫除數(shù)鎖存器時,必須先將該寄存器的D7置1。而在讀寫其他寄存器時,又要使其為0。(2)通信狀態(tài)寄存器 通信狀態(tài)寄存器的作用在于通過其狀態(tài)說明在通信過程中8250接收和發(fā)送數(shù)據(jù)的情況。(3)發(fā)送數(shù)據(jù)寄存器 這是一個8位的寄存器,發(fā)送數(shù)據(jù)時,處理器將數(shù)據(jù)寫入寄存器。只要發(fā)送移位寄存器空,該發(fā)送數(shù)據(jù)寄存器的數(shù)據(jù)便會由8250硬件自動并行送到移位寄存器中,以便串行移出。(4)接收數(shù)據(jù)寄存器 是一個8位的寄存器,當(dāng)8250接收到一個完整的字符時,會將該字符由接收移位寄存器傳送到接收數(shù)據(jù)寄存器。處理器可直接由此寄存器讀取數(shù)據(jù)。(5)除數(shù)鎖存器(波特率因子寄存器) 該鎖存器為16位,外部時鐘被除數(shù)

20、鎖存器中的除數(shù)相除,可以獲得所得的波特率。如果外部時鐘頻率f已知,而8250所要求的波特率F也已規(guī)定。那么,就可以由下式求出除數(shù)鎖存器應(yīng)鎖存的除數(shù): 波特率因子=1.8432Mhz/(1200*16)=96 例如,當(dāng)輸入時鐘頻率為1.8432MHZ時,若要求使用1200波特來傳送數(shù)據(jù),這時可算出鎖存于除數(shù)鎖存器的除數(shù)應(yīng)為96。在8250工作前首先要將除數(shù)寫到除數(shù)鎖存器中,以便產(chǎn)生所希望的波特率。為了寫入除數(shù),首先在通信控制寄存器中將D7置為1,而后就可以將16位除數(shù)先低8位,后高8位寫入除數(shù)鎖存器中。(6)中斷允許寄存器 中斷允許寄存器只用D0D3這四位,每位的0或1編碼分別允許或禁止8250

21、的四種中斷源提出中斷。在中斷允許字中,接收線路狀態(tài)包括越限錯、奇偶錯、結(jié)構(gòu)錯、間斷等中斷源引起的中斷。而MODEM狀態(tài)引起的中斷見下面對MODEM狀態(tài)寄存器的解釋。(7)中斷標志寄存器 中斷標志寄存器為8位,高五位為0,只用低三位來實現(xiàn)8250的中斷標志。8250有四個中斷源,在8250內(nèi)不按排優(yōu)先級的順序為: 最高優(yōu)先極為接收器線路狀態(tài)中斷,包括越限、奇偶錯、結(jié)構(gòu)錯、間斷等。 讀通信狀態(tài)寄存器可使此中斷復(fù)位。 下一優(yōu)先級是接收寄存器滿中斷。讀接收寄存器可復(fù)位此中斷。 再下一優(yōu)先級為發(fā)送數(shù)據(jù)寄存器空中斷。寫發(fā)送數(shù)據(jù)寄存器克使這一中斷復(fù)位。 最高優(yōu)先級為MODEM狀態(tài)中斷,包括發(fā)送結(jié)束、數(shù)傳機準

22、備好、振鈴指示、接收線路信號檢測等為MODEM狀態(tài)中斷源。讀MODEM狀態(tài)寄存器可復(fù)位該中斷。(8)MODEM控制寄存器 這是一個8位的寄存器,用以控制MODEM或其他數(shù)字設(shè)備。(9)MODEM狀態(tài)寄存器 MODEM狀態(tài)寄存器提供了與8250相連接的MODEM或其他外設(shè)加到8250上的控制線的信號狀態(tài)以及這些控制線的狀態(tài)變化。當(dāng)由MODEM來的控制線變化時,MODEM狀態(tài)寄存器的低4位被相應(yīng)的置1。再讀此寄存器時,使這4位同時清零。3.3.波特率因子波特率因子 波特率因子波特率因子(BRDBRD)是)是1616位數(shù),它與位數(shù),它與82508250的的數(shù)據(jù)傳輸速率(波特率)有關(guān)。當(dāng)使用數(shù)據(jù)傳輸速

23、率(波特率)有關(guān)。當(dāng)使用82508250的的內(nèi)部時鐘頻率為內(nèi)部時鐘頻率為1.8432MHz1.8432MHz時,則波特率因子時,則波特率因子BRDBRD與波特率與波特率BaudBaud之間的關(guān)系如下式所示:之間的關(guān)系如下式所示: BRD=BRD=時鐘頻率時鐘頻率/ /(1616BaudBaud)。)。 例如,若要計算波特率為例如,若要計算波特率為1200b/s1200b/s的波特率的波特率除數(shù),則有:除數(shù),則有: BDR=1843200/BDR=1843200/(161612001200)=0060H=96=0060H=96。端口地址端口地址初始化順序1、通信線路控制器、通信線路控制器 ( 0

24、11B PC機地址 3FBH)D0D1D2D3D4D5D6D700:5位01:6位10:7位11:8位字符長停止位 0:1個停止位 1:1.5個停止位(字符長5位) 2個停止位(字符長6 8位)0:無校驗位1:有校驗位校驗類型 0:奇校驗, 1:偶校驗固定奇偶位,既當(dāng)D4,D3 = 11時(偶校驗),D5 = 0 當(dāng)D4,D3 = 01時(奇校驗),D5 = 10表示正常收發(fā)D7 = 0 尋址TBR、RBR IERD7 = 1尋址DLL、DHL選擇異步通信格式選擇異步通信格式D0D1D2D3D4D5D6D72、通信狀態(tài)寄存器、通信狀態(tài)寄存器 LSR (101 3FDH)DROEPEFEBITH

25、RETSRE01:接收數(shù)據(jù)就緒1:溢出錯1:奇偶較驗錯1:幀錯誤1:正在傳輸中止符1:發(fā)送緩沖器空發(fā)送移位寄存器空3、分頻次數(shù)鎖存器、分頻次數(shù)鎖存器DLH和和DLL (3F9H,3F8H) 1.8432MHZ基準時鐘,進行1 65535次分頻后由BAUDOUT引腳輸出的頻率為 16b/s的時鐘。8250初始化時,必須將16位的分頻次數(shù)分兩次寫入高低兩個8位 分頻次數(shù)鎖存器DLH和DLL分頻次數(shù) = 1843200HZ / 16波特率(基準時鐘)D0D1D2D3D4D5D6D7DTRRTSOUT1OUT2LOOP0004、調(diào)制解調(diào)控制寄存器、調(diào)制解調(diào)控制寄存器MCR(100B 3FCH)其中D0

26、 D3位對應(yīng)8250的四個引腳,當(dāng)該位為1時,相應(yīng)的引腳輸出有效的低電平。當(dāng)D4 = 1時,8250工作循環(huán)回送狀態(tài)。(此時8250發(fā)送的數(shù)據(jù)被自身接收。用于自檢)D0D1D2D3D4D5D6D7CTSDSRRIRLSDCTSDSRRIRLSD5、調(diào)制解調(diào)狀態(tài)寄存器、調(diào)制解調(diào)狀態(tài)寄存器MSR(110B 3FEH)MSR檢測8250芯片4個輸入引腳狀態(tài)。D0 D3置1表示允許四個引腳電平發(fā)生變化。D4 D7表示四個引腳的電平,1:低電平(有效電平), 0:高電平。D0D1D2D3D4D5D6D7000006、中斷識別寄存器、中斷識別寄存器 IIR(010B 3FAH)1:無中斷請求0:有中斷請求

27、中斷源00:MODEM狀態(tài)發(fā)生變化中斷01:發(fā)送寄存器空10:接收數(shù)據(jù)就緒11:接收數(shù)據(jù)錯優(yōu)先級最高優(yōu)先級最低D0D1D2D3D4D5D6D7EDSS10007、中斷允許寄存器、中斷允許寄存器 IER (001 3F9H)ERBF1ETBE1ELS10接收數(shù)據(jù)準備好中斷發(fā)送寄存器空中斷接收數(shù)據(jù)錯中斷MODE狀態(tài)中斷D0 D3位為1時,相應(yīng)的位允許相應(yīng)的中斷五、8250工作過程 1.數(shù)據(jù)發(fā)送過程vCPU將要發(fā)送的數(shù)據(jù)以字符為單位寫到8250的THR中()。當(dāng)TSR中的數(shù)據(jù)全部移出變空時,存于THR中待發(fā)送的數(shù)據(jù)將會自動發(fā)送并行送到TSR(8250初始化后,TSR為空狀態(tài),所以初始化后傳送到THR

28、的第一個字符總是立即送到TSRE。)。TSR在發(fā)送時鐘的激勵下,按照事先和接收方約定的字符傳送式(參見圖7-35),加上起始位,奇偶校驗位和停止位,再以約定的波特率(由波特率控制部分產(chǎn)生)按照從底到高的順序一位一位的由SOUT端發(fā)送出去。v一旦THR的內(nèi)容送到TSR ,就會在LSR中建立數(shù)據(jù)發(fā)送保持寄存器空的狀態(tài)位;而且也可以用此狀態(tài)位來觸發(fā)產(chǎn)生中斷。因此,查詢狀態(tài)位或者利用該狀態(tài)觸發(fā)的中斷即可實現(xiàn)數(shù)據(jù)的連續(xù)發(fā)送。 2.數(shù)據(jù)接收過程v由通信對方來的數(shù)據(jù)在接收時鐘RCLK的作用下,通過SIN端逐位進入RSR。RSR根據(jù)初始化時定義的數(shù)據(jù)位數(shù)確定接收到了一個完整的數(shù)據(jù)后會立即將數(shù)據(jù)自動并行傳送到R

29、BR。RBR收到RSR 的數(shù)據(jù)后,就立即在狀態(tài)寄存器中建立接收到數(shù)據(jù)準備好的狀態(tài),而且也可以用此狀態(tài)位來觸發(fā)中斷。因此,查詢狀態(tài)位或者利用該狀態(tài)觸發(fā)的中斷即可實現(xiàn)數(shù)據(jù)的連續(xù)接收。v由于串行異步通信的速率低,無論是用查詢方式還是中斷方式來實現(xiàn)異步通信均不很困難。 六、六、8250初始化編程初始化編程 1.1.寫寫B(tài)PSBPS 8250初始化時,通常首先使通信控制字的初始化時,通常首先使通信控制字的D7=1,即使即使DLAB為為1 .在此條件下,將除數(shù)低在此條件下,將除數(shù)低8位和高位和高8位分別寫入位分別寫入8250內(nèi)部的除數(shù)寄存器。內(nèi)部的除數(shù)寄存器。1.MOV DX,3FBH ;LCR的地址的地

30、址2.MOV AL,80H ;開始;開始3.OUT DX,AL;4.MOV DX,3F8H ;使使LCR的的D7=15.MOV AL,60H ;DLL的地址的地址6.OUT DX,AL ;寫除數(shù)低;寫除數(shù)低8位位7.INC DX ;DLH的地址的地址8.MOV AL,09.OUT DX,AL ;寫除數(shù)高;寫除數(shù)高8位位2.2.寫通訊線控制字寫通訊線控制字vMOV DX,3FBH ;LCR的地址的地址vMOV AL,0AH ;1 位停止位,位停止位,7位數(shù)據(jù)位,奇校驗位數(shù)據(jù)位,奇校驗vOUT DX,AL ;初始化通信控制寄存器;初始化通信控制寄存器3.3.寫寫MODEMMODEM控制字控制字vM

31、OV DX,3FCH ;MCR的地址的地址vMOV AL,03H ;使;使DTR和和RTS有效有效/3/13/B/1BvOUT DX,AL ;初始化初始化modem控制器控制器4.4.寫中斷允許字(中斷方式)寫中斷允許字(中斷方式)vMOV DX,3F9H ;IER的地址的地址vMOV AL,0 ;禁止所有中斷;禁止所有中斷vOUT DX,AL ;寫中斷允許寄存器寫中斷允許寄存器1.查詢方式v假定要發(fā)送的字節(jié)數(shù)放在BX中,要發(fā)送的數(shù)據(jù)順序存放在以DATA為首地址的內(nèi)存區(qū)中,則發(fā)送數(shù)據(jù)的程序段如下所示。SENDPRG:vMOV DX,3FDHvLEA SI,DATAWAITTHR: IN AL,

32、DXvTEST AL,20H;檢查檢查THR是否空是否空vJZ WAITTHRvPUSH DXvMOV DX,3F8HvLODSBvOUT DX,ALvPOP DXvDEC BXvJNZ WAITTHRv9.3 82509.3 8250應(yīng)用舉例應(yīng)用舉例SENDPRG:vMOV DX,3FDHvLEA SI,DATAWAITTHR: IN AL,DXvTEST AL,20H ;檢查檢查THR是否空是否空vJZ WAITTHRvPUSH DXvMOV DX,3F8HvLODSBvOUT DX,ALvPOP DXvDEC BXvDEC BXvJNZ WAITTHRv查詢方式實現(xiàn)數(shù)據(jù)的接收。查詢方式實現(xiàn)數(shù)據(jù)的接收。 MOV DX,3F8HIN AL,DX ;接收一個字節(jié);接收一個字節(jié)RECVPRG: MOV DX,3FDHWAITRBR: IN AL,

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論