RS232 協(xié)議簡介
RS-232-C
本文引用地址:http://butianyuan.cn/article/201612/329560.htmRS-232-C是美國電子工業(yè)協(xié)會EIA(Electronic Industry Association)制定的一種串行物理接口標準。RS是英文“推薦標準”的縮寫,232為標識號,C表示修改次數(shù)。RS-232-C總線標準設(shè)有25條信號線,包括一個主通道和一個輔助通道。在多數(shù)情況下主要使用主通道,對于一般雙工通信,僅需幾條信號線就可實現(xiàn),如一條發(fā)送線、一條接收線及一條地線。
RS-232-C標準規(guī)定的數(shù)據(jù)傳輸速率為每秒50、75、100、150、300、600、1200、2400、4800、9600、19200波特。
RS-232-C標準規(guī)定,驅(qū)動器允許有2500pF的電容負載,通信距離將受此電容限制,例如,采用150pF/m的通信電纜時,最大通信距離為15m;若每米電纜的電容量減小,通信距離可以增加。傳輸距離短的另一原因是RS-232屬單端信號傳送,存在共地噪聲和不能抑制共模干擾等問題,因此一般用于20m以內(nèi)的通信。
串行通信接口標準經(jīng)過使用和發(fā)展,目前已經(jīng)有幾種。但都是在RS-232標準的基礎(chǔ)上經(jīng)過改進而形成的。所以,以RS-232C為主來討論。RS-323C標準是美國EIA(電子工業(yè)聯(lián)合會)與BELL等公司一起開發(fā)的1969年公布的通信協(xié)議。它適合于數(shù)據(jù)傳輸速率在0~20000b/s范圍內(nèi)的通信。這個標準對串行通信接口的有關(guān)問題,如信號線功能、電器特性都作了明確規(guī)定。由于通行設(shè)備廠商都生產(chǎn)與RS-232C制式兼容的通信設(shè)備,因此,它作為一種標準,目前已在微機通信接口中廣泛采用。
在討論RS-232C接口標準的內(nèi)容之前,先說明兩點:
首先,RS-232-C標準最初是遠程通信連接數(shù)據(jù)終端設(shè)備DTE(Data Terminal Equipment)與數(shù)據(jù)通信設(shè)備DCE(Data Communication Equipment)而制定的。因此這個標準的制定,并未考慮計算機系統(tǒng)的應(yīng)用要求。但目前它又廣泛地被借來用于計算機(更準確的說,是計算機接口)與終端或外設(shè)之間的近端連接標準。顯然,這個標準的有些規(guī)定及和計算機系統(tǒng)是不一致的,甚至是相矛盾的。有了對這種背景的了解,我們對RS-232C標準與計算機不兼容的地方就不難理解了
其次,RS-232C標準中所提到的“發(fā)送”和“接收”,都是站在DTE立場上,而不是站在DCE的立場來定義的。由于在計算機系統(tǒng)中,往往是CPU和I/O設(shè)備之間傳送信息,兩者都是DTE,因此雙方都能發(fā)送和接收。
一、RS-232-C
RS-232C標準(協(xié)議)的全稱是EIA-RS-232C標準,其中EIA(Electronic Industry Association)代表美國電子工業(yè)協(xié)會,RS(recommeded standard)代表推薦標準,232是標識號,C代表RS232的最新一次修改(1969),在這之前,有RS232B、RS232A。。它規(guī)定連接電纜和機械、電氣特性、信號功能及傳送過程。常用物理標準還有有RS-232-C、RS-422-A、RS-423A、RS-485。 這里只介紹RS-232-C(簡稱232,RS232)。 例如,目前在IBM PC機上的COM1、COM2接口,就是RS-232C接口。
1.電氣特性
EIA-RS-232C對電器特性、邏輯電平和各種信號線功能都作了規(guī)定。
在TxD和RxD上:邏輯1(MARK)=-3V~-15V
邏輯0(SPACE)=+3~+15V
在RTS、CTS、DSR、DTR和DCD等控制線上:
信號有效(接通,ON狀態(tài),正電壓)=+3V~+15V
信號無效(斷開,OFF狀態(tài),負電壓)=-3V~-15V
以上規(guī)定說明了RS-323C標準對邏輯電平的定義。對于數(shù)據(jù)(信息碼):邏輯“1”(傳號)的電平低于-3V,邏輯“0”(空號)的電平高于+3V;對于控制信號;接通狀態(tài)(ON)即信號有效的電平高于+3V,斷開狀態(tài)(OFF)即信號無效的電平低于-3V,也就是當(dāng)傳輸電平的絕對值大于3V時,電路可以有效地檢查出來,介于-3~+3V之間的電壓無意義,低于-15V或高于+15V的電壓也認為無意義,因此,實際工作時,應(yīng)保證電平在±(3~15)V之間。
EIA-RS-232C與TTL轉(zhuǎn)換:EIA-RS-232C是用正負電壓來表示邏輯狀態(tài),與TTL以高低電平表示邏輯狀態(tài)的規(guī)定不同。因此,為了能夠同計算機接口或終端的TTL器件連接,必須在EIA-RS-232C與TTL電路之間進行電平和邏輯關(guān)系的變換。實現(xiàn)這種變換的方法可用分立元件,也可用集成電路芯片。目前較為廣泛地使用集成電路轉(zhuǎn)換器件,如MC1488、SN75150芯片可完成TTL電平到EIA電平的轉(zhuǎn)換,而MC1489、SN75154可實現(xiàn)EIA電平到TTL電平的轉(zhuǎn)換。MAX232芯片可完成TTL←→EIA雙向電平轉(zhuǎn)換。
2、連接器的機械特性:
連接器:由于RS-232C并未定義連接器的物理特性,因此,出現(xiàn)了DB-25、DB-15和DB-9各種類型的連接器,其引腳的定義也各不相同。下面分別介紹兩種連接器。
(1)DB-25: PC和XT機采用DB-25型連接器。DB-25連接器定義了25根信號線,分為4組:
①異步通信的9個電壓信號(含信號地SG)2,3,4,5,6,7,8,20,22
②20mA電流環(huán)信號 9個(12,13,14,15,16,17,19,23,24)
③空6個(9,10,11,18,21,25)
④保護地(PE)1個,作為設(shè)備接地端(1腳)
DB-25型連接器的外形及信號線分配如圖3所示。注意,20mA電流環(huán)信號僅IBM PC和IBM PC/XT機提供,至AT機及以后,已不支持。
(2)DB-9連接器
在AT機及以后,不支持20mA電流環(huán)接口,使用DB-9連接器,作為提供多功能I/O卡或主板上COM1和COM2兩個串行接口的連接器。它只提供異步通信的9個信號。DB-25型連接器的引腳分配與DB-25型引腳信號完全不同。因此,若與配接DB-25型連接器的DCE設(shè)備連接,必須使用專門的電纜線。
電纜長度:在通信速率低于20kb/s時,RS-232C所直接連接的最大物理距離為15m(50英尺)。
最大直接傳輸距離說明:RS-232C標準規(guī)定,若不使用MODEM,在碼元畸變小于4%的情況下,DTE和DCE之間最大傳輸距離為15m(50英尺)??梢娺@個最大的距離是在碼元畸變小于4%的前提下給出的。為了保證碼元畸變小于4%的要求,接口標準在電氣特性中規(guī)定,驅(qū)動器的負載電容應(yīng)小于2500pF。
3、RS-232C的接口信號
RS-232C規(guī)標準接口有25條線,4條數(shù)據(jù)線、11條控制線、3條定時線、7條備用和未定義線,常用的只有9根,它們是
(1)聯(lián)絡(luò)控制信號線:
數(shù)據(jù)裝置準備好(Data set ready-DSR)——有效時(ON)狀態(tài),表明MODEM處于可以使用的狀態(tài)。
數(shù)據(jù)終端準備好(Data set ready-DTR)——有效時(ON)狀態(tài),表明數(shù)據(jù)終端可以使用。
這兩個信號有時連到電源上,一上電就立即有效。這兩個設(shè)備狀態(tài)信號有效,只表示設(shè)備本身可用,并不說明通信鏈路可以開始進行通信了,能否開始進行通信要由下面的控制信號決定。
請求發(fā)送(Request to send-RTS)——用來表示DTE請求DCE發(fā)送數(shù)據(jù),即當(dāng)終端要發(fā)送數(shù)據(jù)時,使該信號有效(ON狀態(tài)),向MODEM請求發(fā)送。它用來控制MODEM是否要進入發(fā)送狀態(tài)。
允許發(fā)送(Clear to send-CTS)——用來表示DCE準備好接收DTE發(fā)來的數(shù)據(jù),是對請求發(fā)送信號RTS的響應(yīng)信號。當(dāng)MODEM已準備好接收終端傳來的數(shù)據(jù),并向前發(fā)送時,使該信號有效,通知終端開始沿發(fā)送數(shù)據(jù)線TxD發(fā)送數(shù)據(jù)。
這對RTS/CTS請求應(yīng)答聯(lián)絡(luò)信號是用于半雙工MODEM系統(tǒng)中發(fā)送方式和接收方式之間的切換。在全雙工系統(tǒng)中作發(fā)送方式和接收方式之間的切換。在全雙工系統(tǒng)中,因配置雙向通道,故不需要RTS/CTS聯(lián)絡(luò)信號,使其變高。
接收線信號檢出(Received Line detection-RLSD)——用來表示DCE已接通通信鏈路,告知DTE準備接收數(shù)據(jù)。當(dāng)本地的MODEM收到由通信鏈路另一端(遠地)的MODEM送來的載波信號時,使RLSD信號有效,通知終端準備接收,并且由MODEM將接收下來的載波信號解調(diào)成數(shù)字兩數(shù)據(jù)后,沿接收數(shù)據(jù)線RxD送到終端。此線也叫做數(shù)據(jù)載波檢出(Data Carrier dectection-DCD)線。
振鈴指示(Ringing-RI)——當(dāng)MODEM收到交換臺送來的振鈴呼叫信號時,使該信號有效(ON狀態(tài)),通知終端,已被呼叫。
(2)數(shù)據(jù)發(fā)送與接收線:
發(fā)送數(shù)據(jù)(Transmitted data-TxD)——通過TxD終端將串行數(shù)據(jù)發(fā)送到MODEM,(DTE→DCE)。
接收數(shù)據(jù)(Received data-RxD)——通過RxD線終端接收從MODEM發(fā)來的串行數(shù)據(jù),(DCE→DTE)。
(3)地線
有兩根線SG、PG——信號地和保護地信號線,無方向。
上述控制信號線何時有效,何時無效的順序表示了接口信號的傳送過程。例如,只有當(dāng)DSR和DTR都處于有效(ON)狀態(tài)時,才能在DTE和DCE之間進行傳送操作。若DTE要發(fā)送數(shù)據(jù),則預(yù)先將DTR線置成有效(ON)狀態(tài),等CTS線上收到有效(ON)狀態(tài)的回答后,才能在TxD線上發(fā)送串行數(shù)據(jù)。這種順序的規(guī)定對半雙工的通信線路特別有用,因為半雙工的通信才能確定DCE已由接收方向改為發(fā)送方向,這時線路才能開始發(fā)送。
2個數(shù)據(jù)信號:發(fā)送TXD;接收RXD。
1個信號地線:SG。
6個控制信號:
數(shù)傳機(即modem)準備好,Data Set Ready.
數(shù)據(jù)終端(DTE,即微機接口電路,如Intel8250/8251,16550)準備好,Data Terminal Ready。
DTE請求DCE發(fā)送(Request To Send)。
DCE允許DTE發(fā)送(Clear To Send),該信號是對RTS信號的回答。
DCD數(shù)據(jù)載波檢出,Data Carrier Detection當(dāng)本地DCE設(shè)備(Modem)收到對方的DCE設(shè)備送來的載波信號時,使DCD有效,通知DTE準備接收, 并且由DCE將接收到的載波信號解調(diào)為數(shù)字信號, 經(jīng)RXD線送給DTE。
振鈴信號 Ringing當(dāng)DCE收到交換機送來的振鈴呼叫信號時,使該信號有效,通知DTE已被呼叫。
總結(jié):RS-232數(shù)據(jù)接發(fā)方式為全雙工,不過傳輸距離較短,一般為15m,不能應(yīng)用于數(shù)據(jù)傳輸距離較長的系統(tǒng)中。
RS232缺點:由于RS-232-C接口標準出現(xiàn)較早,難免有不足之處,主要有以下四點:
(1) 接口的信號電平值較高,易損壞接口電路的芯片,又因為與TTL 電平不兼容故需使用電平轉(zhuǎn)換電路方能與TTL電路連接。
(2) 傳輸速率較低,在異步傳輸時,波特率為20Kbps。
(3) 接口使用一根信號線和一根信號返回線而構(gòu)成共地的傳輸形式, 這種共地傳輸容易產(chǎn)生共模干擾,所以抗噪聲干擾性弱。
(4) 傳輸距離有限,最大傳輸距離標準值為50英尺,實際上也只能用在50米左右。
評論