一、遠距離通信 第1和第2中情況是屬于遠距離通信(傳輸距離大于15m的通信)的例子,故一般要加調制解調器MODEM,因此使用的信號線較多。注意:在以下各圖中,DTE信號為RS-232-C信號,DTE與計算機間的電平轉換電路未畫出。 1、采用Modem(DCE)和電話網通信時的信號連接: 若在雙方MODEM之間采用普通電話交換線進行通信,除了需要2~8號信號線外還要增加RI(22號)和DTR(20號)兩個信號線進行聯絡,如圖1所示。  圖1
DSR、DTR:數傳機(DCE)準備好、數據終端(DTE)準備好,只表示設備本身可用。 首先,通過電話機拔號呼叫對方,電話交換臺向對方發出拔號呼叫信號,當對方DCE收到該信號后,使RI(振鈴信號)有效,通知DTE,已被呼叫。當對方“摘機”后,兩方建立了通信鏈路。 若計算機要發送數據至對方,首先通過接口電路(DTE)發出RTS(請求發送)信號。此時,若DCE(Modem)允許傳送,則向DTE回答CTS(允許發送)信號。一般可直接將RTS/CTS接高電平,即只要通信鏈路已建立,就可傳送信號。(RTS/CTS可只用于半雙工系統中作發送方式和接收方式的切換。 當DTE獲得CTS信號后,通過TXD線向DCE發出串行信號,DCE(Modem)將這些數字信號調制成模擬信號(又稱載波信號),傳向對方。 計算機向DTE“數據輸出寄存器”傳送新的數據前,應檢查Modem狀態和數據輸出寄存器為空。當對方的DCE收到載波信號后,向對方的DTE發出DCD信號(數據載波檢出),通知其DTE準備接收,同時,將載波信號解調為數據信號,從RXD線上送給DTE,DTE通過串行接收移位寄存器對接收到的位流進行移位,當收到1個字符的全部位流后,把該字符的數據位送到數據輸入寄存器,CPU可以從數據輸入寄存器讀取字符。 2、采用專用電話線通信: 在通信雙方的MODEM之間采用電話線進行通信,則只要使用2~8號信號線進行聯絡與控制。不需要電話機、振鈴信號RI和DTR信號,其信號線的連接如圖2那樣。  圖2
二、近距離通信: 當通信距離較近時,可不需要Modem,通信雙方可以直接連接,這種情況下,只需使用少數幾根信號線。最簡單的情況,在通信中根本不需要RS-232C的控制聯絡信號,只需三根線(發送線、接收線、信號地線)便可實現全雙工異步串行通信,即是這里要討論的第一種情況。 無Modem時,最大通信距離按如下方式計算: RS-232C標準規定:當誤碼率小于4%時,要求導線的電容值應小于2500PF。對于普通導線,其電容值約為170PF/M。則允許距離L=2500PF/(170PF/M)=15M 這一距離的計算,是保守的,實際應用中,當使用9600bps,普通雙絞屏蔽線時,距離可達30~35米。 1、零Modem 的最簡連線(3線制) 圖3是零MODEM方式的最簡單連接(即三線連接),圖中的2號線與3號線交叉連接是因為在直連方式時,把通信雙方都當作數據終端設備看待,雙方都可發也可收。在這種方式下,通信雙方的任何一方,只要請求發送RTS有效和數據終端準備好DTR有效就能開始發送和接收。  圖3
(1)RTS與CTS互聯:只要請求發送,立即得到允許 (2)DTR與DSR互聯:只要本端準備好,認為本端立即可以接收(DSR、數傳機準備好)。 2、零Modem標準連接: 如果想在直接連接時,而又考慮到RS-232C的聯絡控制信號,則采用零MODEM方式的標準連接方法,其通信雙方信號線安排如下1-2-3-4-5順序所演示的那樣。 無Modem的標準聯線(7線制)如圖所示: 從中可以看出,RS-232C接口標準定義的所有信號線都用到了,并且是按照DTE和DCE之間信息交換協議的要求進行連接的,只不過是把DTE自己發出的信號線送過來,當作對方DCE發來的信號,因此,又把這種連接稱為雙叉環回接口。 雙方的握手信號關系如下(注:甲方乙方并未在圖中標出): (1)當甲方的DTE準備好,發出DTR信號,該信號直接聯至乙方的RI(振鈴信號)和DSR(數傳機準備好)。即只要甲方準備好,乙方立即產生呼叫(RI)有效,并同時準備好(DSR)。盡管此時乙方并不存在DCE(數傳機)。 (2)甲方的RTS和CTS相連,并與乙方的DCD互連。即:一旦甲方請求發送(RTS),便立即得到允許(CTS),同時,使乙方的DCD有效,即檢測到載波信號。 (3)甲方的TXD與乙方的RXD相連,一發一收。  圖4
 圖5
|