RS232接口

RS232接口

串行通信接口
RS-232是現在主流的串行通信接口之一。[1]RS-232是美國電子工業聯盟(EIA)制定的串行數據通信的接口标準,原始編号全稱是EIA-RS-232(簡稱232,RS232)。它被廣泛用于計算機串行接口外設連接。RS-232C标準中EIA(ElectronicIndustry Association)代表美國電子工業聯盟,RS(Recommended standard)代表推薦标準,232是标識号,C代表RS232的第三次修改(1969年),在這之前,還有RS232B、RS232A。
  • 中文名:RS-232接口
  • 外文名:
  • 别名:
  • 屬于:通信接口
  • 适用:美國RS-232标準
  • 應用:計算機

簡介

RS232接口是1970年由美國電子工業協會(EIA)聯合貝爾系統、調制解調器廠家及計算機終端生産廠家共同制定的用于串行通訊的标準。

它的全名是“數據終端設備(DTE)和數據通訊設備(DCE)之間串行二進制數據交換接口技術标準”該标準規定采用一個25個腳的DB25連接器,對連接器的每個引腳的信号内容加以規定,還對各種信号的電平加以規定。DB25的串口一般隻用到的管腳隻有2(RXD)、3(TXD)、7(GND)這三個,随着設備的不斷改進,現在DB25針很少看到了,代替他的是DB9的接口,DB9所用到的管腳比DB25有所變化,是2(RXD)、3(TXD)、5(GND)這三個。因此現在都把RS232接口叫做DB9。

由于RS232接口标準出現較早,難免有不足之處,主要有以下四點:

(1)接口的信号電平值較高,易損壞接口電路的芯片,又因為與TTL電平不兼容故需使用電平轉換電路方能與TTL電路連接。

(2)傳輸速率較低,在異步傳輸時,波特率為20Kbps;因此在“南方的老樹51CPLD開發闆”中,綜合程序波特率隻能采用19200,也是這個原因。

(3)接口使用一根信号線和一根信号返回線而構成共地的傳輸形式,這種共地傳輸容易産生共模幹擾,所以抗噪聲幹擾性弱。

(4)傳輸距離有限,最大傳輸距離标準值為50英尺,實際上也隻能用在50米左右。

分類

DB9

1DCD載波檢測

2RXD接收數據

3TXD發送數據

4DTR數據終端準備好

5SGND信号地線

6DSR數據準備好

7RTS請求發送

8CTS清除發送

9RI振鈴提示

DB25

1屏蔽地線

2TXD發送數據

3RXD接收數據

4RTS請求發送

5CTS允許發送

6DSR數據準備好

7SG信号地

8DCD載波檢測

9發送返回(+)

10未定義

11數據發送(-)

12~17未定義

18數據接收(+)

19未定義

20數據終端準備好DTR

21未定義

22振鈴RI

23~24未定義

25接收返回(-)标準的細節

DB25轉DB9

在RS-232标準中,字符是以一串行的比特串來一個接一個的串行(serial)方式傳輸,優點是傳輸線少,配線簡單,傳送距離可以較遠。最常用的編碼格式是異步起停(asynchronousstart-stop)格式,它使用一個起始比特後面緊跟7或8個數據比特(bit),然後是可選的奇偶校驗比特,最後是一或兩個停止比特。所以發送一個字符至少需要10比特,帶來的一個好的效果是使全部的傳輸速率,發送信号的速率以10劃分。一個最平常的代替異步起停方式的是使用高級數據鍊路控制協議(HDLC)。

在RS-232标準中定義了邏輯1和邏輯0電壓級數,以及标準的傳輸速率和連接器類型。信号大小在正的和負的3-15v之間。RS-232規定接近0的電平是無效的,邏輯1規定為負電平,有效負電平的信号狀态稱為傳号marking,它的功能意義為OFF,邏輯0規定為正電平,有效正電平的信号狀态稱為空号spacing,它的功能意義為ON。根據設備供電電源的不同,±5、±10、±12和±15這樣的電平都是可能的。

mark和space是從電傳打字機中來的術語。電傳打字機原始的通信是一個簡單的中斷直流電路模式,類似與圓轉盤電話撥号的中的信号。Marking狀态是指電路是斷開的,spacing狀态就是指電路是接通的。一個space就表明有一個字符要開始發送了,相應的停止的時候,停止位就是marking。當線路中斷的時候,電傳打字機不打印任何有效字符,周期性的連續收到全0信号

RS-232設計之初是用來連接調制解調器做傳輸之用,也因此它的腳位意義通常也和調制解調器傳輸有關。RS-232的設備可以分為數據終端設備(DTE,DataTerminalEquipment,Forexample,PC)和數據通信設備(DCE,DataCommunicationEquipment)兩類,這種分類定義了不同的線路用來發送和接受信号。一般來說,計算機和終端設備有DTE連接器,調制解調器和打印機有DCE連接器。但是這麼說并不是總是嚴格正确的,用配線分接器測試連接,或者用試誤法來判斷電纜是否工作,常常需要參考相關的文件說明。

RS-232指定了20個不同的信号連接,由25個D-sub(微型D類)管腳構成的DB-25連接器。很多設備隻是用了其中的一小部分管腳,出于節省資金和空間的考慮不少機器采用較小的連接器,特别是9管腳的D-sub或者是DB-9型連接器被廣泛使用絕大多數自IBM的AT機之後的PC機和其他許多設備上。

DB-25和DB-9型的連接器在大部分設備上是雌型,但不是所有的都是這樣。最近,8管腳的RJ-45型連接器變得越來越普遍,盡管它的管腳分配相差很大。EIA/TIA561标準規定了一種管腳分配的方法,但是由DaveYost發明的被廣泛使用在Unix計算機上的Yost串連設備配線标準("YostSerialDeviceWiringStandard")以及其他很多設備都沒有采用上述任一種連線标準。

下表中列出的是被較多使用的RS-232中的信号和管腳分配:

DB9Male(PinSide)DB9Female(PinSide)

--------------------------

12345/54321/

6789/9876/

------------------信号DB-25DB-9EIA/TIA561Yost

公共接地7544,5

發送數據(TD)2363

接受數據(RD)3256

數據終端準備(DTR)20432

數據準備好(DSR)6617

請求發送(RTS)4781

清除發送(CTS)5878

數據載波檢測(DCD)8127

振鈴指示(RI)2291-

TXDDTE->DCEDTESENDDATA

RXDDCE->DTEDTERECEIVEDATA

RTSDTE->DCEDTEREQUESTSEND

CTSDCE->DTEACKTODTE'SRTS

DSRDCE->DTEDCEISREADY

GND

DCDDCE->DTEDCDETECTED

DTRDTE->DCEDTEISREADY

RIDCE->DTERINGINDICATION

信号的标注是從DTE設備的角度出發的,TD、DTR和RTS信号是由DTE産生的,RD、DSR、CTS、DCD和RI信号是由DCE産生的。接地信号是所有連接都公共的,在Yost的标準中接地信号外部有兩個管腳事實上是同一個信号。如果兩個通信設備的距離相差的很遠或者是有兩個不同的供電系統供電,那麼地信号在兩個設備間會不一樣,從而導緻通信失敗,跟蹤描述這樣的情形是很困難的。

電纜

由于RS-232實現中的各種不同和矛盾,要決定使用哪個合适的電纜來連接兩個通信設備不是一件非常容易的事。用同一種類型的連接器來連接DCE和DTE設備需要直接的電纜還要有合适的終點。凹凸轉換器被用于電纜和連接器間解決性别失配問題。用不同連接器來連接設備需要根據上表,用不同的電纜來連接相應的管腳。電纜一端9管腳,另一端25管腳是很普通的,生産以RJ-45型為連接器的設備廠家通常都會提供DB-25或者DB-9型接頭的電纜(有時候則是接頭可交換的電纜,可供多種設備工作)。

連接兩個DTE設備需要一個虛拟調制解調器來充當DCE交換相應的信号(TD-RD,DTR-DSR,andRTS-CTS)。這個可以由單獨的設備加上兩根電纜或者用一根電纜來完成。Yost标準裡虛拟調制解調器是一個全反線,它把一個端口的1到8号管腳翻轉和另一個端口的8到1号管腳相連接(不要和以太網的反絞線混淆,以太網反絞線接線是非常不同的)。

為了配置和診斷RS-232電纜,可以采用配線分接器。配線分接器有凹凸RS-232連接器,可以内嵌式的連接線路,而且提供對應每個管腳的顯示燈,還可以各種配置方式連接管腳。

RS-232電纜和很多連接器都可以在電子産品的商店找到,電纜可能是3到25個管腳的,典型應用的是4到6個管腳的。平RJ(電話線類型)電纜可以和專門的RJ-RS-232連接器一起使用,後者是最容易配置的連接器。

雙向接口能夠隻需要3根線制作是因為RS-232的所有信号都共享一個公共接地。非平衡電路使得RS-232非常的容易受兩設備間基點電壓偏移的影響。對于信号的上升期和下降期,RS-232也隻有相對較差的控制能力,很容易發生串話的問題。RS-232被推薦在短距離(15m以内)間通信。由于非對稱電路的關系,RS-232接口電纜通常不是由雙絞線制作的。

有些設備也需要“握手”協議,例如,20号管腳一般用于指示“設備就緒”。管腳也可是跳過的或者從連接器接回。例如設備A的一個管腳發送信号詢問對方“你準備好了嗎?”假如設備B沒有發送這樣的指示信号。公共的握手管腳為20、8、4和6。

設置

串行通信在軟件設置裡需要做多項設置,最常見的設置包括波特率(BaudRate)、奇偶校驗(ParityCheck)和停止位(StopBit)。

波特率(又稱鮑率):是指從一設備發到另一設備的波特率,即每秒鐘多少比特bitspersecond(bit/s)。典型的波特率是300,1200,2400,9600,15200,19200等bit/s。一般通信兩端設備都要設為相同的波特率,但有些設備也可以設置為自動檢測波特率。

奇偶校驗(Parity:是用來驗證數據的正确性。奇偶校驗一般不使用,如果使用,那麼既可以做奇校驗(OddParity)也可以做偶校驗(EvenParity)。奇偶校驗是通過修改每一發送字節(也可以限制發送的字節)來工作的。如果不作奇偶校驗,那麼數據是不會被改變的。在偶校驗中,因為奇偶校驗位會被相應的置1或0(一般是最高位或最低位),所以數據會被改變以使得所有傳送的數位(含字符的各數位和校驗位)中“1”的個數為偶數;在奇校驗中,所有傳送的數位(含字符的各數位和校驗位)中“1”的個數為奇數。

奇偶校驗可以用于接受方檢查傳輸是否發送生錯誤——如果某一字節中“1”的個數發生了錯誤,那麼這個字節在傳輸中一定有錯誤發生。如果奇偶校驗是正确的,那麼要麼沒有發生錯誤要麼發生了偶數個的錯誤。如果用戶選擇數據長度為8位,則因為沒有多餘的比特可被用來作為同比特,因此就叫做“無位元(NonParity)”。

停止位:是在每個字節傳輸之後發送的,它用來幫助接受信号方硬件重同步。

RS-232在傳送數據時,并不需要另外使用一條傳輸線來傳送同步信号,就能正确的将數據順利傳送到對方,因此叫做“異步傳輸”,簡稱UART(UniversalAsynchronousReceiverTransmitter),不過必須在每一筆數據的前後都加上同步信号,把同步信号與數據混和之後,使用同一條傳輸線來傳輸。比如數據11001010被傳輸時,數據的前後就需加入Start(Low)以及Stop(High)等兩個比特,值得注意的是,Start信号固定為一個比特,但Stop停止比特則可以是1、1.5或者是2比特,由使用RS-232的傳送與接收兩方面自行選擇,但需注意傳送與接受兩者的選擇必須一緻。在串行通信軟件設置中D/P/S是常規的符号表示。

8/N/1(非常普遍)表明8bit數據,沒有奇偶校驗,1bit停止位。數據位可以設置為7、8或者9,奇偶校驗位可以設置為無(N)、奇(O)或者偶(E),奇偶校驗可以使用數據中的比特(bit),所以8/E/1就表示一共8位數據位,其中一位用來做奇偶校驗位。停止位可以是1、1.5或者2位的(1.5是用在波特率為60wpm的電傳打字機上的)。

流量控制:當需要發送握手信号或數據完整性檢測時需要制定其他設置。公用的組合有RTS/CTS,DTR/DSR或者XON/XOFF(實際中不使用連接器管腳而在數據流内插入特殊字符)。

接受方把XON/XOFF信号發給發送方來控制發送方何時發送數據,這些信号是與發送數據的傳輸方向相反的。XON信号告訴發送方接受方準備好接受更多的數據,XOFF信号告訴發送方停止發送數據直到知道接受方再次準備好。XON/XOFF一般不贊成使用,推薦用RTS/CTS控制流來代替它們。

XON/XOFF是一種工作在終端間的帶内方法,但是必須兩端都支持這個協議,而且在突然啟動的時候會有混淆的可能。XON/XOFF可以工作于3線的接口。RTS/CTS最初是設計為電傳打字機和調制解調器半雙工協作通信的,每次它隻能一方調制解調器發送數據。終端必須發送請求發送信号然後等到調制解調器回應清除發送信号。盡管RTS/CTS是通過硬件達到握手,但它有自己的優勢。

ASR(AutomaticSendReceive)電傳打字機有一個紙帶讀卡機。當讀卡機讀數據的時候字符被發提交去。ASR電傳打字機裡收到一個XOFF字符就關掉紙帶讀卡機收到一個XON字符就啟動紙帶讀卡機。當遠端系統有必要降低發送放的速率時就發出XOFF。在原始的系統中,消息要用紙帶事先準備好,傳送的時間才能被縮短。那時的帶寬非常有限并且昂貴,有時候傳輸不得不推遲到晚上進行,這也正推動了簡明電報表達的發展。在有些早期的小型機中,ASR紙帶讀卡機和紙帶穿孔器也是唯一的恢複程序的方法。

規範

ITU-T(前CCITT)的對應規範,用語不同,但電氣規格幾乎相同

具有相似的通信目的,但功能與電氣規範不同

RS-232tutorial

YostSerialDeviceWiringStandard

SerialPortBasics

RS232serialportinfo

PrintableASCIISerialPortCribSheets

相關詞條

相關搜索

其它詞條