我們都知道數(shù)據(jù)通訊就是兩個(gè)通訊主體之間發(fā)送、接收數(shù)字信號(hào)。假設(shè)要發(fā)送以下數(shù)據(jù):12,23,34,45,56,67,78,89。接收方要正確接收這些數(shù)據(jù),就必須知道數(shù)據(jù)什么時(shí)候開始發(fā)送,什么時(shí)候結(jié)束,要不然,可能會(huì)將數(shù)據(jù)接收成22,33,44,55,66,77,88。
對(duì)于同步通訊協(xié)議,發(fā)送方在發(fā)送數(shù)據(jù)之前先發(fā)出一個(gè)特殊的電信號(hào),讓接收方準(zhǔn)備好接收數(shù)據(jù),然后發(fā)送方就將以上數(shù)據(jù)全部連續(xù)發(fā)出,發(fā)送完畢后,再發(fā)送一個(gè)特殊的電信號(hào)表示數(shù)據(jù)發(fā)送結(jié)束。我們可以用以下圖表示同步信號(hào)通訊。
數(shù)據(jù)包
然后,接收方按照事先約定,即每?jī)晌灰粋€(gè)數(shù)值,將數(shù)據(jù)包分成一個(gè)個(gè)數(shù)值。
對(duì)于異步通訊協(xié)議,發(fā)送方每發(fā)送一個(gè)數(shù)據(jù)都要發(fā)一“開始”標(biāo)志,每個(gè)數(shù)據(jù)發(fā)送結(jié)束后都發(fā)出一個(gè)“結(jié)束”標(biāo)志。用下圖表示異步通訊信號(hào):
因此,POS通訊中的同步、異步是兩種不同的通訊協(xié)議,它是信號(hào)發(fā)送方和信號(hào)接收方的一種約定。通信過(guò)程中,同步信號(hào)的作用非常重要,尤其對(duì)于串行方式的數(shù)據(jù)通信。同步信號(hào)的作用簡(jiǎn)單講有兩個(gè)作用,1是“尺子”的作用,用于丈量一個(gè)比特的寬度;2是決定丈量的“起點(diǎn)”位置。收發(fā)雙方必須采用相同的“尺子”,從相同的“起點(diǎn)”開始丈量數(shù)據(jù)線上的電平變化,才能保證數(shù)據(jù)通信的正確。
因此,任何方式的串行通信,同步的過(guò)程必須有,也就是說(shuō)通信雙方必須保持“同步”。我們看最典型的SPI、I2C,在這兩種方式中,都專門有一個(gè)CLK信號(hào)線,由通信的一方產(chǎn)生一個(gè)CLK,通過(guò)CLK信號(hào)線傳到另一方,雙方就就按這個(gè)CLK的控制工作,CLK的寬度就是一個(gè)數(shù)據(jù)位的寬度,而CLK的上升或下降沿,就是“起點(diǎn)”標(biāo)志。這種在通信過(guò)程中明顯有個(gè)CLK線專門傳送同步信號(hào)的方式,就是同步通信。同步通信由于有專用的CLK線控制,因此通信雙方比較容易實(shí)現(xiàn)“同步”,因此速度比較快。但是對(duì)于長(zhǎng)距離的通信,同步方式就不行了,1是由于需要專門一個(gè)信號(hào)線,成本提高。2是通信線越長(zhǎng),上面的干擾就越多,通信的速度也上不去。因此同步方式多是作為同一PCB板上芯片級(jí)之間的通信接口使用。而長(zhǎng)距離通信多使用“異步”通信方式,這里的“異步”不是指通信雙方不需要同步,而是指通信雙方之間不使用專用的同步信號(hào)線傳送CLK,而是各自僅依賴于自己的系統(tǒng)時(shí)鐘(這個(gè)就是異步的!),再根據(jù)約定的規(guī)程,調(diào)節(jié)自己的“步伐”達(dá)到雙方的同步。同步通信通常要比異步通信快速得多。接收方不必對(duì)每個(gè)字符進(jìn)行開始和停止的操作。一旦檢測(cè)到幀同步字符,它就在接下來(lái)的數(shù)據(jù)到達(dá)時(shí)接收它們。另外,同步通信的開銷也比較少。例如,一個(gè)典型的幀可能有500字節(jié)(即4000比特)的數(shù)據(jù),其中可能只包含100比特的開銷。這時(shí),增加的比特位使通信的比特總數(shù)增加2.5%,這與異步通信中25 %的增值要小得多。隨著數(shù)據(jù)幀中實(shí)際數(shù)據(jù)比特位的增加,開銷比特所占的百分比將相應(yīng)地減少。但是,數(shù)據(jù)比特位越長(zhǎng),緩存數(shù)據(jù)所需要的緩沖區(qū)也越大,這就限制了一個(gè)幀的大小。另外,幀越大,它占據(jù)通信媒體的連續(xù)時(shí)間也越長(zhǎng)。在極端的情況下,這將導(dǎo)致其他用戶等得太久。
如果掌握這些最基本的概念,那么你能了解和面對(duì)通信中出現(xiàn)的問(wèn)題,找到解決辦法。比如對(duì)于UART的通信,你就知道為什么要規(guī)定雙方要采用相同的幀結(jié)構(gòu),波特率了,如果設(shè)置錯(cuò)誤會(huì)導(dǎo)致什么現(xiàn)象?而此時(shí)對(duì)雙方的系統(tǒng)時(shí)鐘不僅要求要更加準(zhǔn)確和穩(wěn)定,而且還要使用11.0592這些特殊的晶體,如果使用12M晶體,會(huì)產(chǎn)生什么后果等等。
最后總結(jié)一下1,異步通信是面向字符的通信,而同步通信是面向比特的通信。2,異步通信的單位是字符而同步通信的單位是楨。3,異步通信通過(guò)字符起止的開始和停止碼抓住再同步的機(jī)會(huì),而同步通信則是以數(shù)據(jù)中抽取同步信息。4,異步通信對(duì)時(shí)序的要求較低,同步通信往往通過(guò)特定的時(shí)鐘線路協(xié)調(diào)時(shí)序。5,異步通信相對(duì)于同步通信效率較低。
-
異步通信
+關(guān)注
關(guān)注
1文章
57瀏覽量
10141 -
同步通信
+關(guān)注
關(guān)注
0文章
28瀏覽量
9159
原文標(biāo)題:同步和異步通信區(qū)別 一點(diǎn)就透
文章出處:【微信號(hào):weixin21ic,微信公眾號(hào):21ic電子網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論