在通信和計算機科學(xué)中,串行通信(Serial Communication)是一個通用概念,串行通信是指計算機主機與外設(shè)之間或者主機系統(tǒng)與主機系統(tǒng)之間數(shù)據(jù)的串行傳送,通過數(shù)據(jù)信號線、地線等,按位進行傳輸數(shù)據(jù)的一種通訊方式。串口通信需要遵循以下協(xié)議:
RS-232協(xié)議:規(guī)定了串口通信中的數(shù)據(jù)格式、波特率、數(shù)據(jù)位、停止位、奇偶校驗等參數(shù),被廣泛應(yīng)用于計算機、通信、工業(yè)自動化等領(lǐng)域。
Modbus協(xié)議:是一種開放式的串口通信協(xié)議,可以實現(xiàn)不同設(shè)備之間的通信,包括數(shù)據(jù)讀取、寫入、控制等功能,被廣泛應(yīng)用于工業(yè)自動化、建筑自動化等領(lǐng)域。
SPI協(xié)議:是基于全雙工通信模式的串口通信協(xié)議。通信總線由四根線構(gòu)成,具有傳輸速度快、可擴展性高、支持多主設(shè)備等優(yōu)點,常用于嵌入式設(shè)備和一些外圍設(shè)備之間的數(shù)據(jù)傳輸。
UART協(xié)議:是一種常見的串口通信協(xié)議,數(shù)據(jù)傳輸速率較慢、僅帶有一個數(shù)據(jù)線以及簡單易用,適用于小型系統(tǒng)、長距離傳輸以及需要極高數(shù)據(jù)可靠性的場合。
I2C協(xié)議:是基于半雙工通信模式的串口通信協(xié)議。具有傳輸速度較快、支持多從設(shè)備、占用資源少等優(yōu)點,常用于芯片內(nèi)部硬件訪問控制、溫度傳感器、電子存儲器和其它數(shù)字集成電路之間的通信。
針對不同的協(xié)議,接線方式也各不相同,可分為以下幾種。
三線制接法:這是最為簡單且常用的方法,主要涉及地線、接收數(shù)據(jù)和發(fā)送數(shù)據(jù)三個腳。將接收腳與發(fā)送腳直接用線相連,例如對于9針串口(DB9)和25針串口(DB25),可以將2與3直接相連。這種接線方法的好處在于易于理解和操作,對于微機標準串行口是一個很好的選擇。但是,如果通信距離較遠,可能需要附加調(diào)制解調(diào)器(MODEM)來確保信號的穩(wěn)定傳輸。
RS232C串口通信接線方法:對于距離較近的通信(<12m),可以直接使用電纜線連接標準RS232端口(RS422、RS485較遠)。將電纜的一端插入計算機的串口,另一端插入另一臺計算機的串口,或者是一個串口與多個串口相連的情況,可以參考上述對微機標準串行口的表格。同樣要注意的是,接收數(shù)據(jù)針腳(或線)與發(fā)送數(shù)據(jù)針腳(或線)相連,兩者交叉,信號地對應(yīng)相接,就能保證通信的穩(wěn)定性。
串行外圍設(shè)備接口SPI(serial peripheral interface)總線技術(shù)是Motorola公司推出的一種同步串行接口。 SPI用于CPU與各種外圍器件進行全雙工、同步串行通訊。 它只需四條線就可以完成MCU與各種外圍器件的通訊,這四條線是:串行時鐘線(CSK)、主機輸入/從 機輸出數(shù)據(jù)線(MISO)、主機輸出/從機輸入數(shù)據(jù)線(MOSI)、低電平有效從機選擇線CS。
IIC總線是具備多主機系統(tǒng)所需的包括總線裁決和高低速器件同步功能的高性能串行總線,它只有兩根雙向信號線,一根是數(shù)據(jù)線SDA,另一根是時鐘線SCL。數(shù)據(jù)線SDA用于主機和從機之間的數(shù)據(jù)傳輸,時鐘線SCL用于提供同步時鐘信號。
不同的設(shè)備可能采用不同的串口通信接口和接線方法,要根據(jù)具體情況進行判斷。例如,對于某些非標準設(shè)備,可能需要查閱相關(guān)的文檔或指南。建議在進行這類操作時,先咨詢專業(yè)人士以避免誤操作造成設(shè)備的損壞。
串口調(diào)試中要注意的幾點: 不同編碼機制不能混接,如RS232C不能直接與RS422接口相連,市面上專門的各種轉(zhuǎn)換器賣,必須通過轉(zhuǎn)換器才能連接; 線路焊接要牢固,不然程序沒問題,卻因為接線問題誤事; 串口調(diào)試時,準備一個好用的調(diào)試工具,如串口調(diào)試助手、串口精靈等,有事半功倍之效果; 強烈建議不要帶電插撥串口,插撥時至少有一端是斷電的,否則串口易損壞。單片機與串口設(shè)備(如GPRS模塊、載波芯片等)通信時,一律將RXD與TXD反接,即單片機的RXD接設(shè)備的TXD,單片機的TXD接設(shè)備的RXD。