當(dāng)前位置:首頁 > 通信技術(shù) > 通信技術(shù)
[導(dǎo)讀]串口通信是指采用串行通信協(xié)議(serial communication)在一條信號(hào)線上將數(shù)據(jù)一個(gè)比特一個(gè)比特地逐位進(jìn)行傳輸?shù)耐ㄐ拍J健4诎措姎鈽?biāo)準(zhǔn)及協(xié)議來劃分,包括RS-232-C、RS-422、RS485等。

串口是串行接口(serial port)的簡(jiǎn)稱,也稱為串行通信接口或COM接口。

串口通信是指采用串行通信協(xié)議(serial communication)在一條信號(hào)線上將數(shù)據(jù)一個(gè)比特一個(gè)比特地逐位進(jìn)行傳輸?shù)耐ㄐ拍J?。串口按電氣?biāo)準(zhǔn)及協(xié)議來劃分,包括RS-232-C、RS-422、RS485等。

一、串行通信

在串行通信中,數(shù)據(jù)在1位寬的單條線路上進(jìn)行傳輸,一個(gè)字節(jié)的數(shù)據(jù)要分為8次,由低位到高位按順序一位一位的進(jìn)行傳送。

串行通信的數(shù)據(jù)是逐位傳輸?shù)?,發(fā)送方發(fā)送的每一位都具有固定的時(shí)間間隔,這就要求接收方也要按照發(fā)送方同樣的時(shí)間間隔來接收每一位。不僅如此,接收方還必須能夠確定一個(gè)信息組的開始和結(jié)束。

常用的兩種基本串行通信方式包括同步通信和異步通信

01:串行同步通信

同步通信是指在約定的通信速率下,發(fā)送端和接收端的時(shí)鐘信號(hào)頻率和相位始終保持一致(同步),這樣就保證了通信雙方在發(fā)送和接收數(shù)據(jù)時(shí)具有完全一致的定時(shí)關(guān)系。

同步通信把許多字符組成一個(gè)信息組(信息幀),每幀的開始用同步字符來指示,一次通信只傳送一幀信息。在傳輸數(shù)據(jù)的同時(shí)還需要傳輸時(shí)鐘信號(hào),以便接收方可以用時(shí)針信號(hào)來確定每個(gè)信息位。

同步通信的優(yōu)點(diǎn)是傳送信息的位數(shù)幾乎不受限制,一次通信傳輸?shù)臄?shù)據(jù)有幾十到幾千個(gè)字節(jié),通信效率較高。同步通信的缺點(diǎn)是要求在通信中始終保持精確的同步時(shí)鐘,即發(fā)送時(shí)鐘和接收時(shí)鐘要嚴(yán)格的同步(常用的做法是兩個(gè)設(shè)備使用同一個(gè)時(shí)鐘源)

02:串行異步通信

異步通信又稱為起止式異步通信,是以字符為單位進(jìn)行傳輸?shù)?,字符之間沒有固定的時(shí)間間隔要求,而每個(gè)字符中的各位則以固定的時(shí)間傳送。

在異步通信中,收發(fā)雙方取得同步是通過在字符格式中設(shè)置起始位和停止位的方法來實(shí)現(xiàn)的。

具體來說就是,在一個(gè)有效字符正式發(fā)送之前,發(fā)送器先發(fā)送一個(gè)起始位,然后發(fā)送有效字符位,在字符結(jié)束時(shí)再發(fā)送一個(gè)停止位,起始位至停止位構(gòu)成一幀。停止位至下一個(gè)起始位之間是不定長(zhǎng)的空閑位,并且規(guī)定起始位為低電平(邏輯值為0),停止位和空閑位都是高電平(邏輯值為1),這樣就保證了起始位開始處一定會(huì)有一個(gè)下跳沿;由此就可以標(biāo)志一個(gè)字符傳輸?shù)钠鹗?。而根?jù)起始位和停止位也就很容易的實(shí)現(xiàn)了字符的界定和同步。

顯然,采用異步通信時(shí),發(fā)送端和接收端可以由各自的時(shí)鐘來控制數(shù)據(jù)的發(fā)送和接收,這兩個(gè)時(shí)鐘源彼此獨(dú)立,可以互不同步。

二、數(shù)據(jù)發(fā)送和接收過程

數(shù)據(jù)格式

在介紹異步通信的數(shù)據(jù)發(fā)送和接收過程之前,有必要先弄清楚異步通信的數(shù)據(jù)格式。

異步通信規(guī)定傳輸?shù)臄?shù)據(jù)格式由起始位(start bit)、數(shù)據(jù)位(data bit)、奇偶校驗(yàn)位(parity bit)和停止位(stop bit)組成,如圖所示(該圖中未畫出奇偶校驗(yàn)位,因?yàn)槠媾紮z驗(yàn)位不是必須有的,如果有奇偶檢驗(yàn)位,則奇偶檢驗(yàn)位應(yīng)該在數(shù)據(jù)位之后,停止位之前)。

異步通信數(shù)據(jù)格式

(1)起始位:起始位必須是持續(xù)一個(gè)比特時(shí)間的邏輯0電平,標(biāo)志傳輸一個(gè)字符的開始,接收方可用起始位使自己的接收時(shí)鐘與發(fā)送方的數(shù)據(jù)同步。

(2)數(shù)據(jù)位:數(shù)據(jù)位緊跟在起始位之后,是通信中的真正有效信息。數(shù)據(jù)位的位數(shù)可以由通信雙方共同約定,一般可以是5位、7位或8位,標(biāo)準(zhǔn)的ASCII碼是0~127(7位),擴(kuò)展的ASCII碼是0~255(8位)。傳輸數(shù)據(jù)時(shí)先傳送字符的低位,后傳送字符的高位。

(3)奇偶校驗(yàn)位:奇偶校驗(yàn)位僅占一位,用于進(jìn)行奇校驗(yàn)或偶校驗(yàn),奇偶檢驗(yàn)位不是必須有的。如果是奇校驗(yàn),需要保證傳輸?shù)臄?shù)據(jù)總共有奇數(shù)個(gè)邏輯高位;如果是偶校驗(yàn),需要保證傳輸?shù)臄?shù)據(jù)總共有偶數(shù)個(gè)邏輯高位。

舉例來說,假設(shè)傳輸?shù)臄?shù)據(jù)位為01001100,如果是奇校驗(yàn),則奇校驗(yàn)位為0(要確??偣灿衅鏀?shù)個(gè)1),如果是偶校驗(yàn),則偶校驗(yàn)位為1(要確??偣灿信紨?shù)個(gè)1)。

由此可見,奇偶校驗(yàn)位僅是對(duì)數(shù)據(jù)進(jìn)行簡(jiǎn)單的置邏輯高位或邏輯低位,不會(huì)對(duì)數(shù)據(jù)進(jìn)行實(shí)質(zhì)的判斷,這樣做的好處是接收設(shè)備能夠知道一個(gè)位的狀態(tài),有可能判斷是否有噪聲干擾了通信以及傳輸?shù)臄?shù)據(jù)是否同步。

(4)停止位:停止位可以是是1位、1.5位或2位,可以由軟件設(shè)定。它一定是邏輯1電平,標(biāo)志著傳輸一個(gè)字符的結(jié)束。

(5)空閑位:空閑位是指從一個(gè)字符的停止位結(jié)束到下一個(gè)字符的起始位開始,表示線路處于空閑狀態(tài),必須由高電平來填充。

數(shù)據(jù)發(fā)送過程

清楚了異步通信的數(shù)據(jù)格式之后,就可以按照指定的數(shù)據(jù)格式發(fā)送數(shù)據(jù)了,發(fā)送數(shù)據(jù)的具體步驟如下:

(1)初始化后或者沒有數(shù)據(jù)需要發(fā)送時(shí),發(fā)送端輸出邏輯1,可以有任意數(shù)量的空閑位。

(2)當(dāng)需要發(fā)送數(shù)據(jù)時(shí),發(fā)送端首先輸出邏輯0,作為起始位。

(3)接著就可以開始輸出數(shù)據(jù)位了,發(fā)送端首先輸出數(shù)據(jù)的最低位D0,然后是D1,最后是數(shù)據(jù)的最高位。

(4)如果設(shè)有奇偶檢驗(yàn)位,發(fā)送端輸出檢驗(yàn)位。

(5)最后,發(fā)送端輸出停止位(邏輯1)。

(6)如果沒有信息需要發(fā)送,發(fā)送端輸出邏輯1(空閑位),如果有信息需要發(fā)送,則轉(zhuǎn)入步驟(2)。

數(shù)據(jù)接收過程

在異步通信中,接收端以接收時(shí)鐘和波特率因子決定每一位的時(shí)間長(zhǎng)度。下面以波特率因子等于16(接收時(shí)鐘每16個(gè)時(shí)鐘周期使接收移位寄存器移位一次)為例來說明。

(1)開始通信,信號(hào)線為空閑(邏輯1),當(dāng)檢測(cè)到由1到0的跳變時(shí),開始對(duì)接收時(shí)鐘計(jì)數(shù)。

(2)當(dāng)計(jì)到8個(gè)時(shí)鐘的時(shí)候,對(duì)輸入信號(hào)進(jìn)行檢測(cè),若仍然為低電平,則確認(rèn)這是起始位,而不是干擾信號(hào)。

(3)接收端檢測(cè)到起始位后,隔16個(gè)接收時(shí)鐘對(duì)輸入信號(hào)檢測(cè)一次,把對(duì)應(yīng)的值作為D0位數(shù)據(jù)。

(4)再隔16個(gè)接收時(shí)鐘,對(duì)輸入信號(hào)檢測(cè)一次,把對(duì)應(yīng)的值作為D1位數(shù)據(jù),直到全部數(shù)據(jù)位都輸入。

(5)檢驗(yàn)奇偶檢驗(yàn)位。

(6)接收到規(guī)定的數(shù)據(jù)位個(gè)數(shù)和校驗(yàn)位之后,通信接口電路希望收到停止位(邏輯1),若此時(shí)未收到邏輯1,說明出現(xiàn)了錯(cuò)誤,在狀態(tài)寄存器中置“幀錯(cuò)誤”標(biāo)志;若沒有錯(cuò)誤,對(duì)全部數(shù)據(jù)位進(jìn)行奇偶校驗(yàn),無校驗(yàn)錯(cuò)時(shí),把數(shù)據(jù)位從移位寄存器中取出送至數(shù)據(jù)輸入寄存器,若校驗(yàn)錯(cuò),在狀態(tài)寄存器中置“奇偶錯(cuò)”標(biāo)志。

(7)本幀信息全部接收完,把線路上出現(xiàn)的高電平作為空閑位。

(8)當(dāng)信號(hào)再次變?yōu)榈蜁r(shí),開始進(jìn)入下一幀的檢測(cè)。

以上就是異步通信中數(shù)據(jù)發(fā)送和接收的全過程了。

三、基本概念

為了更好的理解串口通信,我們還需要了解幾個(gè)串口通信當(dāng)中的基本概念。

(1)發(fā)送時(shí)鐘:發(fā)送數(shù)據(jù)時(shí),首先將要發(fā)送的數(shù)據(jù)送入移位寄存器,然后在發(fā)送時(shí)鐘的控制下,將該并行數(shù)據(jù)逐位移位輸出。

(2)接收時(shí)鐘:在接收串行數(shù)據(jù)時(shí),接收時(shí)鐘的上升沿對(duì)接收數(shù)據(jù)采樣,進(jìn)行數(shù)據(jù)位檢測(cè),并將其移入接收器的移位寄存器中,最后組成并行數(shù)據(jù)輸出。

(3)波特率因子:波特率因子是指發(fā)送或接收1個(gè)數(shù)據(jù)位所需要的時(shí)鐘脈沖個(gè)數(shù)。

四、串口接頭

常用的串口接頭有兩種,一種是9針串口(簡(jiǎn)稱DB-9),一種是25針串口(簡(jiǎn)稱DB-25)。每種接頭都有公頭和母頭之分,其中帶針狀的接頭是公頭,而帶孔狀的接頭是母頭。

可以看出,在9針串口接頭中,公頭和母頭的管腳定義順序是不一樣的,這一點(diǎn)需要特別注意。那么,這個(gè)管腳都有什么作用呢?

9針串口和25針串口常用管腳的功能說明如圖所示。

單來說,同步通信是一種比特同步通信技術(shù),要求發(fā)收雙方具有同頻同相的同步時(shí)鐘信號(hào),只需在傳送報(bào)文的最前面附加特定的同步字符,使發(fā)收雙方建立同步,此后便在同步時(shí)鐘的控制下逐位發(fā)送/接收.

相對(duì)于同步通信,異步通信在發(fā)送字符時(shí),所發(fā)送的字符之間的時(shí)隙可以是任意的.但是接收端必須時(shí)刻做好接收的準(zhǔn)備(如果接收端主機(jī)的電源都沒有加上,那么發(fā)送端發(fā)送字符就沒有意義,因?yàn)榻邮斩烁緹o法接收).發(fā)送端可以在任意時(shí)刻開始發(fā)送字符,因此必須在每一個(gè)字符的開始和結(jié)束的地方加上標(biāo)志,即加上開始位和停止位,以便使接收端能夠正確地將每一個(gè)字符接收下來.異步通信的好處是通信設(shè)備簡(jiǎn)單、便宜,但傳輸效率較低(因?yàn)殚_始位和停止位的開銷所占比例較大).同步通信和異步通信是兩種不同的通信方式,它們的區(qū)別主要有以下幾點(diǎn):

- 同步通信要求發(fā)送方和接收方的時(shí)鐘頻率一致,或者有一個(gè)固定的時(shí)間間隔來傳輸數(shù)據(jù),而異步通信則不需要時(shí)鐘同步,發(fā)送方可以在任意時(shí)間發(fā)送數(shù)據(jù),只需要在每個(gè)數(shù)據(jù)單元的開始和結(jié)束加上標(biāo)志位1。

- 同步通信效率較高,因?yàn)闆]有額外的標(biāo)志位,也不需要等待接收方的響應(yīng),但是同步通信也較復(fù)雜,需要雙方時(shí)鐘的誤差很小,或者有一個(gè)可靠的同步機(jī)制1。異步通信則相對(duì)簡(jiǎn)單,容錯(cuò)率高,但是效率較低,因?yàn)樾枰砑訕?biāo)志位,也可能造成數(shù)據(jù)的不連續(xù)1。

- 同步通信可以用于點(diǎn)對(duì)多點(diǎn)的通信場(chǎng)景,例如廣播或多播2。異步通信則只適用于點(diǎn)對(duì)點(diǎn)的通信場(chǎng)景,例如串行通信2。

同步通信和異步通信各有優(yōu)缺點(diǎn),適用于不同的應(yīng)用場(chǎng)景。一般來說,當(dāng)數(shù)據(jù)量大、實(shí)時(shí)性要求高、傳輸距離短時(shí),可以采用同步通信;當(dāng)數(shù)據(jù)量小、實(shí)時(shí)性要求低、傳輸距離長(zhǎng)時(shí),可以采用異步通信3。

UART、SPI和I2C是三種常見的串行通信協(xié)議。它們分別屬于異步通信、同步通信和同步通信?。具體來說:

- UART(Universal Asynchronous Receiver/Transmitter)是一種通用的異步串行收發(fā)器,它可以在兩個(gè)設(shè)備之間進(jìn)行全雙工的異步串行通信?。UART在每個(gè)數(shù)據(jù)字節(jié)的前后加上開始位和停止位,以便接收方能夠識(shí)別數(shù)據(jù)的邊界?。

- SPI(Serial Peripheral Interface)是一種高速的同步串行外設(shè)接口,它可以在一個(gè)主設(shè)備和多個(gè)從設(shè)備之間進(jìn)行全雙工的同步串行通信?。SPI使用一個(gè)時(shí)鐘線來同步數(shù)據(jù)的傳輸,同時(shí)使用一個(gè)片選線來選擇目標(biāo)從設(shè)備?。

- I2C(Inter-Integrated Circuit)是一種低速的同步串行總線,它可以在多個(gè)主設(shè)備和多個(gè)從設(shè)備之間進(jìn)行半雙工的同步串行通信?。I2C使用一個(gè)時(shí)鐘線和一個(gè)數(shù)據(jù)線來傳輸數(shù)據(jù),并使用從設(shè)備的地址來識(shí)別目標(biāo)設(shè)備?。

聲明:該篇文章為本站原創(chuàng),未經(jīng)授權(quán)不予轉(zhuǎn)載,侵權(quán)必究。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉