UART芯片是專為計(jì)算機(jī)與連接到計(jì)算機(jī)串行端口的其他外圍設(shè)備之間的異步串行通信而設(shè)計(jì)的單一大規(guī)模集成芯片。
SPI是一種接口總線,允許微控制器與SD卡、傳感器和移位寄存器等外圍設(shè)備進(jìn)行通信。
SPI協(xié)議比UART顯著更快。
如果您使用嵌入式系統(tǒng),那么了解所使用的各種技術(shù)和通信協(xié)議是很重要的。通信協(xié)議使系統(tǒng)中所連接的設(shè)備——如傳感器、科學(xué)儀器、計(jì)算機(jī)和顯示器——能夠相互通信。正在使用的一些最常見的通信協(xié)議是通用異步接收器/發(fā)射器(UART)、串行外圍接口(SPI)和互集成電路(I2C)。所有這三種通信協(xié)議都允許數(shù)字串行通信,但它們在硬件、速度、針腳的數(shù)量和連接設(shè)備的數(shù)量等各個(gè)方面都是不同的。在本文中,我們將比較UART和。SPI的速度和突出了UART和SPI之間的其他幾個(gè)值得注意的關(guān)鍵差異。
(一)UART通信
UART是提供全雙工串行通信的最常見的協(xié)議。除了協(xié)議,它還是微控制器中的硬件外設(shè)。UART芯片是一種單一的、大規(guī)模的集成芯片,設(shè)計(jì)用于計(jì)算機(jī)和連接到計(jì)算機(jī)的串行端口的其他外圍設(shè)備之間的異步串行通信。
從物理上講,UART是一種微芯片,它從一個(gè)系統(tǒng)發(fā)送和接收數(shù)據(jù)到另一個(gè)系統(tǒng)。UART芯片的目的是將傳入的串行數(shù)據(jù)轉(zhuǎn)換為并行數(shù)據(jù),以便系統(tǒng)讀取,然后將傳出的并行數(shù)據(jù)還原為串行數(shù)據(jù),然后將其交換到其他系統(tǒng)。UART芯片可以看作是一種數(shù)據(jù)終端設(shè)備(DTE)設(shè)備,它使通信總線中的數(shù)據(jù)能夠進(jìn)行串行到并行的轉(zhuǎn)換。
在UART通信中,兩個(gè)UART芯片可以相互通信,這就是為什么UART通信只需要兩條數(shù)據(jù)線就可以在傳輸和接收UART之間進(jìn)行數(shù)據(jù)流的原因。數(shù)據(jù)流從發(fā)送UART的發(fā)送引腳轉(zhuǎn)到接收UART的接收引腳。傳輸?shù)腢ART負(fù)責(zé)將并行數(shù)據(jù)從外圍設(shè)備轉(zhuǎn)換為串行數(shù)據(jù),并將其串行傳輸?shù)浇邮盏降腢ART。接收UART是將串行數(shù)據(jù)轉(zhuǎn)換為接收外圍設(shè)備的并行數(shù)據(jù)的地方。
(二)SPI通信協(xié)議
與UART是一種集成在微控制器上的電路不同,SPI只是一種通信協(xié)議。它是一個(gè)接口總線,允許微控制器和外圍設(shè)備之間的通信,如SD卡,傳感器,和移位寄存器。SPI串行通信協(xié)議適用于支持時(shí)鐘串行流的電子設(shè)備。這意味著,與UART相比,SPI協(xié)議是同步的。
SPI協(xié)議允許通過串行數(shù)據(jù)流入/串行數(shù)據(jù)輸出的方法實(shí)現(xiàn)高速數(shù)據(jù)流。在SPI中,總線上的設(shè)備之間的高速數(shù)據(jù)交換包括至少四個(gè)信號:
時(shí)鐘(CLK)
(SDI)中的串行數(shù)據(jù)
串行數(shù)據(jù)輸出(SDO)
一個(gè)芯片選擇(CS)信號
在SPI通信中,由控制器設(shè)備產(chǎn)生的時(shí)鐘信號提供同步。SDI和SDO是所有已連接的設(shè)備所共享的信號,而為每個(gè)外圍設(shè)備分配了一個(gè)唯一的外圍選擇線。因此,要實(shí)現(xiàn)SPI全雙工通信,至少需要四根布線。
在一個(gè)SPI實(shí)現(xiàn)中可以連接多個(gè)外圍設(shè)備。隨著外圍設(shè)備數(shù)量的增加,實(shí)際的電線數(shù)量比外圍設(shè)備的數(shù)量多3條。用于通信的外圍設(shè)備的選擇是基于控制器設(shè)備在特定外圍選擇線上的低拉線。
到目前為止,我們已經(jīng)討論了UART和SPI的細(xì)節(jié);現(xiàn)在,讓我們比較一下。
(三)UART vs。SPI速度
當(dāng)比較UART和。SPI,只有一些相似之處:
兩者都支持全雙工串行通信。
兩者都用于短距離通信。
除此之外,UART和SPI在速度、連接的設(shè)備數(shù)量、引腳數(shù)量、大小和同步等方面都存在差異。
1.速度
速度是通信協(xié)議中最重要的特征之一,UART和速度之間有很多區(qū)別。SPI速度。SPI協(xié)議比UART要快得多。SPI提供高速同步通信,而UART設(shè)備之間的通信速度比SPI協(xié)議低三倍。
2.速率
UART以比SPI更低的數(shù)據(jù)速率在設(shè)備之間傳輸串行數(shù)據(jù)。由于異步通信類型,相互通信的UART設(shè)備的數(shù)據(jù)速率必須相等。在UART通信中,最大數(shù)據(jù)速率通常在230 kbps到460 kbps之間。與UART相比,對于SPI接口沒有指定的數(shù)據(jù)速率限制。在SPI通信總線中,數(shù)據(jù)速率通常約為10 Mbps到20 Mbps。
考慮UART vs。SPI速度,從兩個(gè)協(xié)議的短距離發(fā)送數(shù)據(jù)的最快通信協(xié)議是SPI。SPI協(xié)議最適合于需要高速運(yùn)行的低功耗應(yīng)用程序。SPI接口的高速信號只限制了其在短距離上的數(shù)據(jù)傳輸。要在更遠(yuǎn)的距離發(fā)送數(shù)據(jù),必須降低時(shí)鐘速度并合并專門的驅(qū)動(dòng)芯片。
-
微控制器
+關(guān)注
關(guān)注
48文章
7456瀏覽量
150858 -
芯片
+關(guān)注
關(guān)注
452文章
50218瀏覽量
420962 -
計(jì)算機(jī)
+關(guān)注
關(guān)注
19文章
7371瀏覽量
87634 -
SPI
+關(guān)注
關(guān)注
17文章
1688瀏覽量
91215 -
uart
+關(guān)注
關(guān)注
22文章
1219瀏覽量
101121
發(fā)布評論請先 登錄
相關(guān)推薦
評論