RS232串口通信基礎(chǔ)知識(shí)
- 2019-06-14 14:50:00
- 諾塔斯智能科技 原創(chuàng)
- 4531
在串行通訊時(shí),要求通訊雙方都采用一個(gè)標(biāo)準(zhǔn)接口,使不同的設(shè)備可以方便地連接起來進(jìn)行通訊。RS-232-C接口(又稱EIA RS-232-C)是目前最常用的一種串行通訊接口。
RS-232-C是美國電子工業(yè)協(xié)會(huì)EIA(Electronic Industry Association)制定的一種串行物理接口標(biāo)準(zhǔn)。RS是英文“推薦標(biāo)準(zhǔn)”的縮寫,232為標(biāo)識(shí)號(hào),C表示修改次數(shù),代表RS232的最新一次修改(1969),在這之前,有RS232B、RS232A。它是在1970 年由美國電子工業(yè)協(xié)會(huì)(EIA)聯(lián)合貝爾系統(tǒng)、調(diào)制解調(diào)器廠家及計(jì)算機(jī)終端生產(chǎn)廠家共同制定的用于串行通訊的標(biāo)準(zhǔn)。它的全名是“數(shù)據(jù)終端設(shè)備(DTE)和數(shù)據(jù)通訊設(shè)備(DCE)之間串行二進(jìn)制數(shù)據(jù)交換接口技術(shù)標(biāo)準(zhǔn)”。
1、電氣特性
EIA-RS-232C對(duì)電器特性、邏輯電平和各種信號(hào)線功能都作了規(guī)定。
在TxD和RxD上:邏輯1(MARK)=-3V~-15V ,邏輯0(SPACE)=+3~+15V 在RTS、CTS、DSR、DTR和DCD等控制線上:
信號(hào)有效(接通,ON狀態(tài),正電壓)=+3V~+15V
信號(hào)無效(斷開,OFF狀態(tài),負(fù)電壓)=-3V~-15V
根據(jù)設(shè)備供電電源的不同,+-5、+-10、+-12和+-15這樣的電平都是可能的。
2、連接器的機(jī)械特性
由于RS-232C并未定義連接器的物理特性,因此,出現(xiàn)了DB-25、DB-15和DB-9各種類型的連接器,其引腳的定義也各不相同。最近,8管腳的RJ-45型連接器變得越來越普遍,盡管它的管腳分配相差很大。EIA/TIA 561標(biāo)準(zhǔn)規(guī)定了一種管腳分配的方法,但是由Dave Yost發(fā)明的被廣泛使用在Unix計(jì)算機(jī)上的Yost串連設(shè)備配線標(biāo)準(zhǔn) ("Yost Serial Device Wiring Standard")以及其他很多設(shè)備都沒有采用上述任一種連線標(biāo)準(zhǔn)。下表中列出的是被較多使用的RS-232中的信號(hào)和管腳分配:
信號(hào)的標(biāo)注是從DTE設(shè)備的角度出發(fā)的,TD、DTR和RTS信號(hào)是由DTE產(chǎn)生的,RD、DSR、CTS、DCD和RI信號(hào)是由DCE產(chǎn)生的。
PC 機(jī)的RS-232 口為9 芯針插座。一些設(shè)備與PC 機(jī)連接的RS-232 接口,因?yàn)椴皇褂脤?duì)方的傳送控制信號(hào),只需三條接口線,即“發(fā)送數(shù)據(jù)TXD”、“接收數(shù)據(jù)RXD”和“信號(hào)地GND”。
雙向接口能夠只需要3根線制作是因?yàn)镽S-232的所有信號(hào)都共享一個(gè)公共接地。非平衡電路使得RS-232非常的容易受兩設(shè)備間基點(diǎn)電壓偏移的影響。對(duì)于信號(hào)的上升期和下降期,RS-232也只有相對(duì)較差的控制能力,很容易發(fā)生串話的問題。RS-232被推薦在短距離(15m以內(nèi))間通信。由于非對(duì)稱電路的關(guān)系,RS-232接口電纜通常不是由雙絞線制作的。
3、傳輸電纜
RS-232-C標(biāo)準(zhǔn)規(guī)定的數(shù)據(jù)傳輸速率為每秒50、75、 100、150、300、600、1200、2400、4800、9600、19200波特,驅(qū)動(dòng)器允許有2500pF的電容負(fù)載,通信距離將受此電容限制。
例如,采用150pF/m的通信電纜時(shí),最大通信距離為15m;若每米電纜的電容量減小,通信距離可以增加。傳輸距離短的另一原因是RS-232屬單端信號(hào)傳送,存在共地噪聲和不能抑制共模干擾等問題,因此一般用于20m以內(nèi)的通信。
由RS-232C標(biāo)準(zhǔn)規(guī)定在碼元畸變小于4%的情況下,傳輸電纜長度應(yīng)為50 英尺,其實(shí)這個(gè)4%的碼元畸變是很保守的,在實(shí)際應(yīng)用中,約有99%的用戶是按碼元畸變10-20%的范圍工作的,所以實(shí)際使用中最大距離會(huì)遠(yuǎn)超過50英尺,美國DEC公司曾規(guī)定允許碼元畸變?yōu)?0%而得出下面實(shí)驗(yàn)結(jié)果。其中1 號(hào)電纜為屏蔽電纜,型號(hào)為DECP.NO.9107723 內(nèi)有三對(duì)雙絞線,每對(duì)由22# AWG 組成,其外覆以屏蔽網(wǎng)。2 號(hào)電纜為不帶屏蔽的電纜。型號(hào)為DECP.NO.9105856-04是22#AWG 的四芯電纜。
4、鏈路層
在RS-232標(biāo)準(zhǔn)中,字符是以一系列位元來一個(gè)接一個(gè)的傳輸。最長用的編碼格式是異步起停asynchronous start-stop格式,它使用一個(gè)起始位后面緊跟7或8 個(gè)數(shù)據(jù)比特,這個(gè)可能是奇偶位,然后是兩個(gè)停止位。所以發(fā)送一個(gè)字符需要10比特,帶來的一個(gè)好的效果是使全部的傳輸速率,發(fā)送信號(hào)的速率以10分劃。
串行通信在軟件設(shè)置里需要做多項(xiàng)設(shè)置,最常見的設(shè)置包括波特率、奇偶校驗(yàn)和停止位。 波特率是指從一設(shè)備發(fā)到另一設(shè)備的波特率,即每秒鐘多少比特bits per second (bit/s)。典型的波特率是300、1200、2400、9600、19200等bit/s。一般通信兩端設(shè)備都要設(shè)為相同的波特率,但有些設(shè)備也可以設(shè)置為自動(dòng)檢測(cè)波特率。
奇偶校驗(yàn)Parity是用來驗(yàn)證數(shù)據(jù)的正確性。奇偶校驗(yàn)一般不用,如果使用,那么既可以做奇校驗(yàn)也可以做偶校驗(yàn)。奇偶校驗(yàn)是通過修改每一發(fā)送字節(jié)(也可以限制發(fā)送的字節(jié))來工作的。如果不作奇偶校驗(yàn),那么數(shù)據(jù)是不會(huì)被改變的。在偶校驗(yàn)中,因?yàn)槠媾夹r?yàn)位會(huì)被相應(yīng)的置1或0(一般是最高位或最低位),所以數(shù)據(jù)會(huì)被改變以使得所有傳送的數(shù)位(含字符的各數(shù)位和校驗(yàn)位)中“1”的個(gè)數(shù)為偶數(shù);在奇校驗(yàn)中,所有傳送的數(shù)位(含字符的各數(shù)位和校驗(yàn)位)中“1”的個(gè)數(shù)為奇數(shù)。奇偶校驗(yàn)可以用于接受方檢查傳輸是否發(fā)送生錯(cuò)誤——如果某一字節(jié)中“1”的個(gè)數(shù)發(fā)生了錯(cuò)誤,那么這個(gè)字節(jié)在傳輸中一定有錯(cuò)誤發(fā)生。如果奇偶校驗(yàn)是正確的,那么要么沒有發(fā)生錯(cuò)誤要么發(fā)生了偶數(shù)個(gè)的錯(cuò)誤。
停止位是在每個(gè)字節(jié)傳輸之后發(fā)送的,它用來幫助接受信號(hào)方硬件重同步。
在串行通信軟件設(shè)置中D/P/S是常規(guī)的符號(hào)表示。8/N/1(非常普遍)表明8bit數(shù)據(jù),沒有奇偶校驗(yàn),1bit停止位。數(shù)據(jù)位可以設(shè)置為7、8或者9,奇偶校驗(yàn)位可以設(shè)置為無(N)、奇(O)或者偶(E),奇偶校驗(yàn)位可以使用數(shù)據(jù)中的比特位,所以8/E/1就表示一共8位數(shù)據(jù)位,其中一位用來做奇偶校驗(yàn)位。停止位可以是1、1.5或者2位的(1.5是用在波特率為60wpm的電傳打字機(jī)上的)。
5、傳輸控制
當(dāng)需要發(fā)送握手信號(hào)或數(shù)據(jù)完整性檢測(cè)時(shí)需要制定其他設(shè)置。公用的組合有RTS/CTS,DTR/DSR或者XON/XOFF(實(shí)際中不使用連接器管腳而在數(shù)據(jù)流內(nèi)插入特殊字符)。
接受方把XON/XOFF信號(hào)發(fā)給發(fā)送方來控制發(fā)送方何時(shí)發(fā)送數(shù)據(jù),這些信號(hào)是與發(fā)送數(shù)據(jù)的傳輸方向相反的。XON信號(hào)告訴發(fā)送方接受方準(zhǔn)備好接受更多的數(shù)據(jù),XOFF信號(hào)告訴發(fā)送方停止發(fā)送數(shù)據(jù)直到知道接受方再次準(zhǔn)備好。XON/XOFF一般不贊成使用,推薦用RTS/CTS控制流來代替它們。
XON/XOFF是一種工作在終端間的帶內(nèi)方法,但是必須兩端都支持這個(gè)協(xié)議,而且在突然啟動(dòng)的時(shí)候會(huì)有混淆的可能。
XON/XOFF可以工作于3線的接口。RTS/CTS最初是設(shè)計(jì)為電傳打字機(jī)和調(diào)制解調(diào)器半雙工協(xié)作通信的,每次它只能一方調(diào)制解調(diào)器發(fā)送數(shù)據(jù)。終端必須發(fā)送請(qǐng)求發(fā)送信號(hào)然后等到調(diào)制解調(diào)器回應(yīng)清除發(fā)送信號(hào)。盡管RTS/CTS是通過硬件達(dá)到握手,但它有自己的優(yōu)勢(shì)。
6、RS-232標(biāo)準(zhǔn)的不足
經(jīng)過許多年來RS-232 器件以及通信技術(shù)的改進(jìn),RS-232 的通信距離已經(jīng)大大增加。由于RS-232 接口標(biāo)準(zhǔn)出現(xiàn)較早,難免有不足之處,主要有以下四點(diǎn):
(1) 接口的信號(hào)電平值較高,易損壞接口電路的芯片,又因?yàn)榕cTTL 電平不兼容故需使用電平轉(zhuǎn)換電路方能與TTL 電路連接。
(2) 傳輸速率較低,在異步傳輸時(shí),波特率為20Kbps?,F(xiàn)在由于采用新的UART 芯片16C550 等,波特率達(dá)到115.2Kbps。
(3) 接口使用一根信號(hào)線和一根信號(hào)返回線而構(gòu)成共地的傳輸形式, 這種共地傳輸容易產(chǎn)生共模干擾,所以抗噪聲干擾性弱。
(4) 傳輸距離有限,最大傳輸距離標(biāo)準(zhǔn)值為50 米,實(shí)際上也只能用在15米左右。
以上是關(guān)于RS232串口通信基礎(chǔ)知識(shí),可以幫助你更好的了解RS232串口通信方式,更加深刻的了解RS232串口通信的機(jī)制,發(fā)現(xiàn)它的優(yōu)缺點(diǎn)。
聯(lián)系人: | 張經(jīng)理 |
---|---|
電話: | 400-023-6659 |
傳真: | 023-68798110 |
Email: | 843718693@qq.com |
QQ: | 843718693 |
微信: | Lotus-Smart |
微博: | lotusreader |
旺旺: | 諾塔斯智能科技有限公司 |
地址: | 重慶市江北區(qū)宏帆路36號(hào)宏帆天地1棟6樓 |