串行通信是一種數(shù)據(jù)傳輸方式,它將數(shù)據(jù)按逐位順序(bit by bit)在一條傳輸線上發(fā)送和接收,與并行通信(同時(shí)傳輸多位數(shù)據(jù))形成對(duì)比。以下是其核心概念、工作原理、特點(diǎn)及應(yīng)用的詳細(xì)解釋:
一、核心概念
數(shù)據(jù)傳輸方式:
串行通信:數(shù)據(jù)在單條線路上依次傳輸,每個(gè)時(shí)鐘周期傳輸1位(0或1)。
并行通信:數(shù)據(jù)通過(guò)多條線路同時(shí)傳輸多位(如8位、16位),適合短距離高速傳輸。
關(guān)鍵術(shù)語(yǔ):
位(Bit):數(shù)據(jù)的最小單元,表示0或1。
幀(Frame):串行通信中,一組相關(guān)位(如起始位、數(shù)據(jù)位、校驗(yàn)位、停止位)的集合。
波特率(Baud Rate):每秒傳輸?shù)姆?hào)數(shù)(在二進(jìn)制中等于比特率),單位為波特(Bd)。
二、工作原理
串行通信通過(guò)發(fā)送端和接收端的協(xié)同工作實(shí)現(xiàn)數(shù)據(jù)傳輸,主要步驟如下:
發(fā)送端:
將并行數(shù)據(jù)(如CPU中的8位數(shù)據(jù))轉(zhuǎn)換為串行信號(hào)。
添加控制信息(如起始位、停止位、校驗(yàn)位)組成幀。
按波特率逐位發(fā)送幀。
傳輸介質(zhì):
單根導(dǎo)線(如UART的TX/RX線)或差分線對(duì)(如RS-485的A/B線)。
無(wú)線傳輸(如藍(lán)牙、LoRa)也可視為串行通信的變種。
接收端:
按波特率逐位接收信號(hào)。
去除控制信息,恢復(fù)原始數(shù)據(jù)。
將串行數(shù)據(jù)轉(zhuǎn)換回并行形式(如供CPU處理)。
三、串行通信的分類(lèi)
根據(jù)數(shù)據(jù)傳輸方向和同步方式,串行通信可分為以下類(lèi)型:
1. 按數(shù)據(jù)傳輸方向
單工(Simplex):數(shù)據(jù)單向傳輸(如傳感器到網(wǎng)關(guān))。
示例:溫度傳感器僅發(fā)送數(shù)據(jù),網(wǎng)關(guān)僅接收。
半雙工(Half-Duplex):數(shù)據(jù)可雙向傳輸,但同一時(shí)間只能單向傳輸(如RS-485)。
示例:網(wǎng)關(guān)與逆變器通過(guò)RS-485通信,需切換發(fā)送/接收模式。
全雙工(Full-Duplex):數(shù)據(jù)可同時(shí)雙向傳輸(如UART、USB)。
示例:電腦通過(guò)UART與微控制器通信,雙方可同時(shí)發(fā)送和接收。
2. 按同步方式
同步串行通信:
使用時(shí)鐘信號(hào)同步數(shù)據(jù)傳輸(如SPI、I2C、CAN總線)。
特點(diǎn):傳輸速率高,但需要額外時(shí)鐘線。
示例:SPI通信中,主設(shè)備通過(guò)SCK線提供時(shí)鐘,從設(shè)備按時(shí)鐘節(jié)奏發(fā)送/接收數(shù)據(jù)。
異步串行通信:
無(wú)時(shí)鐘信號(hào),通過(guò)起始位和停止位同步(如UART、RS-232)。
特點(diǎn):實(shí)現(xiàn)簡(jiǎn)單,但需嚴(yán)格匹配波特率。
示例:UART通信中,每幀以起始位(低電平)開(kāi)始,以停止位(高電平)結(jié)束。
四、串行通信的特點(diǎn)
1. 優(yōu)點(diǎn)
線路簡(jiǎn)單:僅需1-2根數(shù)據(jù)線(同步通信可能需時(shí)鐘線),降低成本和布線復(fù)雜度。
抗干擾能力強(qiáng):長(zhǎng)距離傳輸時(shí),串行通信比并行通信更不易受干擾(如RS-485可傳輸1200米)。
適合遠(yuǎn)距離通信:如Modbus RTU(RS-485)在工業(yè)環(huán)境中廣泛使用。
兼容性強(qiáng):通過(guò)協(xié)議轉(zhuǎn)換(如UART轉(zhuǎn)USB),可連接不同設(shè)備。
2. 缺點(diǎn)
傳輸速率較低:相比并行通信,串行通信每次僅傳輸1位,速率受限(但現(xiàn)代高速串行協(xié)議如PCIe、USB 3.0已突破這一限制)。
同步要求高:異步通信需嚴(yán)格匹配波特率,否則會(huì)導(dǎo)致數(shù)據(jù)錯(cuò)誤。
五、典型應(yīng)用場(chǎng)景
微控制器與外設(shè)通信:
UART:Arduino與GPS模塊、藍(lán)牙模塊通信。
SPI:微控制器與Flash存儲(chǔ)器、SD卡通信。
I2C:微控制器與溫度傳感器、EEPROM通信。
RS-485:PLC與多個(gè)傳感器、執(zhí)行器組成總線網(wǎng)絡(luò)。
CAN總線:汽車(chē)ECU之間傳輸發(fā)動(dòng)機(jī)狀態(tài)、車(chē)速等數(shù)據(jù)。
遠(yuǎn)程監(jiān)控與物聯(lián)網(wǎng):
LoRa/NB-IoT:智能電表、農(nóng)業(yè)傳感器通過(guò)無(wú)線串行通信上傳數(shù)據(jù)。
Modbus RTU:光伏儲(chǔ)能系統(tǒng)中的網(wǎng)關(guān)與逆變器通信。
計(jì)算機(jī)外設(shè):
USB:鍵盤(pán)、鼠標(biāo)、U盤(pán)與電腦通信(底層為串行傳輸)。
SATA:硬盤(pán)與主板之間的數(shù)據(jù)傳輸。
六、實(shí)例解析:UART通信
以UART(通用異步收發(fā)傳輸器)為例,說(shuō)明串行通信的具體流程:
幀結(jié)構(gòu):
起始位(1位):低電平,表示數(shù)據(jù)開(kāi)始。
數(shù)據(jù)位(5-9位):通常為8位,傳輸實(shí)際數(shù)據(jù)。
校驗(yàn)位(可選):奇校驗(yàn)或偶校驗(yàn),用于錯(cuò)誤檢測(cè)。
停止位(1-2位):高電平,表示數(shù)據(jù)結(jié)束。
傳輸過(guò)程:
發(fā)送端:將數(shù)據(jù)“0x55”(二進(jìn)制01010101)轉(zhuǎn)換為串行信號(hào),添加起始位(0)和停止位(1),組成幀:0 01010101 1。
接收端:檢測(cè)到起始位后,按波特率逐位接收數(shù)據(jù),去除控制位后恢復(fù)“0x55”。
波特率匹配:
若發(fā)送端波特率為9600,接收端也需設(shè)置為9600,否則數(shù)據(jù)會(huì)錯(cuò)位(如接收端誤將停止位當(dāng)作數(shù)據(jù)位)。
審核編輯 黃宇
-
串行通信
+關(guān)注
關(guān)注
4文章
608瀏覽量
37133
發(fā)布評(píng)論請(qǐng)先 登錄
羅德與施瓦茨CMX500無(wú)線通信綜測(cè)儀全面升級(jí)
單片機(jī)中的串口通訊串行同步通信與串行異步通信
請(qǐng)問(wèn)單片機(jī)與上位機(jī)進(jìn)行異步串行通信的條件是什么呢?
深入解析Z80230/Z85230/L增強(qiáng)型串行通信控制器
深入解析Z80230/Z85230/L增強(qiáng)型串行通信控制器
深入剖析Z80C30/Z85C30 CMOS SCC串行通信控制器
并行與串行的基本通信方式
Xilinx FPGA串行通信協(xié)議介紹
串行通信和并行通信的區(qū)別是什么
RS485串行通信協(xié)議介紹
是德S系列示波器如何應(yīng)對(duì)高速串行測(cè)試
串行通信接口SPI與QSPI的區(qū)別
全面了解串行通信
評(píng)論