第09章 串行通信接口_第1頁
第09章 串行通信接口_第2頁
第09章 串行通信接口_第3頁
第09章 串行通信接口_第4頁
第09章 串行通信接口_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第9章串行通信接口

主要內(nèi)容:1、串行傳送的基本概念

2、串行通信的數(shù)據(jù)格式

3、串行通信接口標準

4、串行通信接口的任務及組成

5、可編程串行接口芯片8251A

6、采用RS-232標準的全雙工異步串行通信接口電路設計

7、采用RS-485標準的異步串行通信接口電路設計

8、PC微機異步通信適配器的分析和使用重點內(nèi)容:1、串行接口電路的標準及使用

2、8251A的工作原理及應用1第9章串行通信接口

9.1串行通信的基本概念通信方式并行通信(B/s)串行通信(b/s)一、串行通信的特點(1)用一根傳輸線一位一位地傳送數(shù)據(jù)和聯(lián)絡信息;(2)固定的數(shù)據(jù)格式(異步和同步數(shù)據(jù)格式)(3)信號的邏輯定義和TTL不兼容,需進行邏輯關

系和邏輯電平的轉換;(4)雙方按約定的通信傳輸?shù)牟ㄌ芈释ㄐ牛?/p>

2第9章串行通信接口

二、串行通信雙方需解決的問題(1)雙方發(fā)送和接收數(shù)據(jù)的速率——波特率(2)雙方的數(shù)據(jù)格式——幀格式(3)雙方的數(shù)據(jù)開始與結束的確定——幀同步(4)雙方的數(shù)據(jù)的采樣——位同步(5)接收方的數(shù)據(jù)的正確性——數(shù)據(jù)校驗(6)接收方出錯如何處理

通信協(xié)議:通信雙方對數(shù)據(jù)格式、同步方式、傳送速度、傳送步驟、檢糾錯方式及控制字符定義等問題作出的統(tǒng)一規(guī)定,通信雙方式必須共同遵守的這些約定。3第9章串行通信接口

三、串行數(shù)據(jù)傳送方向1、單工傳送方式A設備B設備發(fā)送器接收器2、半雙傳送方式A設備B設備發(fā)送器發(fā)送器接收器接收器4第9章串行通信接口

3、全雙傳送方式收接和發(fā)送開關是由軟件控制的電子開關。電話線是全雙工。A設備B設備發(fā)送器發(fā)送器接收器接收器5第9章串行通信接口

四、信號的調(diào)制和解調(diào)五、信息的檢錯與糾錯1、奇偶校驗或方陣檢錯只能查錯無糾正錯誤能力,以反饋重發(fā)方式糾錯。2、循環(huán)冗余碼CRC能查錯并有自動糾正錯誤能力。計算機MODEMMODEMCRT電話線調(diào)制解調(diào)6第9章串行通信接口

1101001010000010101011111001110000101偶校驗011方陣檢錯00001001檢驗字符在接收時數(shù)據(jù)塊讀出產(chǎn)生一個檢驗字符,將這個字符與發(fā)送來的檢驗字符進行比較,不同表明有錯重發(fā)。7第9章串行通信接口

六、波特率與發(fā)送/接收時鐘1、波特率單位時間內(nèi)傳送二進制數(shù)據(jù)的位數(shù)。例:在異步串行通信中,傳送一個字符,包括12位其中有1個起始位,8位數(shù)據(jù)位,1個偶校驗位,

2個停止位,其傳輸速率是1200b/s,求:每秒傳送的字符的個數(shù)是多少個?8第9章串行通信接口

2、發(fā)送/接收時鐘

在發(fā)送數(shù)據(jù)時,發(fā)送器在發(fā)送時鐘(下降沿)作用將發(fā)送移位寄存器的數(shù)據(jù)按位串行移位輸出;在接收數(shù)據(jù)時,接收器在接收時鐘(上升沿)作用下對來自通信線上串行數(shù)據(jù),按位串行移入接收移位寄存器。

在實際數(shù)據(jù)傳輸過程中,收接器的采用比特率比發(fā)送器高得多的頻率的時鐘來提高定位采樣的分辨率和抗干擾能力。原因在于發(fā)送器發(fā)送過一個數(shù)據(jù)后,接收器可通過更高的時鐘頻率對傳送過來的數(shù)據(jù)進行多次采樣,不僅有利于實現(xiàn)收發(fā)同步,而且有利于抗干擾和提高異步通信的可靠性。(16倍、64倍等)9第9章串行通信接口

3、波特因子是發(fā)送/接收1位數(shù)據(jù)所需要的時鐘脈沖個數(shù)。發(fā)/收時鐘脈沖與波特率關系:發(fā)/收時鐘Txc=Baud×Factor

在異步通信中Factor=16,在同步通信Factor=1,在波特因子選定的情況下,可利用改變發(fā)/收時鐘頻率來控制串行通信的波特率。4、傳輸距離與傳輸速率的關系10第9章串行通信接口

七、串行通信的基本方式1、異步串行通信方式以字符為信息單位傳送的。一幀字符用起始位和停止位來完成收發(fā)同步。同一個字符的位與位是同步的,字符與字符間是異步的。數(shù)據(jù)流的分界、定時及同步的方法的不同

2、同步串行通信方式

以數(shù)據(jù)塊為信息單位傳送,每幀信息包括多個字符,靠同步字符來完成收發(fā)雙方同步的。同步通信不僅字符內(nèi)部的位傳送時同步的,字符與字符之間傳送也是同步的,雙方必須使用同一時鐘來控制數(shù)據(jù)塊傳輸過程中的定時。11第9章串行通信接口

9.2串行通信的數(shù)據(jù)格式一、起止式異步通信數(shù)據(jù)格式一幀數(shù)據(jù)的格式起始位0、數(shù)據(jù)位5~8、校驗位1和停止位1~2。雙方通信是靠起止位和停止位來完成信息傳輸?shù)耐健?11110LSBMSB起止位0/10/1……0/10/1數(shù)據(jù)位(5~8)先送低后送高0/1校驗位停止位(1,1?

或2)空閑位起止位0/1LSB第n+1個字符第n個字符(1位)(可有可無有為1位)(不限)12第9章串行通信接口

二、面向字符的同步通信數(shù)據(jù)格式一次傳送由若干個字符組成的數(shù)據(jù)塊,并規(guī)定10個特殊字符組成

的通信控制字作為數(shù)據(jù)塊的開頭、結束標志及整個傳輸過程的控

制信息。SYNSYNSOH標題STX數(shù)據(jù)塊ETB/ETX塊校驗SYN:同步字符。SOH:序始字符,表示標題的開始。標題:源地址、目標地址和路由指示等。STX:文始字符,表示數(shù)據(jù)塊的開始。ETB/ETX:組終/文終字符,表示傳送數(shù)據(jù)塊的組的結束及塊的結束。塊校驗:它對SOH至ETB/ETX段信息的校驗碼。13第9章串行通信接口

9.3串行通信接口標準在串行通信中,數(shù)據(jù)終端設備DTE與數(shù)據(jù)通信設備DCE之間的連接,要符合接口標準,目前使用最廣泛的是串行標準RS-232C、RS-423、RS-422A、RS-485。

RS-232C美國電子工業(yè)協(xié)會(EIA)在1969年為了電話網(wǎng)絡進行數(shù)據(jù)通信而公布的數(shù)據(jù)通信標。通過調(diào)制將邏輯“1”和“0”的高低電壓轉換成高、低不同的頻率在電話網(wǎng)絡中傳送,在接收端用解調(diào)器把不同的頻率變在一系列高低電壓以表示“1”和“0”。14第9章串行通信接口

1、控制信號的定義9針連接器25針連接器名稱方向功能32TXDOUT發(fā)送數(shù)據(jù)23RXDIN

接收數(shù)據(jù)74RTSOUT

請求發(fā)送85CTSIN

允許發(fā)送66DSRIN

數(shù)據(jù)設備準備好57GND

信號地18DCDIN載波檢測420DTROUT數(shù)據(jù)終端準備好922RIIN振鈴指示一、RS-232C總線引腳15第9章串行通信接口

2、信號電平標準

RS-232C采用負邏輯,以+3V~+25表示“0”,以-3V~-25表示“1”,與計算機接口芯片中的+/-12V或+/-15V電平不同,采用此總線時必須有相應的電平轉換,輸入時用MC1489,它可將RS-232C的電平轉換為TTL電平,輸出時用

MC1488,它可將計算機輸出的TTL電平轉換為RS-232C允許使用的電平。16第9章串行通信接口

3、信號線的連接和使用(1)采用MODEM時RS-232C信號線的使用計算機接口調(diào)制解調(diào)器TxDRxDRTSCTSDSRSGDCD調(diào)制解調(diào)器TxDRxDRTSCTSDSRSGDCD接口終端專用電話線17第9章串行通信接口

(2)不采用MODEM時RS-232C信號線的使用計算機或終端計算機或終端23457620123457620118第9章串行通信接口

填空:1、異步串行通信規(guī)程規(guī)定,傳送數(shù)據(jù)的基本單是()、最先傳送的是(),長度為()信號電平()。2、在RS-232C接口標準中,對于控制信號的接通狀態(tài)的電平范圍是(),斷開狀態(tài)的電平范圍是()。判斷:1、在數(shù)據(jù)通信中,半雙工通信在任意一個時刻只能進行一個方向的傳輸,而全雙工通信可以同時進行兩個方向的傳輸。()2、調(diào)制解調(diào)器是將數(shù)字信號變成能在傳輸線上傳送的模擬信號,或?qū)鬏斁€上的模擬信號變成數(shù)字信號。()19第9章串行通信接口

作業(yè):P41——1、2、6、7、820第9章串行通信接口

9.4串行通信接口的任務及組成一、串行通信接口的基本任務1、實現(xiàn)數(shù)據(jù)格式化2、進行串行與并行轉換3、控制數(shù)據(jù)傳輸速率4、進行錯誤檢測5、進行TTL與EIA電平轉換6、提供符合EIA-RS-232C接口標準所要求的信號線二、串行通信接口電路的組成由可編程的串行接口芯片、波特率發(fā)生器、EIA與TTL電平轉換器及地址譯碼電路組成。21第9章串行通信接口

9.5可編程串行接口芯片8251A

8251A是通用同步異步接收發(fā)送器,具有獨立的發(fā)送器和接收器,能以單工、半雙工和全雙工三種方式通信,可用同步和異步方式傳輸信息。通過初始化編程設置串行通信接口芯片的工作方式、波特因子、數(shù)據(jù)幀格式及8251A的工作狀態(tài)。22第9章串行通信接口

1、8251A的引腳8251AD21D32RxD3GND4D45D56D67

D78TxC9WR10CS11C/D12RD13RxRDY142827262524232221201918171615D0D1VccRxCDTRRTS

RESETCLKTxDTxEMPTYCTSSYNDETTxRDYDSR(1)與CPU連接信號D0~D7:數(shù)據(jù)線用于傳數(shù)據(jù)、控制和狀態(tài)信息。RD、WR:讀寫控制控制CPU與I/O端口間的數(shù)據(jù)、命令和狀態(tài)信息的寫入與讀出。CS:片選信號C/D:地址線(A0)

1:CPU訪問命令寄存器或狀態(tài)寄存器

0:CPU訪問數(shù)據(jù)寄存器(2)狀態(tài)信號供CPU查詢或向CPU申請TxRDY:發(fā)送器準備好表示發(fā)送器已準備好,通知CPU可以向8251發(fā)送數(shù)據(jù)。RxRDY:接收器準備好表示8251A已從它的串行輸入端接受了一個字符,通知

CPU取走。TxE:發(fā)送器空SYNDET:同步字符檢出內(nèi)同步:輸出外同步:輸入(3)時鐘信號TxC:發(fā)送器時鐘由外部波特率時鐘發(fā)生器提供。RxC:接收時鐘

由外部波特率時鐘發(fā)生器提供。CLK:工作時鐘由外部提供,在同步方式下,CLK>TxC、

RxC30倍,異步下為

4~5倍。TxD:發(fā)送數(shù)據(jù)線RxD:接收數(shù)據(jù)線(4)面向調(diào)制解調(diào)器信號DTR:數(shù)據(jù)終端準備好表示8251A準備好。DSR:數(shù)據(jù)裝置準備好表示調(diào)制器已準備好,

CPU

通過讀狀態(tài)寄存器的D7位來檢測。RTS:請求發(fā)送通知MODEM,8251A

要發(fā)送。由工作命令字的D5=1來設置。CTS:允許傳送是MODEM對8251A的信號的響應,表示

8251A可以發(fā)送數(shù)據(jù)。一、8251A的引腳和內(nèi)部結構23第9章串行通信接口

2、8251A的內(nèi)部結構數(shù)據(jù)總線緩沖器D0~7讀/寫控制邏輯RESETCLKC/DRDWRCS調(diào)制控制DTRDSRRTSCTS發(fā)送控制TxDTxRDYTxEMPTTxC發(fā)送緩沖器接收控制RxDRxRDYSYNDETRxC接收緩沖器發(fā)送器接收器發(fā)送器:將待發(fā)送的并行數(shù)據(jù)轉換成所要求的幀格式并加上校驗位,然后在

TxC的作用下,由TxD引腳一位一位地串行發(fā)送出去。發(fā)送一幀后,

TxRDY=1,通知CPU發(fā)下一個數(shù)據(jù)。接收器:在接收時鐘RxC作用下接收RxD引腳上的幀格式化串行數(shù)據(jù)并把轉換為并行數(shù)據(jù)。同時將檢錯信息存于狀態(tài)寄存器,供CPU處理。若無錯時,將并行數(shù)據(jù)存入數(shù)據(jù)緩沖器,RxRDY=1,通知CPU取數(shù)。24第9章串行通信接口

操作口地址210H、211H8251A讀/寫操作

CSC/DRDWR0001010100100110

CPU從8251讀數(shù)據(jù)CPU從8251讀狀態(tài)CPU寫數(shù)據(jù)到8251CPU寫命令到8251210H211H210H211H25第9章串行通信接口

二、8251A的命令字和狀態(tài)字1、方式命令字波特率系數(shù)00—同步方式01—異步×110—異步×1611—異步×64Y同步控制X0—內(nèi)同步X1—外同步0X—兩字符1X—單字符N幀控制00—不用01—1個停止位10—1.5停止位11—2個停止位奇偶校驗X0—無校驗01—奇校驗11—偶校驗同步?字符長度00—5位01—6位10—7位11—8位D7D6D5D4D3D2D1D026第9章串行通信接口

例:在某異步通信中,數(shù)據(jù)格式采用8位數(shù)據(jù)位,1位起始位,

2位停止位,偶校驗,波特因子為64,端口地址為210H

和211H,將方式命令字寫入端口中。練習1:在某異步通信中,數(shù)據(jù)格式采用8位數(shù)據(jù)位,1位起止位,奇校驗,內(nèi)部對波特率時鐘進行16分頻,端口地址為210H和211H,將方式命令字寫入端口中。練習2:若8251方式控制寄存器的內(nèi)容11111110B(FEH)時,那么異步字符長度,奇偶校驗類型和停止位數(shù)目各是多少?練習3:規(guī)定8251A內(nèi)步方式,同步字符為2個,用奇校驗,

7個數(shù)據(jù)位。寫出方式命令字。27第9章串行通信接口

2、工作命令字D7D6D5D4D3D2D1D0EHIRRTSERSBRKRXEDTRTXEN確定8251A的實際操作,迫使8251A處于某種工作狀態(tài),以便接收或發(fā)送數(shù)據(jù)。搜索同步字符發(fā)送允許數(shù)據(jù)終端準備好接收允許發(fā)中止字符錯誤標志復位發(fā)送請求內(nèi)部復位例:允許8251A的發(fā)送器和接收器工作,并實現(xiàn)差錯復位的功能。寫出8251A的工作命令字28第9章串行通信接口

3、狀態(tài)字D7D6D5D4D3D2D1D0DSRSYNDETFEOEPETXERXTDYTXRDYCPU可通過IN指令獲取狀態(tài)寄存器的內(nèi)容,來了解8251A的當前工作狀態(tài)。數(shù)據(jù)設備準備好發(fā)送準備好接收準備好發(fā)送器空奇偶錯溢出錯格式錯同步檢測例:檢查8251A是否接收到一個字符,若接收到,存于BL寄存器。寫出完成上述功能的程序段(210H、211H)29第9章串行通信接口

例:檢查8251A是否接收到一個字符,若接收到,存于BL寄存器。寫出完成上述功能的程序段。SCAN:INAL,211HTESTAL,02HJZSCANINAL,210HMOVBL,AL30第9章串行通信接口

三、8251A初始化流程圖8251A初始化編程步驟:(1)向控制口寫入1~3個0;(2)向控制口寫入40H,使芯片內(nèi)部復位;(3)向控制口寫入方式命令字,設工作方式、波特因子和幀數(shù)據(jù)結構;(4)向控制口寫入工作命令字。系統(tǒng)復位寫入方式命令字寫入第一個同步字符寫入第二個同步字符寫入工作命令字數(shù)據(jù)傳輸YYYNN異步單同復位N31第9章串行通信接口

上圖所示電路利用8251實現(xiàn)CPU與I/O

的操作,下面程序完成的功能是:連續(xù)地從RS-232C接口讀取串行字符,將接收的字符取反,然后將其送回RS-232C接口。接收和發(fā)送的每個字符的長度為8位,使用2個停止位,無奇偶校驗。將下面的程序段填寫完整。Clock=19.2kHzTxDRxDresetCSA9A8A2IOWIORA0RDWRC/D=1D0~D7與門A7A6A5A4A3A132第9章串行通信接口

INT8251:MOVAL,();寫工作命令字

MOVDX,()

OUTDX,ALMOVAL,();寫方式命令字

OUTDX,ALMOVAL,();寫工作命令字

OUTDX,ALCHRRX:INAL,DX;檢查是否接收到一個字符

RORAL,1RORAL,1JNCCHKRXMOVDX,()INAL,DX;若接收到一個字符

NOTAL;把接收到的字符求反

MOVBL,AL;暫存CHKTX:MOVDX,()INAL,DX;檢查是否能發(fā)送字符

RORAL,1JNCCHKTX;若不能發(fā)送返回CHKTXMOVAL,BL;發(fā)送已求反的字符

MOVDX,()

OUTDX,ALJMPCHKRX211H15H210H211H210H0EEH40H33第9章串行通信接口

四、8251A串行通信舉例1AB+5V8MHZ2×393Q18253GATE2CLK2OUT22×3938251D0~7C/DA0RxCTxCCSCSI/O口地址譯碼器208H~20FH210H~217H+5VTxDRxD34第9章串行通信接口

在主機屏幕上顯示10行測試電文:THEQUICKBROWNFOXJUMPSOVERLAZYDOG(1)采用查詢方式,完成電文的發(fā)送和接收;(2)幀數(shù)據(jù)格式中包括8個數(shù)據(jù)位,1個停止信,無校驗傳送,波特因子取16;(3)使用8251A完成數(shù)據(jù)的發(fā)送和接收,無聯(lián)絡信號,差錯復位;(4)2號計數(shù)器工作在方式波發(fā)生器方式,計數(shù)初始值為104;為下面的程序段的每條語句標明注釋。35第9章串行通信接口

DATASEGMENTMESGDB‘TEST8251TXD---RXD’,0DH,0AH,’$’TEXTDB‘THEQUICKBROWNFOXJUMPSOVERLAZYDOG’,0DH,0AHLENSEQU$-TEXTERRORDB0DH,0AH,‘8251BAD!$’C_8251EQU211HD_8251EQU210HC_8253EQU20BHD_8253EQU20AHDATAENDSCODESEGMENTASSUMECS:CODE,DS:DATABEG:MOVAX,DATAMOVDX,AXCALLI8253CALLI8251MOVAH,()MOVDX,OFFSETMESG936第9章串行通信接口

INT21HMOVCH,AGAIN:MOVCL,LENSMOVBX,OFFSETTEXTTSCAN:MOVDX,C_8251INAL,DXTESTAL,()JZTSCANSEND:MOVAL,[BX]MOVDX,D_8251OUTDX,ALMOVSI,0RSCAN:MOVDX,C_8251INAL,DXTESTAL,()JNZREVEICEJMPNEXT

REVEICE:MOVDX,D_8251INAL,DXMOVAH,0EHINT10H;()INCBXDECCLJNZTSCANDECCHJNZAGAINJMPEXITNEXT:MOVAH,9MOVDX,OFFSETERRORINT21HEXIT:MOVAH,4CHINT21H

1001H02H37第9章串行通信接口

I8253PROCMOVDX,C_8253MOVAL,0B6HOUTDX,ALMOVDX,D_8253MVOAL,104OUTDX,ALMOVAL,AHOUTDX,ALRETI8253ENDPDELAYPROCPUSHCXPUSHDXMOVAH,86HMOVCX,0MOVDX,1000INT15HPOPDXPOPCXRETDELAYENDPI8251PROCMOVCX,3AGA:MOVAL,()MOVDX,C_8251OUTDX,ALCALLDELAYLOOPAGAMOVAL,()OUTDX,ALCALLDELAYMOVAL,()OUTDX,ALCALLDELAYMOVAL,()OUTDX,ALRETI8251ENDPCODEENDS

ENDBEG040H4EH15H38第9章串行通信接口

8251A串行通信舉例2AB+5V8MHZ2×393Q28253GATE2CLK2OUT22×3938251D0~7C/DA0RxCTxCCSCSI/O口地址譯碼器208H~20FH210H~217H+5VTxDRxD39第9章串行通信接口

用8253計數(shù)器產(chǎn)生8251的發(fā)送和接收時鐘,TxD

RxD連在一起(自發(fā)自收)。編程:從鍵盤輸入一個字符,將其ASCII碼加1后發(fā)送出去,再接收回來在屏幕上顯示,實現(xiàn)自發(fā)自收。

8253計數(shù)器的計數(shù)初值=時鐘頻率/(波特率×波特率因子)時鐘頻率接

Q2,波特率選1200,波特率因子選16,計數(shù)器初值為52。40第9章串行通信接口

DATASEGMENTMES1DB‘YOUCANPLAYAKEY!’,0DH,0AH,‘$’DATAENDSCODESEGMENTASSUMECS:CODE,DS:DATAOUT1PROCNEAROUTDX,ALPUSHCXMOVCX,400HGG:LOOPGGPOPCXRETOUT1ENDPSTART:MOVAX,DATAMOVDS,AXMOVDX,20BH;(MOVAL,96HOUTDX,AL)設置8253計數(shù)器2工作方式,計數(shù)器0工作在方式3,只寫計數(shù)初始值低8位,二進制計數(shù)。41第9章串行通信接口

MOVDX,20AH;(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論