串口 COM口 USB-TTL RS-232 RS-485 不同標準 區別 釋疑

有幾個概念玩嵌入式的同志經常搞混。也不怨誰,現在的賣家爲了一點可憐的銷量都在故意混淆串口的概念。
如果你發現本文有哪裏含糊,或者任何一點有可能影響理解的地方,請留言,我會修正以便幫助後來的朋友。

Point (所有要點都在這,請仔細閱讀):
1、串口、COM口是指的物理接口形式(硬件)。而TTL、RS-232、RS-485指的是串口的電平標準(電信號)。
2、接線的時候,一般只接GNDRX(接收)、TX(發送)。不會接入Vcc等電源線,避免與目標設備上的供電衝突。
      (接線法則:主機的 TX 接目標設備的 RX ,主機的 RX 接目標設備的 TX ,但是很多設計人員爲了接線更爲直觀而故意顛倒標記 RX、TX ,如果有問題可以嘗試交換RX、TX,不會燒壞設備 。)
3、臺式電腦後邊帶的D型9針插頭(板載串口,公口),是RS-232電平標準的。可以通過MAX232轉換爲TTL電平。
4、PL2303、CP2102、FT232R 芯片是用USB來擴展串口(TTL電平輸出)的芯片,需要安裝Windows驅動。
      (常用於筆記本增加串口,注意其兼容性不如板載串口。優先選擇:FT232R > CP2102 > PL2303 )
5、MAX232芯片是TTL電平與RS232電平的專用雙向轉換芯片,不同引腳實現TTL轉RS-232或RS-232轉TTL的功能。
      (TTL與RS232轉換芯片很多很多,正向、逆向接口數量不同:比如:MAX202、SP213、MAX3232 )
6、TTL電平標準 是 低電平爲0,高電平爲1(對地,標準數字電路邏輯)。
   RS-232電平標準 是 正電平爲0,負電平爲1(對地高低,電壓具體數值不敏感,甚至可以用高阻態)。
7、RS-485、RS-422 與RS-232類似,但是採用差分信號邏輯,更適合長距離、高速傳輸。這裏略過不講。

串口、COM口:
COM口 即 串行通訊端口,簡稱 串口。這裏區別於 USB的“通用串行總線”和“SATA”串行硬盤。
一般我們見到的是兩種物理形式。D型9針插頭(DB9)和 4針杜邦頭 兩種,早年的25針串口已被淘汰。

下圖是常見的4針串口,在電路板上常見,經常上邊還帶有杜邦插針。
四針分別爲:GND、TX、RX、VCC。其中GND可以通過焊盤接地判斷出來,而VCC一般走線稍粗些。
由於是預留在電路板上的,協議可以有很多種,要看具體設備。
串口 COM口 USB-TTL RS-232 RS-485 不同標準 區別 釋疑串口 COM口 USB-TTL RS-232 RS-485 不同標準 區別 釋疑串口 COM口 USB-TTL RS-232 RS-485 不同標準 區別 釋疑

經驗是:不管單片機也好、ARM也罷,這些芯片都是數字邏輯的,電平只有高和低,輸出肯定是TTL電平的
如果你看到串口線從核心芯片直接連出來,未經其他芯片,那99%是TTL的,STC下載和中九升級都屬此範疇。
我目前還未拆出過直接輸出RS-232的數字邏輯器件。

 

下圖就是D型9針串口(通俗說法,DB9),左爲母口,右爲公口。公口在臺式電腦後邊都可以看到。
      (VGA插頭爲三排插針,DB9只有兩排。有些板載串口沒有引出,主板找標記“RS232”的10腳牛角座既是)
      DB9接口的協議常用的只有三種:RS-232、RS-485和RS-422。絕不會是TTL電平,80%的可能性是RS-232。
9針串口的完整定義可以參考這裏:http://wenku.baidu.com/view/5c170c6925c52cc58bd6be6e.html
串口 COM口 USB-TTL RS-232 RS-485 不同標準 區別 釋疑
 

**************************************分割線**************************************

下圖是個USB轉TTL串口的小板(TTL電平),可以用USB擴展出一個串口。芯片爲PL2303HX。
淘寶賣家經常故意混淆各種串口,但是這個確實是可以給 STC單片機下載程序 和 升級中九盒子的。
串口 COM口 USB-TTL RS-232 RS-485 不同標準 區別 釋疑


這是另一種,CP2102芯片的,也是USB轉串口(TTL電平)。據說比PL2303的好,實際使用中表現並不明顯。
這個小板引出了芯片內置的LDO,多了個+3.3V 電源輸出端,可以用於驅動小電流的負載設備。
串口 COM口 USB-TTL RS-232 RS-485 不同標準 區別 釋疑

上邊介紹的都是USB轉TTL電平的串口,如果目標設備上是RS-232串口(D型9針接口)咋弄?
再 串接一片 MAX232 轉換成 RS-232電平就行,一個MAX232內部有兩個T,兩個R,下圖只用了一組T/R。
 串口 COM口 USB-TTL RS-232 RS-485 不同標準 區別 釋疑

 
你也可以搭一個簡單的比較器電路,來實現TTL轉RS-232的功能,仔細看圖有助於理解電平的概念。
      (注意下圖中TTL端的GND與GND232隔離。MAX232內置了倍壓電路來實現升壓,所以不需要外接正負電源。)
串口 COM口 USB-TTL RS-232 RS-485 不同標準 區別 釋疑
 

當然,早有人想到了做一款成品。USB轉RS-232串口。
仔細看下圖(從右到左),USB經過PL2303轉成了TTL串口(中間那四個窟窿可以引出),再經由MAX232轉換爲RS-232電平,9針串口引出。(公口,泛指所有帶針的口,樣子與臺式電腦後邊自帶的串口相同。)
串口 COM口 USB-TTL RS-232 RS-485 不同標準 區別 釋疑
下面這是另一款:電平轉換依舊用的是 MAX232 ,大同小異。
注意這個輸出好像是母口,跟電腦後邊的接口不同,千萬不要買錯性別。
串口 COM口 USB-TTL RS-232 RS-485 不同標準 區別 釋疑
 
進階:MAX232只能轉換兩個T和兩個R,無法實現完整的9針全串口電平轉換,所以此類串口轉接板只有TX、RX和GND三針有效,對於涉及到串口中其他控制線的目標設備不適用。(PL2303等芯片都轉出了TTL電平的全部引腳,只不過MAX232只用到了TX和RX。若要全串口電平轉換,MAX3232可以實現。)

你或許會買到如下圖這種:看起來裏邊只有一個牛屎芯片的。
但是記住一點,只要是 D型9針串口,不會是TTL電平的,沒特殊說明就默認是RS-232。
所以這根線,不管裏邊構造怎樣的,是 USB轉RS-232串口 的線,內置了電平轉換芯片。
如果想用來給STC單片機下載或者升級中九盒子,需要額外再串接一個MAX232板子轉換成TTL電平。
串口 COM口 USB-TTL RS-232 RS-485 不同標準 區別 釋疑
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章