微機(jī)原理第八章--8251_第1頁
微機(jī)原理第八章--8251_第2頁
微機(jī)原理第八章--8251_第3頁
微機(jī)原理第八章--8251_第4頁
微機(jī)原理第八章--8251_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、8 84 4 串行通信及串行接口串行通信及串行接口 8.4.1 8.4.1 串行通信線路的工作方式串行通信線路的工作方式 串行通信指的是數(shù)據(jù)一位一位地依次傳輸,串行通信指的是數(shù)據(jù)一位一位地依次傳輸,每一位數(shù)據(jù)占據(jù)一個(gè)固定的時(shí)間長度。每一位數(shù)據(jù)占據(jù)一個(gè)固定的時(shí)間長度。 串行通信線路有如下串行通信線路有如下3 3種方式:種方式:(1 1)單工通信:它只允許一個(gè)方向傳輸數(shù)據(jù)。)單工通信:它只允許一個(gè)方向傳輸數(shù)據(jù)。(2 2)半雙工通信:它允許兩個(gè)方向傳輸數(shù)據(jù),)半雙工通信:它允許兩個(gè)方向傳輸數(shù)據(jù),但不能同時(shí)傳輸,只能交替進(jìn)行。但不能同時(shí)傳輸,只能交替進(jìn)行。(3 3)全雙工通信:它允許兩個(gè)方向同時(shí)進(jìn)行數(shù)

2、)全雙工通信:它允許兩個(gè)方向同時(shí)進(jìn)行數(shù)據(jù)傳輸。單工、半雙工、全雙工通信如下圖據(jù)傳輸。單工、半雙工、全雙工通信如下圖所示。所示。 發(fā)送發(fā)送 發(fā)送發(fā)送 發(fā)送發(fā)送 發(fā)送發(fā)送 發(fā)送發(fā)送 接收接收 接收接收 接收接收 接收接收 接收接收(a a)單工通信)單工通信(b b)半工通信)半工通信(c c)全工通信)全工通信圖圖8-21 8-21 串行通信線路的三種連接方式串行通信線路的三種連接方式 串行通信的特點(diǎn):串行通信的特點(diǎn):串行通信只要一條傳輸線,將數(shù)據(jù)逐位順序傳送;串行通信只要一條傳輸線,將數(shù)據(jù)逐位順序傳送;通信成本低,速度慢,接口復(fù)雜。通信成本低,速度慢,接口復(fù)雜。8.4.28.4.2串行接口串行

3、接口發(fā)送緩沖器發(fā)送緩沖器接收緩沖器接收緩沖器并串變換寄存器并串變換寄存器串并變換寄存器串并變換寄存器.通信線路通信線路C P UC P U發(fā)送數(shù)據(jù)發(fā)送數(shù)據(jù)C P UC P U接收數(shù)據(jù)接收數(shù)據(jù).發(fā)送發(fā)送時(shí)鐘時(shí)鐘接收接收時(shí)鐘時(shí)鐘發(fā)送發(fā)送控制控制接收接收控制控制發(fā)送器發(fā)送器接收器接收器 串行接口電路的功能:其一,把并行數(shù)據(jù)串行接口電路的功能:其一,把并行數(shù)據(jù)變成串行數(shù)據(jù)進(jìn)行傳輸;其二,把接收串行變成串行數(shù)據(jù)進(jìn)行傳輸;其二,把接收串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù)。數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù)。8.4.28.4.2串行接口串行接口串行接口有許多種類,串行接口包括串行接口有許多種類,串行接口包括4 4個(gè)主要寄存器:個(gè)主要寄存

4、器:控制寄存器、狀態(tài)寄存控制寄存器、狀態(tài)寄存器、數(shù)據(jù)寄存器、數(shù)據(jù)輸入寄存器及數(shù)器、數(shù)據(jù)寄存器、數(shù)據(jù)輸入寄存器及數(shù)據(jù)輸出寄存器。據(jù)輸出寄存器。 控制寄存器用來接收控制寄存器用來接收CPUCPU發(fā)送的各發(fā)送的各種控制命令,以決定其工作方式。狀態(tài)種控制命令,以決定其工作方式。狀態(tài)寄存器其狀態(tài)位用來指示當(dāng)前傳輸狀態(tài)。寄存器其狀態(tài)位用來指示當(dāng)前傳輸狀態(tài)。數(shù)據(jù)輸入寄存器是和串行輸入數(shù)據(jù)輸入寄存器是和串行輸入/ /并行輸出并行輸出移位寄存器配對(duì)使用的。移位寄存器配對(duì)使用的。 數(shù)據(jù)總線數(shù)據(jù)總線收發(fā)器收發(fā)器聯(lián)絡(luò)信號(hào)聯(lián)絡(luò)信號(hào)邏輯邏輯地址譯碼地址譯碼狀態(tài)寄存器狀態(tài)寄存器控制寄存器控制寄存器數(shù)據(jù)輸入寄存器數(shù)據(jù)輸入寄存

5、器串行輸入串行輸入/并行輸出并行輸出并行輸入并行輸入/串行輸出串行輸出數(shù)據(jù)輸出寄存器數(shù)據(jù)輸出寄存器發(fā)送時(shí)鐘發(fā)送時(shí)鐘接收時(shí)鐘接收時(shí)鐘圖圖 串行接口典型結(jié)構(gòu)串行接口典型結(jié)構(gòu)串行輸入串行輸入串行輸出串行輸出控制控制來自地址總線來自地址總線中斷請(qǐng)求中斷請(qǐng)求讀讀寫寫CSA08.4.3 串行通信數(shù)據(jù)的收發(fā)方式串行通信數(shù)據(jù)的收發(fā)方式串行通信:異步串行通信和同步串行通信。串行通信:異步串行通信和同步串行通信。異步通信:一個(gè)字符為單位,以起始位開始,異步通信:一個(gè)字符為單位,以起始位開始,停止位結(jié)束。收發(fā)時(shí)鐘可不一致。停止位結(jié)束。收發(fā)時(shí)鐘可不一致。同步通信:以一個(gè)字符序列為單位(長度可同步通信:以一個(gè)字符序列為

6、單位(長度可選),以同步字符開始。收發(fā)時(shí)鐘一致。選),以同步字符開始。收發(fā)時(shí)鐘一致。傳送速率:每秒鐘傳送的位數(shù),其單位為波傳送速率:每秒鐘傳送的位數(shù),其單位為波特率。特率。b/ s = 收收/發(fā)時(shí)鐘發(fā)時(shí)鐘nn:波特率因子:波特率因子,(可取可取 1, 16, 64)波特率與發(fā)送波特率與發(fā)送/ /接收時(shí)鐘的關(guān)系為接收時(shí)鐘的關(guān)系為: :空閑空閑起始位起始位.5858數(shù)據(jù)位數(shù)據(jù)位1/001較驗(yàn)位較驗(yàn)位 停止位停止位11空閑空閑起始位起始位1 1異步通信方式異步通信方式異步通信的數(shù)據(jù)格式是以一組不定異步通信的數(shù)據(jù)格式是以一組不定“位數(shù)位數(shù)”數(shù)組成。第數(shù)組成。第1 1位起始位,低電平;接著傳送若位起始位

7、,低電平;接著傳送若干個(gè)數(shù)據(jù)位,先發(fā)低位,后發(fā)高位;最后是停干個(gè)數(shù)據(jù)位,先發(fā)低位,后發(fā)高位;最后是停止位,寬度可以是止位,寬度可以是1 1位,位,1.51.5位或位或2 2位;在兩個(gè)位;在兩個(gè)數(shù)據(jù)組之間可有空閑。其數(shù)據(jù)格式如圖所示。數(shù)據(jù)組之間可有空閑。其數(shù)據(jù)格式如圖所示。 標(biāo)準(zhǔn)波特率:標(biāo)準(zhǔn)波特率:300300,600600,900900,12001200,24002400,48004800,96009600,1920019200。圖圖 異步通信的數(shù)據(jù)格式異步通信的數(shù)據(jù)格式1/01/0 1/0SYNC SYNC 數(shù)據(jù)字節(jié)數(shù)據(jù)字節(jié)1 1 數(shù)據(jù)字節(jié)數(shù)據(jù)字節(jié)2 2 數(shù)據(jù)字節(jié)數(shù)據(jù)字節(jié)N CRCN CRC

8、1 1 CRCCRC2 2 幀(a a)單同步)單同步SYNC SYNC SYNC SYNC 數(shù)據(jù)字節(jié)數(shù)據(jù)字節(jié)1 1 數(shù)據(jù)字節(jié)數(shù)據(jù)字節(jié)N CRCN CRC1 1 CRCCRC2 2幀幀(b)雙同步)雙同步數(shù)據(jù)字節(jié)數(shù)據(jù)字節(jié)1 1 數(shù)據(jù)字節(jié)數(shù)據(jù)字節(jié)2 2 數(shù)據(jù)字節(jié)數(shù)據(jù)字節(jié)N CRCN CRC1 1 CRCCRC2 2幀幀(c)外同步)外同步圖圖 面向字符型同步通信數(shù)據(jù)格式面向字符型同步通信數(shù)據(jù)格式2 2 同步通信方式同步通信方式同步通信方式:面向字符同步通信和面向比特同步通信。(1)面向字符型的數(shù)據(jù)格式:單同步、雙同步及外同步3種數(shù)據(jù)格式,如圖所示。 單同步:傳送數(shù)據(jù)之前,先傳送一個(gè)同步單同步:傳

9、送數(shù)據(jù)之前,先傳送一個(gè)同步字符字符“SYNC”,接收端檢測(cè)到同步字符,接收端檢測(cè)到同步字符后,開始接收數(shù)據(jù)。后,開始接收數(shù)據(jù)。雙同步:兩個(gè)同步字符雙同步:兩個(gè)同步字符“SYNC”,其后,其后,接著是數(shù)據(jù)。接著是數(shù)據(jù)。外同步:用一條專用控制線來傳送同步字外同步:用一條專用控制線來傳送同步字符,使接收方與發(fā)送方實(shí)現(xiàn)同步。符,使接收方與發(fā)送方實(shí)現(xiàn)同步。(2 2)面向比特型的數(shù)據(jù)格式:根據(jù)同步數(shù)據(jù)鏈)面向比特型的數(shù)據(jù)格式:根據(jù)同步數(shù)據(jù)鏈路控制規(guī)程(路控制規(guī)程(SDLCSDLC),面向比特型的數(shù)據(jù)以),面向比特型的數(shù)據(jù)以幀為單位傳輸,每幀由幀為單位傳輸,每幀由6 6個(gè)部分組成。如下圖:個(gè)部分組成。如下圖

10、: 7EH 地址場(chǎng)地址場(chǎng) 控制場(chǎng)控制場(chǎng) D0 D1 DN CRC1 CRC2 7EH幀幀開始 結(jié)束標(biāo)志 數(shù)據(jù) 標(biāo)志圖圖 面向比特型的數(shù)據(jù)格式面向比特型的數(shù)據(jù)格式 在在SDLCSDLC規(guī)程中,不允許在數(shù)據(jù)段和規(guī)程中,不允許在數(shù)據(jù)段和CRCCRC段中出段中出現(xiàn)現(xiàn)6 6個(gè)個(gè)“1”1”,否則會(huì)誤認(rèn)為是結(jié)束標(biāo)志。因此要求,否則會(huì)誤認(rèn)為是結(jié)束標(biāo)志。因此要求在發(fā)送端進(jìn)行檢驗(yàn),當(dāng)連續(xù)出現(xiàn)在發(fā)送端進(jìn)行檢驗(yàn),當(dāng)連續(xù)出現(xiàn)5 5個(gè)個(gè)“1”1”,則立即,則立即插入一個(gè)插入一個(gè)“0”0”,接收端要將這個(gè)插入的,接收端要將這個(gè)插入的“0”0”去掉,去掉,恢復(fù)原來的數(shù)據(jù)。恢復(fù)原來的數(shù)據(jù)。同步通信的效率比異步通信高。同步通信的

11、效率比異步通信高。8.5 可編程串行接口芯片可編程串行接口芯片8251A INTEL 8251A INTEL 8251A是一個(gè)通用串行輸入是一個(gè)通用串行輸入/ /輸出輸出接口,可以同步方式(或異步方式)與外設(shè)接口,可以同步方式(或異步方式)與外設(shè)進(jìn)行串行通信。廣泛應(yīng)用于長距離通信系統(tǒng)進(jìn)行串行通信。廣泛應(yīng)用于長距離通信系統(tǒng)及計(jì)算機(jī)網(wǎng)絡(luò)。及計(jì)算機(jī)網(wǎng)絡(luò)。8.5.18.5.18251A8251A芯片內(nèi)部結(jié)構(gòu)及其功能芯片內(nèi)部結(jié)構(gòu)及其功能 8251A8251A由發(fā)送器、接收器、數(shù)據(jù)緩沖存儲(chǔ)器、由發(fā)送器、接收器、數(shù)據(jù)緩沖存儲(chǔ)器、讀讀/ /寫控制電路及調(diào)制寫控制電路及調(diào)制/ /解調(diào)控制電路等解調(diào)控制電路等5

12、5部分組部分組成,如圖所示。成,如圖所示。1 1、發(fā)送器:要發(fā)送的數(shù)據(jù),鎖存到發(fā)送緩沖存儲(chǔ)器中。、發(fā)送器:要發(fā)送的數(shù)據(jù),鎖存到發(fā)送緩沖存儲(chǔ)器中。其發(fā)送速率由其發(fā)送速率由T TX XC C端上收到的發(fā)送時(shí)鐘頻率決定。端上收到的發(fā)送時(shí)鐘頻率決定。數(shù)據(jù)總線緩沖器讀/寫控制邏輯電路調(diào)制調(diào)制解調(diào)解調(diào)電路電路發(fā)送發(fā)送緩沖器緩沖器并并/ /串串轉(zhuǎn)換轉(zhuǎn)換發(fā)送控制電發(fā)送控制電路路接收接收緩沖器緩沖器串串/ /并并轉(zhuǎn)換轉(zhuǎn)換接收控制電路接收控制電路內(nèi)部總線內(nèi)部總線D0 D7 RESETCLKC / DRDWRCSDSRDTRCTSRTSTXDTXRDYTXEMPTYTXCRXDRXRDYRXCSYNDETOOOOO

13、OO圖圖 8251A內(nèi)部結(jié)構(gòu)流程圖內(nèi)部結(jié)構(gòu)流程圖與發(fā)送器有關(guān)信號(hào):與發(fā)送器有關(guān)信號(hào):T TX XD D:發(fā)送數(shù)據(jù)。在時(shí)鐘:發(fā)送數(shù)據(jù)。在時(shí)鐘TXCTXC的下降沿發(fā)送數(shù)據(jù)。的下降沿發(fā)送數(shù)據(jù)。T TX XC C:發(fā)送器時(shí)鐘信號(hào),輸入。:發(fā)送器時(shí)鐘信號(hào),輸入。 TXRDY TXRDY:發(fā)送器已準(zhǔn)備好信號(hào)。表示發(fā)送數(shù)據(jù)緩:發(fā)送器已準(zhǔn)備好信號(hào)。表示發(fā)送數(shù)據(jù)緩沖存儲(chǔ)器空。沖存儲(chǔ)器空。 TXEMPTY TXEMPTY:發(fā)送器空閑標(biāo)志。表示發(fā)送移位寄存:發(fā)送器空閑標(biāo)志。表示發(fā)送移位寄存器已空。器已空。2 2、接收器:外部通信數(shù)據(jù)從、接收器:外部通信數(shù)據(jù)從R RXD D端,逐位進(jìn)入接收移端,逐位進(jìn)入接收移位位寄存

14、器中。寄存器中。數(shù)據(jù)總線緩沖器讀/寫控制邏輯電路調(diào)制調(diào)制解調(diào)解調(diào)電路電路發(fā)送發(fā)送緩沖器緩沖器并并/ /串串轉(zhuǎn)換轉(zhuǎn)換發(fā)送控制電發(fā)送控制電路路接收接收緩沖器緩沖器串串/ /并并轉(zhuǎn)換轉(zhuǎn)換接收控制電路接收控制電路內(nèi)部總線內(nèi)部總線D0 D7 RESETCLKC / DRDWRCSDSRDTRCTSRTSTXDTXRDYTXEMPTYTXCRXDRXRDYRXCSYNDETOOOOOOO與接收器有關(guān)信號(hào):與接收器有關(guān)信號(hào):R RX XD D:數(shù)據(jù)接收端。數(shù)據(jù)接收端。R RX XD D在時(shí)鐘在時(shí)鐘R RX XC C上升沿采樣信號(hào)。上升沿采樣信號(hào)。R RX XRDYRDY:接收器已準(zhǔn)備好信號(hào),表示已收到一個(gè)數(shù)

15、據(jù),接收器已準(zhǔn)備好信號(hào),表示已收到一個(gè)數(shù)據(jù),當(dāng)當(dāng)CPUCPU讀數(shù)據(jù)后,讀數(shù)據(jù)后,R RX XRDYRDY變?yōu)榈碗娖?。變?yōu)榈碗娖?。SYNDET/BRKDETSYNDET/BRKDET雙功能的檢測(cè)信號(hào),高電平有雙功能的檢測(cè)信號(hào),高電平有效。效。內(nèi)同步:收到一個(gè)或兩個(gè)同步字符時(shí),內(nèi)同步:收到一個(gè)或兩個(gè)同步字符時(shí),SYNDETSYNDET輸出高輸出高電平。電平。外同步:當(dāng)從外同步:當(dāng)從SYNDETSYNDET端收到同步字符,接收器開始接端收到同步字符,接收器開始接收數(shù)據(jù)。收數(shù)據(jù)。 RXCRXC:接收器時(shí)鐘,由外部輸入。若采用同步方式,接收器時(shí)鐘,由外部輸入。若采用同步方式,接收器時(shí)鐘頻率等于接收數(shù)據(jù)的

16、頻率;異步方式,用接收器時(shí)鐘頻率等于接收數(shù)據(jù)的頻率;異步方式,用軟件設(shè)置波特率,軟件設(shè)置波特率,TXCTXC和和RXCRXC往往連接在一起往往連接在一起。 對(duì)于異步方式,當(dāng)對(duì)于異步方式,當(dāng)RXDRXD端口連續(xù)收到端口連續(xù)收到8 8個(gè)個(gè)“0”0”信號(hào),信號(hào),則則BRKDETBRKDET變成高電平,表示當(dāng)前處于數(shù)據(jù)斷缺狀態(tài)變成高電平,表示當(dāng)前處于數(shù)據(jù)斷缺狀態(tài)。3 3、數(shù)據(jù)總線緩沖器:數(shù)據(jù)總線緩沖存儲(chǔ)器是、數(shù)據(jù)總線緩沖器:數(shù)據(jù)總線緩沖存儲(chǔ)器是CPUCPU與與8251A8251A之間信息交換的通道。之間信息交換的通道。數(shù)據(jù)總線緩沖器讀/寫控制邏輯電路調(diào)制調(diào)制解調(diào)解調(diào)電路電路發(fā)送發(fā)送緩沖器緩沖器并并/

17、/串串轉(zhuǎn)換轉(zhuǎn)換發(fā)送控制電發(fā)送控制電路路接收接收緩沖器緩沖器串串/ /并并轉(zhuǎn)換轉(zhuǎn)換接收控制電路接收控制電路內(nèi)部總線內(nèi)部總線D0 D7 RESETCLKC / DRDWRCSDSRDTRCTSRTSTXDTXRDYTXEMPTYTXCRXDRXRDYRXCSYNDETOOOOOOO4 4、讀、讀/ /寫控制和調(diào)制控制:寫控制和調(diào)制控制: 讀讀/ /寫控制電路用來接收一系列的控制信號(hào),寫控制電路用來接收一系列的控制信號(hào),并向其內(nèi)部各功能部件發(fā)出有關(guān)的控制信號(hào)。并向其內(nèi)部各功能部件發(fā)出有關(guān)的控制信號(hào)。與讀與讀/ /寫控制電路的控制信號(hào):寫控制電路的控制信號(hào): RESETRESET:高電平復(fù)位,等待對(duì)其

18、初始化。:高電平復(fù)位,等待對(duì)其初始化。 CLKCLK:為芯片內(nèi)有關(guān)電路工作提供時(shí)鐘的輸入端。:為芯片內(nèi)有關(guān)電路工作提供時(shí)鐘的輸入端。同步:該頻率大于接收同步:該頻率大于接收/ /發(fā)送器的時(shí)鐘頻率的發(fā)送器的時(shí)鐘頻率的3030倍;異步:倍;異步:大于大于4.54.5倍。倍。 WR WR、RD RD 、C/D C/D 、CSCS、 數(shù)據(jù)總線數(shù)據(jù)總線緩沖器緩沖器讀/寫控制邏輯電路調(diào)制調(diào)制解調(diào)解調(diào)電路電路發(fā)送發(fā)送緩沖器緩沖器并并/ /串串轉(zhuǎn)換轉(zhuǎn)換發(fā)送控制電發(fā)送控制電路路接收接收緩沖器緩沖器串串/ /并并轉(zhuǎn)換轉(zhuǎn)換接收控制電路接收控制電路內(nèi)部總線內(nèi)部總線D0 D7 RESETCLKC / DRDWRCSDS

19、RDTRCTSRTSTXDTXRDYTXEMPTYTXCRXDRXRDYRXCSYNDETOOOOOOO與讀與讀/ /寫控制電路的控制信號(hào):寫控制電路的控制信號(hào): RESETRESET:高電平復(fù)位,等待對(duì)其初始化。:高電平復(fù)位,等待對(duì)其初始化。 CLKCLK:為芯片內(nèi)有關(guān)電路工作提供時(shí)鐘的輸入端。:為芯片內(nèi)有關(guān)電路工作提供時(shí)鐘的輸入端。同步:該頻率大于接收同步:該頻率大于接收/ /發(fā)送器的時(shí)鐘頻率的發(fā)送器的時(shí)鐘頻率的3030倍;異步:大于倍;異步:大于4.54.5倍。倍。 WR WR、RD RD 、C/D C/D 、CSCS、 與與MODENMODEN的控制信號(hào)的控制信號(hào)DTRDTR(Data

20、 Terninal ReadyData Terninal Ready):向):向MODENMODEN輸出,輸出,CPUCPU已準(zhǔn)備好,工作命令字的已準(zhǔn)備好,工作命令字的D D1 1置置11變?yōu)橛行?。變?yōu)橛行А? 5、調(diào)制、調(diào)制/ /解調(diào)控制電路:當(dāng)遠(yuǎn)距離串行通信時(shí),解調(diào)控制電路:當(dāng)遠(yuǎn)距離串行通信時(shí),發(fā)送時(shí),發(fā)送時(shí),MODENMODEN將數(shù)字信號(hào)轉(zhuǎn)換成模擬信號(hào);接將數(shù)字信號(hào)轉(zhuǎn)換成模擬信號(hào);接收時(shí),收時(shí),MODENMODEN將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)。將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)。DSRDSR(Data Set ReadyData Set Ready):由):由MODENMODEN輸入,表輸入,表示示M

21、ODENMODEN已準(zhǔn)備好,已準(zhǔn)備好,CPUCPU通過讀狀態(tài)寄存器的通過讀狀態(tài)寄存器的D7D7位檢測(cè)該信號(hào)。位檢測(cè)該信號(hào)。RTSRTS(Request To SendRequest To Send):通知):通知MODENMODEN,CPUCPU準(zhǔn)備好發(fā)送,工作命令字的準(zhǔn)備好發(fā)送,工作命令字的D D5 5置置11變?yōu)橛行?。變?yōu)橛行?。CTSCTS(Clear To SendClear To Send):當(dāng)有效時(shí),表示):當(dāng)有效時(shí),表示8251A8251A方可發(fā)送數(shù)據(jù)。方可發(fā)送數(shù)據(jù)。D2D3RXDGNDD4D5D6D7TXCWRCSC/DRDRXRDYD1D0VCCRXCDTRRTSDSRRESE

22、TCLKTXDTXEMPTYCTSSYNDET/ BRKDETTXRDY圖8251引腳分布B B1 1B B2 2L1L L2 2PENPENEPEPS S1 1S S2 200 00 同步方式同步方式 01 01 異步異步 1 110 10 異步異步 161611 11 異步異步 6464波特率因子波特率因子字符長度字符長度00 500 5位位01 601 6位位10 710 7位位11 811 8位位校驗(yàn)選擇校驗(yàn)選擇0101:奇校驗(yàn):奇校驗(yàn)11 11 :偶校驗(yàn):偶校驗(yàn)0 0 :不校驗(yàn):不校驗(yàn)同步(同步(D1:D0)=00D1:D0)=00)異步(異步(D1D000D1D000)0 0:內(nèi)同

23、步:內(nèi)同步1 1:外同步:外同步0 0:雙:雙SYNSYN1 1:單:單SYNSYN00 00 無效無效01, 101, 1個(gè)停止位個(gè)停止位10 ,1.510 ,1.5個(gè)停止位個(gè)停止位1111,2 2個(gè)停止位個(gè)停止位8.5.2 8251A8.5.2 8251A的控制字及其工作方式的控制字及其工作方式 1 1、方式命令:指定通信方式、數(shù)據(jù)格式、傳送速、方式命令:指定通信方式、數(shù)據(jù)格式、傳送速率及停止位長度等。(分成率及停止位長度等。(分成4 4組,每組組,每組2 2位)位)例例1 1:在某異步通信中,數(shù)據(jù)格式采用:在某異步通信中,數(shù)據(jù)格式采用8 8位數(shù)據(jù)位,位數(shù)據(jù)位,1 1位位起始位,起始位,2

24、 2位停止位,奇校驗(yàn),波特率因子是位停止位,奇校驗(yàn),波特率因子是1616,求,求其方式命令字?將該方式命令字寫入命令口,則程其方式命令字?將該方式命令字寫入命令口,則程序段為(假定命令口地址為序段為(假定命令口地址為309H309H):):例例2 2:在同步通信中,若幀數(shù)據(jù)格式為:字符長度:在同步通信中,若幀數(shù)據(jù)格式為:字符長度8 8位,位,雙同步字符,內(nèi)同步方式,奇校驗(yàn),求其方式命令字?雙同步字符,內(nèi)同步方式,奇校驗(yàn),求其方式命令字?將其方式命令字寫入命令口,則程序段為(假定命令口將其方式命令字寫入命令口,則程序段為(假定命令口地址為地址為309H309H):):方式命令字方式命令字= =?

25、MOV DX, 309H MOV DX, 309H MOV AL, 0DEHMOV AL, 0DEHOUTOUTDXDX,ALAL11011110B=DEH11011110B=DEHMOV DX, 309HMOV DX, 309HMOV AL, 1CHMOV AL, 1CHOUT DXOUT DX,ALAL同步方式命令字同步方式命令字= =?00011100B=1CH00011100B=1CH2 2、操作命令控制字:命令、操作命令控制字:命令8251A8251A進(jìn)行某種操作(如發(fā)進(jìn)行某種操作(如發(fā)送、接收、內(nèi)部復(fù)位和檢測(cè)同步字符等)或處于某種送、接收、內(nèi)部復(fù)位和檢測(cè)同步字符等)或處于某種工作狀

26、態(tài)(如工作狀態(tài)(如DTRDTR),以便接收或發(fā)送數(shù)據(jù)。),以便接收或發(fā)送數(shù)據(jù)。D0D0D1D1D2D2D3D3D4D4D5D5D6D6D7D7TXENTXENDTRDTRRXERXESBRKSBRKERERRTSRTSIRIREHEH1 1:發(fā)送允許:發(fā)送允許 0 0:不允許:不允許 1: 1:使使DTRDTR引腳引腳 = 0= 01 1 :接收允許:接收允許1 1 :TXDTXD送低電平(斷開信號(hào))送低電平(斷開信號(hào))0 0 :正常工作:正常工作1:1:使錯(cuò)誤標(biāo)志復(fù)位(狀態(tài)寄存器)使錯(cuò)誤標(biāo)志復(fù)位(狀態(tài)寄存器)1:1:使使RTSRTS引腳引腳 = 0= 01 1:軟件復(fù)位(下一條命令是方式字)

27、:軟件復(fù)位(下一條命令是方式字)1 1:進(jìn)入:進(jìn)入SYN SYN 搜索方式搜索方式例例3 3:若要使:若要使8251A8251A內(nèi)部復(fù)位,假定命令口地址內(nèi)部復(fù)位,假定命令口地址為為309H309H,則程序段為:,則程序段為: MOV DX,309H ;8251MOV DX,309H ;8251命令口命令口MOV AL,40H MOV AL,40H ;置;置D6=1D6=1,使內(nèi)部復(fù)位。,使內(nèi)部復(fù)位。OUT DXOUT DX,AL AL 例例4 4:異步通信時(shí),允許接收,同時(shí)允許發(fā)送,:異步通信時(shí),允許接收,同時(shí)允許發(fā)送,則程序段為(命令口地址為則程序段為(命令口地址為309H309H):):

28、MOV DX,309HMOV DX,309H;82518251命令口命令口 MOV AL,05H MOV AL,05H ;D2=1D2=1,D0=1D0=1,允許接收和發(fā)送。,允許接收和發(fā)送。 OUT DXOUT DX,AL AL 3.3.狀態(tài)字:報(bào)告狀態(tài)字:報(bào)告8251A8251A何時(shí)才能開始發(fā)送或接收,以及接收數(shù)據(jù)何時(shí)才能開始發(fā)送或接收,以及接收數(shù)據(jù)有無錯(cuò)誤。狀態(tài)位為有無錯(cuò)誤。狀態(tài)位為1 1,表示有效。在讀狀態(tài)期間,表示有效。在讀狀態(tài)期間,8251A8251A將自將自動(dòng)禁止改變狀態(tài)位。動(dòng)禁止改變狀態(tài)位。D0D0D1D1D2D2D3D3D4D4D5D5D6D6D7D7TXRDYTXRDYRX

29、RDYRXRDYTXETXEPEPEOEOEFEFESYNSYNDSRDSR1 1:發(fā)送緩沖器空,:發(fā)送緩沖器空, CPUCPU可送數(shù)。可送數(shù)。0 0:稍等:稍等1 1:CPUCPU可取數(shù)可取數(shù)0 0:稍等:稍等1 1:發(fā)送器(并:發(fā)送器(并/ /串轉(zhuǎn)換器)空串轉(zhuǎn)換器)空1 1:奇偶錯(cuò):奇偶錯(cuò)1 1:溢出錯(cuò):溢出錯(cuò)1 1:幀格錯(cuò):幀格錯(cuò)1 1:找到同步字符(:找到同步字符(SYNDETSYNDET引腳的狀態(tài)位)引腳的狀態(tài)位)1 1:DSR = 0DSR = 0(DSRDSR引腳的狀態(tài)位)引腳的狀態(tài)位)溢出錯(cuò):上一字符未讀走溢出錯(cuò):上一字符未讀走, ,下下一字符又來到一字符又來到RXDRXD端。

30、端。幀格錯(cuò):幀格錯(cuò):未檢測(cè)到停止位未檢測(cè)到停止位DSRDSR是數(shù)據(jù)裝置準(zhǔn)備好位。是數(shù)據(jù)裝置準(zhǔn)備好位。例例5 5:串行通信時(shí),在發(fā)送程序中,需查狀態(tài)字的:串行通信時(shí),在發(fā)送程序中,需查狀態(tài)字的D D0 0位位是否置是否置1 1,即查,即查T TX XRDY=1RDY=1?命令口地址為命令口地址為309H309H,其程其程序段為:序段為:MOVMOVDX,309HDX,309H;82518251命令口命令口LPLP: ININALAL,DXDXANDANDALAL,01H01H;查發(fā)送器是否就緒;查發(fā)送器是否就緒JZJZLPLP 例例6 6:串行通信時(shí),在接收程序中,需查狀態(tài)字的:串行通信時(shí),在接

31、收程序中,需查狀態(tài)字的D D1 1位是否置位是否置1 1,即查,即查R RX XRDY=1RDY=1?命令口地址為?命令口地址為309H309H,其,其程序段為:程序段為:MOVMOVDX,309HDX,309H;82518251命令口命令口LP1LP1:ININALAL,DXDXANDANDALAL,02H02H;查接收器是否就緒;查接收器是否就緒JZJZLP1LP1例例7 7:在接收程序中,檢查出錯(cuò)信息,則用下列程序段:在接收程序中,檢查出錯(cuò)信息,則用下列程序段: MOV DX,309HMOV DX,309H;82518251命令口命令口 ININ AL AL,DXDX TEST AL T

32、EST AL,38H38H;檢查;檢查D5D5、D4D4、D3D3(FEFE、OEOE、PEPE) JNZ ERRORJNZ ERROR;若其中有一位為;若其中有一位為1 1,則出錯(cuò),并,則出錯(cuò),并;轉(zhuǎn)入錯(cuò)誤處理程序。;轉(zhuǎn)入錯(cuò)誤處理程序。 4 4、8251A8251A的方式命令和工作命令的使用的方式命令和工作命令的使用 方式命令字:約定了雙方通信的方式方式命令字:約定了雙方通信的方式(同步(同步/ /異步)及其數(shù)據(jù)格式(數(shù)據(jù)位和停止異步)及其數(shù)據(jù)格式(數(shù)據(jù)位和停止位長度,校驗(yàn)特性,同步字符特性),傳送位長度,校驗(yàn)特性,同步字符特性),傳送速率等參數(shù);工作命令字:控制數(shù)據(jù)傳送的速率等參數(shù);工作命

33、令字:控制數(shù)據(jù)傳送的方向。只有當(dāng)方向。只有當(dāng)8251A8251A進(jìn)入發(fā)送進(jìn)入發(fā)送/ /接收準(zhǔn)備好的接收準(zhǔn)備好的狀態(tài),才能真正開始數(shù)據(jù)的傳送。狀態(tài),才能真正開始數(shù)據(jù)的傳送。 方式命令字和工作命令字均無特征位標(biāo)方式命令字和工作命令字均無特征位標(biāo)志,且都是送到同一命令端口,所以在向志,且都是送到同一命令端口,所以在向8251A8251A寫入方式命令字和工作命令字時(shí),需寫入方式命令字和工作命令字時(shí),需要 按 一 定 的 順 序 。 這 種 順 序 是 : 復(fù) 位要 按 一 定 的 順 序 。 這 種 順 序 是 : 復(fù) 位 方式命令字方式命令字 工作命令字工作命令字1 1 工作命令工作命令字字2 2

34、工作命令字工作命令字3 3 1. 1. 要求要求 在甲乙兩臺(tái)微機(jī)之間進(jìn)行串行通信,甲機(jī)發(fā)送,在甲乙兩臺(tái)微機(jī)之間進(jìn)行串行通信,甲機(jī)發(fā)送,乙機(jī)接收。要求把甲機(jī)上開發(fā)的應(yīng)用程序(其長度乙機(jī)接收。要求把甲機(jī)上開發(fā)的應(yīng)用程序(其長度為為2DH2DH)傳送到乙機(jī)中去。采用起止式異步方式,)傳送到乙機(jī)中去。采用起止式異步方式,字符長度為字符長度為8 8位,位,2 2位停止位,波特率因子為位停止位,波特率因子為6464個(gè)個(gè)/ /位,無校驗(yàn),波特率為位,無校驗(yàn),波特率為4800b/s4800b/s。CPUCPU與與8251A8251A之間之間用查詢方式交數(shù)據(jù)。口地址分配是:用查詢方式交數(shù)據(jù)??诘刂贩峙涫牵?09

35、H309H為命令為命令/ /狀態(tài)口,狀態(tài)口,308H308H為數(shù)據(jù)口。為數(shù)據(jù)口。2. 2. 分析分析 由于是近距離傳輸,直接互連,并且,采用查由于是近距離傳輸,直接互連,并且,采用查詢?cè)僆/OI/O方式,故收方式,故收/ /發(fā)程序中只需檢查發(fā)發(fā)程序中只需檢查發(fā)/ /收準(zhǔn)備好收準(zhǔn)備好的狀態(tài)是否置位,即可發(fā)收的狀態(tài)是否置位,即可發(fā)收1 1個(gè)字節(jié)。個(gè)字節(jié)。 8.5.38.5.38251A8251A應(yīng)用舉例應(yīng)用舉例 下面以兩臺(tái)微機(jī)之間進(jìn)行雙機(jī)串行通信的硬件連下面以兩臺(tái)微機(jī)之間進(jìn)行雙機(jī)串行通信的硬件連接和軟件編程來說明接和軟件編程來說明8251A8251A在實(shí)際中是如何應(yīng)用的。在實(shí)際中是如何應(yīng)用的。乙機(jī)

36、CPU T TX XD D R RX XD D SG SG T TX XC C R RX XC CEIA/TTLEIA/TTL 變換變換EIA/TTLEIA/TTL 變換變換T TX XD DR RX XD DSGSGT TX XC CR RX XC C甲機(jī)甲機(jī) CPUCPU8251A8251A8251A8251A圖圖 雙機(jī)串行通信接口雙機(jī)串行通信接口波特率波特率發(fā)生器發(fā)生器波特率波特率發(fā)生器發(fā)生器3.3. 設(shè)計(jì)設(shè)計(jì)(1 1) 硬件連接硬件連接(2 2) 軟件編程軟件編程 接收和發(fā)送程序分開編寫,每個(gè)程序段中包括接收和發(fā)送程序分開編寫,每個(gè)程序段中包括8251A8251A初初始化,狀態(tài)查詢和輸入始化,狀態(tài)查詢和輸入/ /輸出等部分。輸出等部分。 發(fā)送程序(略去發(fā)送程序(略去STACKSTACK和和DATADATA段):段):CSEG SEGMENTCSEG SEGMENT ASSUME ASSUMECSCS:CSEGCSEG,DSDS:CSEGCSEGTRATRA PROC PROC FARFARSTARTSTART:MOV DXMOV DX,309H309H;命令口;命令口 MOV ALMOV AL,00H00H;空操作,向命令口送任意數(shù);空操作,向命令口送任意數(shù) OUT DXOUT DX,ALAL MOV AL MOV AL,40H40H;內(nèi)部復(fù)位(使;內(nèi)部復(fù)位(使D6=

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論