串口 COM口 USB-TTL RS-232 RS-485 不同标准 区别 释疑
生活随笔
收集整理的這篇文章主要介紹了
串口 COM口 USB-TTL RS-232 RS-485 不同标准 区别 释疑
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉載地址:http://blog.sina.com.cn/s/blog_6566538d0100r7p8.html
有幾個概念玩嵌入式的同志經常搞混。也不怨誰,現在的賣家為了一點可憐的銷量都在故意混淆串口的概念。
如果你發現本文有哪里含糊,或者任何一點有可能影響理解的地方,請留言,我會修正以便幫助后來的朋友。Point(所有要點都在這,請仔細閱讀): No.1、串口、COM口是指的物理接口形式(硬件)。而TTL、RS-232、RS-485指的是串口的電平標準(電信號)。 No.2、接線的時候,一般只接GND、RX(接收)、TX(發送)。不接Vcc等電源線,避免與目標設備上的供電沖突。 ????(接線法則:主機的 TX 接目標設備的 RX ,主機的 RX?接目標設備的 TX,但是很多設計人員為了接線更為直觀而故意顛倒標記 RX、TX,可以串200-1kΩ電阻之后嘗試交換。或No.4的方法。) No.3、串口通訊一般不含握手協議,所以可以只接GND、RX用于純接收,或只接GND、TX用于純發送。 No.4、串口接線錯誤可能會燒壞芯片,比如:一個TX拉高的1 灌到了 另一個TX拉低的0。 ?? ??(不確定目標接線定義的時候,可以拿確定為RX的線試接 另一個設備的TX和RX,看是否收到數據。) No.5、CH340、PL2303、CP2102、FT232R 芯片是USB轉成串口(TTL電平輸出)的芯片,需要安裝Windows驅動。 ????(常用于筆記本增加串口,注意其兼容性不如板載串口。優先選擇:FT232R >CP2102?> PL2303 ) No.6、MAX232是TTL電平與RS232電平的?雙向轉換芯片,不同引腳實現TTL轉RS-232或 RS-232轉TTL的功能。 ????(TTL與RS232轉換芯片很多很多,正向、逆向接口數量不同:比如:MAX202、SP213、MAX3232 ) No.7、TTL電平標準 是低電平為0,高電平為1(對GND線電壓,標準數字電路邏輯)。 ??RS-232電平標準 是正電平為0,負電平為1(對GND線高低,電壓具體數值不太敏感)。 No.8、RS-485、RS-422與RS-232類似,但是采用差分信號邏輯,更適合抗干擾/高速傳輸。這里略過不講。 No.9、臺式電腦后邊的D型9針插頭(板載串口,公口),是RS-232電平的。可以通過MAX232轉換為TTL電平。
串口、COM口: COM口 即 串行通訊端口,簡稱 串口。這里區別于 USB的“通用串行總線”和“SATA”串行硬盤接口。 一般我們見到的是兩種物理形式。D型9針插頭(DB9)和4針杜邦頭 兩種,早年的25針串口已被淘汰。
下圖是常見的4針串口,在電路板上常見,經常上邊還帶有杜邦插針。 四針分別為:GND、TX、RX、VCC。其中GND可以通過焊盤接地判斷出來,而VCC一般走線稍粗些。 由于是預留在電路板上的,協議可以有很多種,要看具體設備。
經驗是:不管單片機也好、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,工業控制設備80%可能是RS-485。 其中RS-232在DB9上的針腳定義有標準規范,跨行業/跨設備通用,而RS-485和RS-422基本只有企業規范了。 9針RS-232串口的完整定義可以參考這里:http://wenku.baidu.com/view/5c170c6925c52cc58bd6be6e.html**************************************分割線**************************************
下圖是個USB轉TTL串口的小板(TTL電平),可以用USB擴展出一個串口。芯片為PL2303HX。 淘寶賣家經常故意混淆各種串口,但是這個確實是可以給 STC單片機下載程序 和 升級中九盒子的。
DB9接口的協議常用的只有三種:RS-232、RS-485和RS-422。一般不會是TTL電平,嵌入式設備80%的可能性是RS-232,工業控制設備80%可能是RS-485。 其中RS-232在DB9上的針腳定義有標準規范,跨行業/跨設備通用,而RS-485和RS-422基本只有企業規范了。 9針RS-232串口的完整定義可以參考這里:http://wenku.baidu.com/view/5c170c6925c52cc58bd6be6e.html
**************************************分割線**************************************
下圖是個USB轉TTL串口的小板(TTL電平),可以用USB擴展出一個串口。芯片為PL2303HX。 淘寶賣家經常故意混淆各種串口,但是這個確實是可以給 STC單片機下載程序 和 升級中九盒子的。
這是另一種,CP2102芯片的,也是USB轉串口(TTL電平)。據說比PL2303的好,實際使用中表現并不明顯。 這個小板引出了芯片內置的LDO,多了個+3.3V 電源輸出端,可以用于驅動小電流的負載設備。
在這里說一下,TTL電平還有不同電壓的區別,常見3.3V和5V版本。比如某板的核心芯片為3.3V,那么它輸出的邏輯1就是3.3V。這個轉接板和5V的設備對接,電壓觸發閾值一般可以滿足,建議串470-1k電阻做保險。
除了PL232和CP2102,還有CH340和FT232之類的USB轉TTL芯片,不再詳述。
**************************************分割線**************************************
上邊介紹的都是USB轉TTL電平的串口,如果目標設備上是RS-232串口(D型9針接口)咋弄? 再 串接一片 MAX232 轉換成RS-232電平就行,一個MAX232內部有兩個T,兩個R,下圖只用了一組T/R。
你也可以搭一個簡單的比較器電路,來實現TTL轉RS-232的功能,仔細看圖有助于理解電平的概念。 ?(注意下圖中TTL端的GND-TTL與GND232分開考慮。紅色為TTL轉RS232功能部分,藍色為RS232轉TTL。)
(這里插播一點我的電路體系:在沒涉及電磁波之前,電壓這個東西可以當它不存在,電子流動所表現出來的電流才是分析的主體,電流受到阻礙,才會在兩端體現出壓差。電壓永遠是差值,某點對某點的差值,然而所有課本總是封裝成整套的高級理論一股腦砸給初學者,導致了很多人一輩子都未能形成統一的電路體系。就下邊這個電路來說,TxTTL電壓大于12/(6.8+1)V時,運放開啟了Rx232對GND-TTL的通路。然后我們視線轉移到右側兩個560Ω的電阻上,GND232對GND-TTL是6V,而Rx232與GND-TTL相通,那么Rx232對GND232不就是負6V么?這是一個參考系的轉移,右側電路并不知道GND-TTL的存在,只知道Rx232與GND232之間的壓差。那么,多出來的負6伏不會有額外的電流么?這就是我說的問題,這其實是同一批電流流經下方560Ω電阻,在電阻兩端所產生的壓差,Get?電子流動受阻表現出電壓,反映到系統里邊呈現出兩端的壓差,而不是電壓產生電流。咦,哪里不對?運放的輸入為什么要用電壓來考慮?因為運放太復雜,運放設計時就花了很大力氣去優化電流路徑使之表現出更好的電壓特性,用封裝起來的電壓體系去分析運放的外部表現比較容易理解。既然是電流產生電壓,那驅動電子流動的能量是什么?舉個例子就明白了,水塔。水塔內部控制的還是進水的流速,經過水池的緩沖,對外表現出水壓的一致,這就是我們看到的恒壓源。水壓和流速都是水分子集總表現出來的宏觀性狀/現象,而不是水流動的原因,重力才是。對電路來說,驅動電子的是沿電路形成的電場,其根源在于電源單向搬移電子的速度。變壓器+整流橋不就是液壓造浪機+單向閥么?)
扯遠了。
MAX232內置了倍壓電路來實現升壓/負壓,所以不需要上圖所示的正負電源。 同時帶來一個特征,倍壓電路需要多個蓄能電容,芯片內部做不下,可以依此在接口附近找芯片確定串口電平。
**************************************分割線**************************************
當然,早有人想到了做一款成品。USB轉RS-232串口。 仔細看下圖(從右到左),USB經過PL2303轉成了TTL串口(中間那四個窟窿可以引出),再經由MAX232轉換為RS-232電平,9針串口引出。(公口,泛指所有帶針的口,樣子與臺式電腦后邊自帶的串口相同。)
下面這是另一款:電平轉換依舊用的是 MAX232 ,大同小異。 注意這個輸出好像是母口,跟電腦后邊的接口不同,千萬不要買錯性別。
進階:MAX232只能轉換兩個T和兩個R,無法實現完整的9針全串口電平轉換,所以此類串口轉接板只有TX、RX和GND三針有效,對于涉及到串口中其他控制線的目標設備不適用。(PL2303等芯片都轉出了TTL電平的全部引腳,只不過MAX232通道數量有限,所以DB9一端很少功能完整的串口。若要全串口電平轉換,MAX3232可以實現。)
你或許會買到如下圖這種:看起來里邊只有一個牛屎芯片的。 但是記住一點,只要是 D型9針串口,不會是TTL電平的,沒特殊說明就默認是RS-232。 所以這根線,不管里邊構造怎樣的,是 USB轉RS-232串口 的線,內置了電平轉換芯片。 如果想用來給STC單片機下載或者升級中九盒子,需要額外再串接一個MAX232板子?轉換回TTL電平。
總結
以上是生活随笔為你收集整理的串口 COM口 USB-TTL RS-232 RS-485 不同标准 区别 释疑的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: OPC向UNIX的演进(OPC evol
- 下一篇: Modbus名词解释