當前位置:首頁 > 公眾號精選 > 嵌入式大雜燴
[導讀]在本系列文章中,我們將討論三種最常見協(xié)議的基礎(chǔ)知識:串行外設(shè)接口(SPI),內(nèi)部集成電路(I2C)和通用異步接收器/發(fā)送器(UART)驅(qū)動通信。

將微控制器連接到傳感器,顯示器或其他模塊時,您是否考慮過兩個設(shè)備之間如何通信?他們到底在說什么?他們?nèi)绾文軌蛳嗷ダ斫猓?/span>

電子設(shè)備之間的通信就像人類之間的通信,雙方都需要說同一種語言。在電子學中,這些語言稱為通信協(xié)議。幸運的是,在構(gòu)建大多數(shù)DIY電子項目時,我們只需要了解一些通信協(xié)議。在本系列文章中,我們將討論三種最常見協(xié)議的基礎(chǔ)知識:串行外設(shè)接口(SPI),內(nèi)部集成電路(I2C)和通用異步接收器/發(fā)送器(UART)驅(qū)動通信。

首先,我們將從一些關(guān)于電子通信的基本概念開始,然后詳細解釋SPI的工作原理。

SPI,I2C和UART比USB,以太網(wǎng),藍牙和WiFi等協(xié)議慢得多,但它們更簡單,使用的硬件和系統(tǒng)資源也更少。SPI,I2C和UART非常適用于微控制器之間以及微控制器和傳感器之間的通信,在這些傳感器中不需要傳輸大量高速數(shù)據(jù)。




串行與并行通信

電子設(shè)備通過物理連接在設(shè)備之間的導線發(fā)送數(shù)據(jù)位來相互通信,有點像一個字母中的字母,除了26個字母(英文字母表中),一個位是二進制的,只能是1或0。通過電壓的快速變化,位從一個設(shè)備傳輸?shù)搅硪粋€設(shè)備。在工作電壓為5V的系統(tǒng)中,0位作為0V的短脈沖通信,1位通過5V的短脈沖通信。

數(shù)據(jù)位可以并行或串行形式傳輸。在并行通信中,數(shù)據(jù)位是同時發(fā)送的,每個都通過單獨的線路。下圖顯示了二進制(01000011)中字母“C”的并行傳輸:

在串行通信中,通過單線逐個發(fā)送這些位。下圖顯示了二進制(01000011)中字母“C”的串行傳輸:



SPI通信簡介

許多設(shè)備都采用了SPI通用通信協(xié)議。例如,SD卡模塊,RFID讀卡器模塊和2.4 GHz無線發(fā)送器/接收器都使用SPI與微控制器通信。

SPI的一個獨特優(yōu)勢是可以不間斷地傳輸數(shù)據(jù)。可以連續(xù)流發(fā)送或接收任意數(shù)量的比特。使用I2C和UART,數(shù)據(jù)以數(shù)據(jù)包形式發(fā)送,限制為特定的位數(shù)。啟動和停止條件定義每個數(shù)據(jù)包的開始和結(jié)束,因此數(shù)據(jù)在傳輸過程中會被中斷。

通過SPI通信的設(shè)備處于主從關(guān)系。主設(shè)備是控制設(shè)備(通常是微控制器),而從設(shè)備(通常是傳感器,顯示器或存儲器芯片)接收來自主設(shè)備的指令。最簡單的SPI配置是單主機,單從機系統(tǒng),但是一個主機可以控制多個從機(下面將詳細介紹)。

SPI是串行外設(shè)接口(Serial Peripheral Interface)的縮寫,是一種高速的,全雙工,同步的通信總線,并且在芯片的管腳上只占用四根線,節(jié)約了芯片的管腳,同時為PCB的布局上節(jié)省空間。



(1)MISO– Master Input Slave Output,主設(shè)備數(shù)據(jù)輸入,從設(shè)備數(shù)據(jù)輸出;


(2)MOSI– Master Output Slave Input,主設(shè)備數(shù)據(jù)輸出,從設(shè)備數(shù)據(jù)輸入;


(3)SCLK – Serial Clock,時鐘信號,由主設(shè)備產(chǎn)生;


(4)CS – Chip Select,從設(shè)備使能信號,由主設(shè)備控制。


*實際上,從設(shè)備的數(shù)量受到系統(tǒng)負載電容的限制,受主設(shè)備在電壓電平之間精確切換的能力。

SPI如何工作

時鐘
時鐘信號將來自主設(shè)備的數(shù)據(jù)位輸出與從設(shè)備的位采樣同步。在每個時鐘周期傳輸一位數(shù)據(jù),因此數(shù)據(jù)傳輸?shù)乃俣扔蓵r鐘信號的頻率決定。由于主設(shè)備配置并生成時鐘信號,因此SPI時鐘始終為主設(shè)備的時鐘。

設(shè)備共享時鐘信號的任何通信協(xié)議稱為同步。SPI是一種同步通信協(xié)議,還有一些不使用時鐘信號的異步方法。例如,在UART通信中,雙方都設(shè)置為預(yù)先配置的波特率,該波特率決定數(shù)據(jù)傳輸?shù)乃俣群蜁r間。

SPI中的時鐘信號可以使用時鐘極性和時鐘相位屬性進行修改。這兩個屬性協(xié)同工作以定義何時輸出以及何時對它們進行采樣。時鐘極性可由主機設(shè)置,以允許在時鐘周期的上升沿或下降沿輸出和采樣。時鐘相位也可以由主機設(shè)置,以便在時鐘周期的第一個邊沿或第二個邊沿上進行輸出和采樣,無論是上升還是下降。

從設(shè)備選擇
主設(shè)備可以通過將從設(shè)備的CS / SS線設(shè)置為低電壓電平來選擇要通話的從設(shè)備。在空閑非傳輸狀態(tài)中,從選擇線保持在高電壓電平。主機上可能有多個CS / SS引腳,以允許多個從機并聯(lián)連接。如果只有一個CS/SS引腳,則可以通過菊花鏈將多個從器件連接到主器件。

多個從設(shè)備
SPI可以設(shè)置為使用單個主設(shè)備和單個從設(shè)備進行操作,也可以設(shè)置通過單個主設(shè)備控制多個從設(shè)備。有兩種方法可以將多個從站連接到主站。如果主機有多個從機選擇引腳,則從機可以并聯(lián)連接,如下所示:

如果只有一個從選擇引腳可用,則從器件可以菊花鏈式連接,如下所示:



MOSI和MISO

主機通過MOSI線串行發(fā)送數(shù)據(jù)到從機。從器件接收MOSI引腳上的主器件發(fā)送的數(shù)據(jù)。從主設(shè)備發(fā)送到從設(shè)備的數(shù)據(jù)通常首先以最高有效位發(fā)送。

從機還可以通過串行的MISO線路將數(shù)據(jù)發(fā)送回主機。從從設(shè)備發(fā)送回主設(shè)備的數(shù)據(jù)通常首先以最低有效位發(fā)送。

SPI數(shù)據(jù)傳輸步驟
1.主機輸出時鐘信號:
2.主器件將SS / CS引腳切換到低電壓狀態(tài),從而激活從器件:

3.主機沿MOSI線一次一位地向從機發(fā)送數(shù)據(jù)。從機在接收到的位時讀取這些位:

4.如果需要響應(yīng),從站將沿著MISO線一次一位地向主站返回數(shù)據(jù)。主機在接收到的位時讀取這些位:



SPI的優(yōu)點和缺點

使用SPI有一些優(yōu)點和缺點,如果在不同的通信協(xié)議之間進行選擇,您應(yīng)該根據(jù)項目的要求知道何時使用SPI:

優(yōu)點
沒有啟動和停止位,因此數(shù)據(jù)可以連續(xù)流式傳輸而不會中斷
沒有復(fù)雜的從機尋址系統(tǒng),如I2C
比I2C更高的數(shù)據(jù)傳輸速率(幾乎快兩倍)
單獨的MISO和MOSI線,因此可以同時發(fā)送和接收數(shù)據(jù)

缺點
使用四根線(I2C和UART使用兩根)
無法確認數(shù)據(jù)已成功接收(I2C已執(zhí)行此操作)
沒有錯誤檢查,如UART中的奇偶校驗位
僅允許單個主機

最后

以上就是本次的分享,如果覺得文章不錯,轉(zhuǎn)發(fā)、在看,也是我們繼續(xù)更新得動力。

猜你喜歡:

串口打印知多少?

串口通訊你真的會了嗎?不妨看看這些經(jīng)驗


??????????????????????????

免責聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

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

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

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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