<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 輕松學(xué)PIC之SPI總線(xiàn)篇

輕松學(xué)PIC之SPI總線(xiàn)篇

作者: 時(shí)間:2011-08-30 來(lái)源:網(wǎng)絡(luò ) 收藏

  一、基本概念

  SPI ( Serial Peripheral Interface ———串行外設接口) 總線(xiàn)是Motorola 公司推出的一種同步串行接口技術(shù)。SPI 總線(xiàn)系統是一種同步串行外設接口, 允許MCU 與各種外圍設備( 如閃存、數摸轉換、網(wǎng)絡(luò )控制器、從MCU) 以串行方式進(jìn)行通信、數據交換。

  SPI,是一種高速的,全雙工,同步的通信總線(xiàn),并且在芯片的管腳上只占用四根線(xiàn),節約了芯片的管腳,同時(shí)為PCB 的布局上節省空間,提供方便,正是出于這種簡(jiǎn)單易用的特性,現在越來(lái)越多的芯片集成了這種通信協(xié)議。其工作模式有兩種:主模式和從模式。SPI 是一種允許一個(gè)主設備啟動(dòng)一個(gè)從設備的同步通訊的協(xié)議,從而完成數據的交換。

  也就是SPI 是一種規定好的通訊方式。這種通信方式的優(yōu)點(diǎn)是占用端口較少,一般4 根就夠基本通訊了(不算電源線(xiàn))。同時(shí)傳輸速度也很高。一般來(lái)說(shuō)要求主設備要有SPI 控制器(也可用模擬方式),就可以與基于SPI 的芯片通訊了。

  二、系統結構

  SPI 系統可直接與各個(gè)廠(chǎng)家生產(chǎn)的多種標準外圍器件直接接口, 一般使用4 條線(xiàn): 串行時(shí)鐘線(xiàn)(SCK) 、主機輸入/ 從機輸出數據線(xiàn)SDO、主機輸出/ 從機輸入數據線(xiàn)SDI 和低電平有效的從機選擇線(xiàn)SS。SDI 和SDO 用于串行接收和發(fā)送數據,數據高位在前低位在后。在SPI 設置為主機方式時(shí),SDO 是主機讀從機,SDI 是主機寫(xiě)從機。SCK 用于提供時(shí)鐘脈沖將數據一位位地傳送。SPI 總線(xiàn)器件間傳送數據框圖如圖1 所示。

  三、的接口特性

  利用SPI 總線(xiàn)可在軟件的控制下構成各種系統。如1 個(gè)主MCU 和幾個(gè)從MCU、幾個(gè)從MCU 相互連接構成多主機系統(分布式系統)、1 個(gè)主MCU 和1 個(gè)或幾個(gè)從I / O 設備所構成的各種系統等。在大多數應用場(chǎng)合,可使用1個(gè)MCU 作為主控機來(lái)控制數據,并向1 個(gè)或幾個(gè)從外圍器件傳送該數據。從器件只有在主機發(fā)命令時(shí)才能接收或發(fā)送數據。其數據的傳輸格式總是高位(MSB)在前,低位(LSB)在后。

  當一個(gè)主控機通過(guò)SPI 與幾種不同的串行I / O 芯片相連時(shí),必須使用每片的允許控制端,這可通過(guò)MCU 的I / O 端口輸出線(xiàn)來(lái)實(shí)現。

  但應特別注意這些串行I / O 芯片的輸入輸出特性:首先是輸入芯片的串行數據輸出是否有三態(tài)控制端。平時(shí)未選中芯片時(shí),輸出端應處于高阻態(tài)。若沒(méi)有三態(tài)控制端,則應外加三態(tài)門(mén)。否則MCU 的MISO端只能連接一個(gè)外設。其次是外設的串行數據輸入是否有允許控制端。

  因為只有在此芯片允許時(shí),SCK 脈沖才把串行數據移入該外設;在禁止時(shí),SCK 對外設無(wú)影響。若原來(lái)沒(méi)有允許控制端,則增加控制門(mén);當然,也可以在SPI 總線(xiàn)上只連接1 個(gè)外設,就不必用允許控制。

  通過(guò)前文的原理介紹,我們已經(jīng)對SPI 總線(xiàn)的特性以及工作原理有了大致地了解,但當我們拿到一個(gè)SPI 總線(xiàn)器件時(shí)要正確地應用它,還是一時(shí)不知如何下手,比如我們現在要想把一個(gè)具體的數據存儲放器件中去,需要怎么辦呢?現在,我們來(lái)一起看一個(gè)數據存儲的例子,通過(guò)一個(gè)實(shí)例,相信會(huì )給大家帶來(lái)一個(gè)感性的認識,下面就以目前單片機系統中廣泛應用的SPI 接口的數據存儲器93C46 為例,介紹SPI器件的基本應用。

  四、93C46串行存儲器簡(jiǎn)介

  93C46 是1k 位串行EEPROM 儲存器。

  每一個(gè)儲存器都可以通過(guò)DI/DO 引腳寫(xiě)入或讀出。它的存儲容量為1024 位,內部為128×8位或64×16 位。93C46 為串行三線(xiàn)SPI 操作芯片,在時(shí)鐘時(shí)序的同步下接收數據口的指令。

  指令碼為9 位十進(jìn)制碼,具有7 個(gè)指令,讀、擦寫(xiě)使能、擦除、寫(xiě)、全擦、全寫(xiě)及擦除禁止。該芯片擦寫(xiě)時(shí)間快,有擦寫(xiě)使能保護,可靠性高,擦寫(xiě)次數可達100 萬(wàn)次, 93C46 的引腳功能圖如圖2 所示。

圖2 93C46 的引腳圖

表1 :93C46 串行EEPROM 指令格式選擇表

電度表相關(guān)文章:電度表原理




關(guān)鍵詞: PIC SPI總線(xiàn)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>