目錄
什么是串行通信?
串行通信的規(guī)格
信號配置與連接器
連接方法
半雙工通信與全雙工通信
非同步通信與同步通信
什么是串行通信?
使用1根或2根收發(fā)數(shù)據(jù)的傳輸線路,一位接一位地連續(xù)收發(fā)數(shù)據(jù)的通信方式。由于能夠以少的信號線連接,故具有抑制線材、中轉(zhuǎn)裝置的成本等的好處。
串行通信的規(guī)格
RS-232C、RS-422A、RS-485是EIA(Electronic Industries Association:美國電子工業(yè)協(xié)會)的通信規(guī)格。其中,在通信規(guī)格中,無論何種用途,RS-232C都是普及得最廣的,在計算機上也屬于標準配置,常被用于連接調(diào)制解調(diào)器、鼠標。在傳感器、調(diào)節(jié)器中,也有許多配置這些接口且可通過通信控制的產(chǎn)品。
RS-232C
在計算機上標準配置等,應用最廣泛的串行通信規(guī)格。也叫“EIA-232”。除了規(guī)定各信號線的目的、時機外,還規(guī)定了連接器(D-SUB 25芯或者D-SUB 9芯)。目前正通過添加信號線等修訂規(guī)格,正式名稱為“ANSI/EIA-232-E”。然而,現(xiàn)在依然一般叫做“RS-232C”。
RS-422A
RS-232C具有傳輸距離短,傳輸速度慢等缺點,RS-422A是改良這些缺點形成的規(guī)格。也叫“EIA-422A”。雖然規(guī)定了各信號線的目的、時機,但沒有規(guī)定連接器。眾多支持EIA-422A的產(chǎn)品主要采用D-SUB 25芯或者D-SUB 9芯。
RS-485
這是改良RS-422A連接數(shù)量少的缺點而形成的規(guī)格。也叫“EIA-485”。RS-485是相對RS-422A向上兼容的規(guī)格。雖然規(guī)定了各信號線的目的、時機,但沒有規(guī)定連接器。眾多支持EIA-422A的產(chǎn)品主要采用D-SUB 25芯或者D-SUB 9芯。
參數(shù) | RS-232C | RS-422A | RS-485 |
傳輸模式 | 單向傳輸多點 | 單向傳輸多點 | 多路傳輸 |
最大連接數(shù)量 | 1個驅(qū)動器 1個接收器 | 1個驅(qū)動器 10個接收器 | 32個驅(qū)動器 32個接收器 |
最大傳輸速度 | 20Kbps | 10Mbps | 10Mbps |
最大線纜長度 | 15m | 1200m | 1200m |
工作模式 | 單端 (非平衡型) | 差動(平衡型) | 差動(平衡型) |
連接示意圖 | |||
特點 | 短距離 全雙工 1:1的連接 | 長距離 全雙工 半雙工 1:N的連接長距離 | 全雙工 半雙工 N:N的連接 |
信號配置與連接器
RS-232C 也規(guī)定了使用的連接器、信號配置,實現(xiàn)了標準化。右表說明了D-SUB9芯的信號配置和信號線。
芯號 | 信號名 | 說明 | |
1 | DCD | Data Carrier Detect | 載波檢測 |
2 | RxD | Received Data | 接收數(shù)據(jù) |
3 | TxD | Transmitted Data | 發(fā)送數(shù)據(jù) |
4 | DTR | Data Terminal Read | 數(shù)據(jù)終端就緒 |
5 | SG | Signal Ground | 信號接地或者公共回線 |
6 | DSR | Data Set Ready | 數(shù)據(jù)集就緒 |
7 | RTS | Request To Send | 發(fā)送請求 |
8 | CTS | Clear To Send | 發(fā)送許可 |
9 | RI | Ring Indicator | 被呼叫指示 |
CASE | FG | Frame Ground | 保養(yǎng)接地或者地線 |
連接方法
由于RS-232C頒布了連接器、信號配置的規(guī)格,市面上有眾多符合規(guī)格的線纜出售。但是,裝置有以下幾種,需要根據(jù)連接的裝置區(qū)別使用直連線纜和交叉(反轉(zhuǎn))線纜。
裝置的種類
DCE
Data Communication Equipment(數(shù)據(jù)通信裝置)。是指調(diào)制解調(diào)器、打印機、繪圖機那樣的被動工作的裝置。
DTE
Data Terminal Equipment(終端裝置)。是指計算機那樣的主動工作的裝置。
交叉線纜連接⑴ | 交叉線纜連接⑵ | 直連線纜連接 | ||
DCE ? DCE (Crossover cable) DCE ? DTE (Straight cable) 有關交叉線纜、直連線纜一覽表,請點擊這里 RS-232C 通信產(chǎn)品一覽 RS-422A/485 通信產(chǎn)品一覽
半雙工通信與全雙工通信
全雙工通信
發(fā)送和接收有各自的傳輸路線,能夠同時進行收發(fā)的方式。
半雙工通信
使用1條傳輸線路,切換發(fā)送和接收進行通信的方式。因此,不能同時通信。
非同步通信與同步通信
由于串行通信使用1根信號線,一位接一位地發(fā)送數(shù)據(jù),因此接收端要正確接收數(shù)據(jù),必須把握發(fā)送端以多大的速度一位接一位地發(fā)送。RS-232C規(guī)定的通信方式有“同步通信”和“非同步(異步)通信”規(guī)格。在計測和控制上使用的外圍設備一般使用前述全雙工通信和非同步通信。
同步通信
與對方裝置發(fā)送的時鐘或者己方發(fā)生的時鐘同步,收發(fā)數(shù)據(jù)的方式。依據(jù)發(fā)送端為每位數(shù)據(jù)附加的同步信號,進行通信。雖然數(shù)據(jù)傳輸效率高,但缺點是通信步驟復雜。
非同步通信 異步通信
與彼此與己方發(fā)生的時鐘同步,收發(fā)數(shù)據(jù)的方式。如果傳輸速度的設置不一致,就不能正常通信。也就是說,無論發(fā)送端還是接收端,都要首先決定一秒傳輸幾位數(shù)據(jù),分別產(chǎn)生頻率與該通信速度相符的同步信號。 由于非同步通信在1根數(shù)據(jù)線上一位接一位地收發(fā)數(shù)據(jù),如果不首先設置彼此的通信條件,就不能正常通行。讓計算機(控制器)端結(jié)合外圍設備端設置是通常的設置方法。
通信速度
指定一秒發(fā)送幾位。單位為bps(bit Per Second),從300、600、1200、2400、4800、9600、19200等中選擇。使設置與時機匹配,這樣數(shù)據(jù)的分隔一致,就能夠正常收發(fā)數(shù)據(jù)。為此,為1個數(shù)據(jù)(1個字節(jié))附加起始位,取得正確的時機。
結(jié)束位長度
設置表示數(shù)據(jù)終止的位的長度。通常從1位、1.5位、2位中選擇。起始位被固定為1位,不用設置。
數(shù)據(jù)位長度
指定一個數(shù)據(jù)由幾位構(gòu)成。雖然長度因使用的設備而異,但通常英文字母和數(shù)字符號指定7位,1個字節(jié)的二進制數(shù)據(jù)指定8位。
奇偶校驗的設置
這是檢查數(shù)據(jù)錯誤的功能,從“偶校驗(EVEN)”、“奇校驗(ODD)”、“無奇偶校驗(NONE)”中選擇。
奇偶校驗的詳細情況
由發(fā)送端為數(shù)據(jù)附加“1”或者“0”的奇偶校驗位,若是EVEN將“1”湊成偶數(shù)個發(fā)送,若是ODD將“1”湊成奇數(shù)個發(fā)送。對于采用EVEN的,接收端檢查數(shù)據(jù)位中的“1”的個數(shù)是不是偶數(shù);對于采用ODD的,接收端檢查數(shù)據(jù)位中的“1”的個數(shù)是不是奇數(shù),以此判斷數(shù)據(jù)是否正常。
握手信號(流量控制)
在設備之間收發(fā)數(shù)據(jù)時,如果接收端不處于接收狀態(tài),發(fā)送數(shù)據(jù)可能會丟失,為此,在通信中確認彼此的狀態(tài)很重要。握手信號(流量控制)是確保通信可靠性的功能,由發(fā)送端向接收端發(fā)送“數(shù)據(jù)發(fā)送中”的信號,接收端接收該信號,從信號線上讀入數(shù)據(jù)。并向發(fā)送端返回“已接收數(shù)據(jù)”的信號。也就是說,能夠一邊確認彼此的數(shù)據(jù)收發(fā)狀態(tài),一邊傳輸數(shù)據(jù)。
軟件握手信號(XON/XOFF流量控制)
如果接收端的接收緩沖區(qū)剩余空間已不多,向發(fā)送端發(fā)送“XOFF代碼”,請求臨時中斷發(fā)送。在剩余空間足夠時,發(fā)送“XON代碼”,向發(fā)送端請求繼續(xù)發(fā)送的控制方法。
硬件握手信號
不發(fā)送軟件流量控制的XON/XOFF代碼,而自動地接通/斷開控制線路(RTS或者DTR)。需要分別將RTS信號與CTS信號或者DTR信號與DSR信號互相連接起來。