串口、COM口、UART、TTL、USB、RS-232、RS-485、I2C、SPI、CAN、1-WIRE
電子產(chǎn)品,如電腦,鼠標,充電器,包括汽車等,在我們的身邊有很多接口,帶你認識這些接口,知道長什么樣子,用在什么地方,怎么用,原理是什么?這篇文章僅僅作為簡單描述,入門級。
一、串口
1、串口概述
??串行接口簡稱為串口,也叫串行通信接口,一般也叫COM口,這是一個統(tǒng)稱,采用串行通信的接口都叫作串口,串口是一個硬件接口。
2、公頭和母頭
??有公頭和母頭之分,大家可以自行記憶,左邊有孔的為母頭,另外一個就為公頭。
3、串行和并行
??串行:計算機總線或其他數(shù)據(jù)通道上,每次傳輸一個位元數(shù)據(jù),并連續(xù)進行以上單次過程的通信方式。
??并行:在串行端口上通過一次同時傳輸若干位元數(shù)據(jù)的方式進行通信,所以并行的速度比串行快。
二、UART
??UART是Universal Asynchronous Receiver/Transmitter的簡稱,意為通用異步收發(fā)傳輸器,UART包含TTL電平的串口和RS-232電平的串口,使用UART通信的雙方設(shè)備都需要遵從UART協(xié)議。
三、TTL電平
1、TTL概述
??TTL是Transistor-Transistor Logic的簡寫,是一種電平邏輯,晶體管-晶體管邏輯。
2、標準TTL電平邏輯
??邏輯1代表高電平,連接到電源VCC,邏輯0為低電平,連接到電源地。
邏輯1,高電平,VCC(3.3V/5V) 邏輯0,低電平,GND(0V)
??TTL有電壓范圍,分為輸出高、低電平和輸入高、低電平,輸出高電平用 表示,輸出低電平用 表示;輸入高電平用 表示,輸入低電平用 表示。
??對TTL電平的器件來說,當(dāng)輸入電壓高于2V時,才會被識別為邏輯1,輸入的低電平低于1.2V時,才會被識別為0,這是為什么輸出高電平2.4V,高于2V;輸出低電平0.8V,低于1.2V的原因所在。如下是標準TTL電平,TTL有很多類型,電壓有所區(qū)別。
3、USB轉(zhuǎn)TTL
??玩過51單片機的小伙伴都用過CH340G模塊,用來下載HEX文件,這個模塊的作用就是將USB轉(zhuǎn)成TTL電平,一般單片機的電平都是TTL電平,模塊的內(nèi)部芯片是CH340T,ST官方推薦。
USB轉(zhuǎn)TTL模塊
??使用CH340T芯片,USB轉(zhuǎn)TTL電平的電路原理圖。
USB
轉(zhuǎn)
TTL
原理圖
4、與單片機連接
??TTL電平的器件之間通信,只需要三根信號線:TXD、RXD和GND,和單片機接法很簡單,3.3V單片機就接3.3V,5V單片機就接5V,如果單片機有單獨的供電,3.3V和5V都不接。
USB轉(zhuǎn)TTL模塊與單片機的連接
四、USB
1、USB概述
??USB是Universal Serial Bus(通用串行總線)的縮寫,是一個外部總線標準,用于規(guī)范電腦與外部設(shè)備的連接和通訊,是應(yīng)用在PC領(lǐng)域的接口技術(shù),特點是傳輸速度快,支持熱插拔,可連接多個設(shè)備。
??我們在很多地方可以看到USB的身影,鼠標,鍵盤,手機充電器,現(xiàn)在幾乎所有的電子充電設(shè)備都是USB接口,如下是各個USB的物理接口。
USB
接口分類
2、USB速率
1MB/s=8Mbps(1個Byte等于8bit)
USB1.0 低速(Low Speed) 傳輸速率為 1.5Mbps;
USB1.1 全速(Full Speed) 傳輸速率為 12Mbps;
USB2.0 高速(High Speed) 傳輸速率為 480Mbps;
USB3.0 超速(SuperSpeed) 傳輸速率為 5Gbps;
USB3.1 Gen2 超高速(SuperSpeed+) 傳輸速率為 10Gbps;
3、USB接口定義
??最常見的的Type-A型USB接口定義如下。
Pin# | Name | 顏色 |
---|---|---|
1 | VBUS/+5V | 紅色 |
2 | D-/Data-/DM | 白色 |
3 | D+/Data+/DP | 綠色 |
4 | GND | 黑色 |
Type-A
型接口
五、RS-232
1、RS-232概述
??RS-232接口符合美國電子工業(yè)聯(lián)盟(EIA)制定的串行數(shù)據(jù)通信的接口標準,原始編號全稱是EIA-RS-232(簡稱232,RS232)。它被廣泛用于計算機串行接口外設(shè)連接,連接電纜和機械、電氣特性、信號功能及傳送過程。
2、RS-232電平邏輯
??RS-232不同于TTL的電平邏輯,為負邏輯,負12V代表高電平邏輯1,正12V代表低電平邏輯0,電壓也有標準范圍。
高電平,邏輯1,-15V to -3V 低電平,邏輯0,+3V to +15
??除了TTL和RS232,常見的還有一個CMOS電平標準,電壓范圍如下:
, ,
3、DB9接口定義
??下圖是DB9公頭和母頭的定義,一般用的最多的是RXD、TXD、GND,三個信號。
DB9
公頭和母頭接口信號定義
??工業(yè)場合還會用到DB-25的RS232,DB9和DB25接口可以轉(zhuǎn)換。
DB9
轉(zhuǎn)
DB25
4、USB轉(zhuǎn)RS-232
??USB轉(zhuǎn)232,可以先將USB轉(zhuǎn)換為TTL,再將TTL轉(zhuǎn)換為RS232,當(dāng)然市面上也有很多USB直接轉(zhuǎn)RS232的線材,線材內(nèi)部集成轉(zhuǎn)換電路,淘寶上某USB轉(zhuǎn)RS232用的兩個芯片是FT232和SP213。
USB
轉(zhuǎn)
RS232
線材
5、TTL和RS-232互轉(zhuǎn)
??單片機接口一般是TTL電平,如果接232電平的外設(shè),就需要加TTL轉(zhuǎn)RS232的模塊,轉(zhuǎn)換方向是雙向的。
??TTL和RS232電平互相轉(zhuǎn)換最常用的芯片是MAX232和SP3232。
TTL和RS-232轉(zhuǎn)換模塊
六、RS-485
1、RS-485概述
??RS-485和RS-232一樣,都是串行通信標準,現(xiàn)在的標準名稱是TIA/EIA-485-A,習(xí)慣稱為RS-485標準,RS-485彌補了RS-232通信距離短,速率低的缺點。
??RS-485和RS-232單端傳輸不一樣,是差分傳輸,使用一對雙絞線,其中一根線定義為A,另一個定義為B。
2、RS-485電平邏輯
??RS-485是差分傳輸,一般收發(fā)器內(nèi)部是一個發(fā)送器加一個收發(fā)器組成。下圖是收發(fā)器典型的功能框圖。
??對于使能信號,字母上面加一橫的為低電平有效,不加的為高電平有效。
??RS-485內(nèi)部結(jié)構(gòu)
對于發(fā)送器,有如下的真值表:
當(dāng)驅(qū)動器使能引腳 為邏輯高時,差分輸出 和 遵循數(shù)據(jù)輸入 處的邏輯狀態(tài)。 處的邏輯高導(dǎo)致A轉(zhuǎn)為高,B轉(zhuǎn)為低。在這種情況下,定義為 的差分輸出電壓為正。當(dāng) 為低時,輸出狀態(tài)反轉(zhuǎn), 變高, 變低, 為負。 當(dāng) 低時,兩個輸出都變成高阻抗。在這種情況下,與 處的邏輯狀態(tài)是不相關(guān)的。
RS-485
發(fā)送器真值表
??對于接收器,有如下的真值表:
當(dāng)接收器使能引腳 邏輯低時,接收器被激活。當(dāng)定義為 的差分輸入電壓為正且高于正輸入閾值 時,接收機輸出 變高。當(dāng) 為負且低于負輸入閾值 ,接收機輸出 變低。如果 在 和 之間,則輸出不確定。 當(dāng) 為邏輯高或懸空時,接收機輸出為高阻抗, 的大小和極性無關(guān)。
RS-485接受器真值表
RS-485電平邏輯說明
??很多收發(fā)器的標準達到甚至超過TIA/EIA-485A規(guī)范,在實際使用中,以器件的SPEC參數(shù)為主。
3、TTL和RS-485轉(zhuǎn)換
??TTL轉(zhuǎn)成RS-485很常見,收發(fā)器芯片市面上很多,比如MAX485,用起來也很簡單,一般左邊接MCU的GPIO,用來控制。
TTL轉(zhuǎn)RS-485
4、RS-232和RS-485轉(zhuǎn)換
??RS-232和RS-485之間可以轉(zhuǎn)換,一個方法是RS-232轉(zhuǎn)換成TTL,再由TTL轉(zhuǎn)換為RS-485,當(dāng)然也有芯片支持將RS-232支持轉(zhuǎn)換成RS-485,雙向轉(zhuǎn)換。
RS-232和RS-485轉(zhuǎn)換模塊
七、IIC
1、IIC概述
??IIC總線是由Philips公司開發(fā)的一種簡單、雙向二線制同步串行總線,IIC只需要兩根線進行通信,SDA(串行數(shù)據(jù)線)和SCL(串行時鐘線)
??下圖是I2C總線的典型結(jié)構(gòu),同一時刻可以單主機多從機或單主機單從機,I2C總線上的任意設(shè)備都可以當(dāng)主機,一般主機是MCU,當(dāng)有多個主機時,會通過總線仲裁的方式選出一個主機,其他退出作從機。
IIC總線架構(gòu)
2、IIC速率
標準模式:100Kbit/s 快速模式:400Kbit/s 高速模式:3.4Mbit/s
八、SPI
1、SPI概述
??SPI是串行外設(shè)接口(Serial Peripheral Interface)的縮寫,是一種高速的,全雙工,同步的通信總線,SPI的速率比I2C高,一般可以到幾十Mbps,不同的器件當(dāng)主機和當(dāng)作從機的速率一般不同。
2、SPI信號線
MISO – Master Input Slave Output,主設(shè)備數(shù)據(jù)輸入,從設(shè)備數(shù)據(jù)輸出; MOSI – Master Output Slave Input,主設(shè)備數(shù)據(jù)輸出,從設(shè)備數(shù)據(jù)輸入; SCLK – Serial Clock,時鐘信號,由主設(shè)備產(chǎn)生; CS – Chip Select,從設(shè)備使能信號,由主設(shè)備控制;
3、SPI典型應(yīng)用
??SPI最典型的應(yīng)用是單主機單從機,下圖是接線方式,當(dāng)然也可以多從機。
SPI單主機單從機連接方式
九、CAN
1、CAN概述
??CAN是Controller Area Network的簡稱,是一種有效支持分布式控制或?qū)崟r控制的串行通信網(wǎng)絡(luò),現(xiàn)在是汽車網(wǎng)絡(luò)的標準協(xié)議。
2、CAN電平邏輯
電平 | 邏輯 | 總線Value |
---|---|---|
顯性電平 | 0 | CAN_H=3.5V,CAN_L=1.5V |
隱性電平 | 1 | CAN_H=2.5V,CAN_L=2.5V |
十、1-WIRE
1、1-WIRE概述
??單總線是美國DALLAS公司推出的外圍串行擴展總線技術(shù),與SPI、I2C串行數(shù)據(jù)通信方式不同,它采用單根信號線,既傳輸時鐘又傳輸數(shù)據(jù),而且數(shù)據(jù)傳輸是雙向的。
2、1-WIRE典型框圖
??如下是1-WIRE的典型框圖,可以看到微處理器和1-WIRE器件之間只有一根線。
當(dāng)MCU發(fā)送邏輯1時,經(jīng)過反相器,總線呈現(xiàn)邏輯0,邏輯0經(jīng)過1-WIRE器件的反相器,即會收到邏輯1;
當(dāng)MCU發(fā)送邏輯0時,經(jīng)過反向器,總線呈現(xiàn)邏輯1,邏輯1經(jīng)過1-WIRE器件的反相器,即會收到邏輯0;
同理,當(dāng)1WIRE器件發(fā)送邏輯1時,Tx處有NMOS會導(dǎo)通,總線呈現(xiàn)邏輯0,經(jīng)過MCU Rx處的反相器,MCU會收到邏輯1;
發(fā)送邏輯0時,NMOS截止,總線呈現(xiàn)邏輯1,MCU會收到邏輯0;
1-WIRE
結(jié)構(gòu)圖
本文授權(quán)轉(zhuǎn)載自公眾號“記得誠”,作者:記得誠
-END-
推薦閱讀
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!