在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

串行通信接口SPI接口介紹

jf_78858299 ? 來源:長點芯 ? 作者:阿杰 ? 2023-04-04 15:15 ? 次閱讀

前言:

接口的存在是使得芯片的設計達到 模塊化modularity ),就像在第一篇文章所講到的,我們可以通過不同的IP組成一個功能完備的芯片(或稱之為 SoC )。

芯片的接口可以分為兩大類:片上通信接口片外通信接口 。以AMBA為代表的片上接口主要有靈活,效率高的優勢,而片外接口的選擇則更加廣泛,根據不同的成本需求或是性能需求,能夠選擇的片外通信接口有IIC,SPI等。

今天討論的SPI接口是一種十分常用的片外通信接口,經常作為芯片與片外存儲器(多為 serial nand flash )的通信接口。同時,硬件物理接口也是應屆生面試時被提問最多的問題之一。有意在畢業后從事計算機硬件行業的朋友們可以在準備應聘的時候多多儲備這方面的知識。

SPI接口介紹

SPI是一種串行通信接口,全稱是 Serial Peripheral Interface 。它是一種 full-duplex (全雙工:支持發射端TX與接收端RX同時雙向傳輸數據)接口。最基礎的SPI接口由四根線組成:

  1. SCLK(Serial Clock)
  2. SS(Slave Select或CS:Chip Select)
  3. MOSI(Mater Out Slave In)
  4. MISO(Mater In Slave Out)

如下圖。

圖片

SPI接口pin

1. SCLK:

首先是這根時鐘線,這也是將接口分為 Synchronous (同步接口)與 asynchronous (異步接口)的重要標志。由于異步接口發送與采集數據沒有一個統一控制信號,所以沒法確保發送端與接收端有相同的收發 data rate, 這給現在許多使用同步設計方法的芯片帶來的很多難題,所以這也是目前同步接口更受歡迎的原因。

圖片

異步通信接口

圖片

同步通信接口

不過當然了,異步接口也有它的好處。可以在數據的起始位和終止位來添加兩個 flag (標記符)來控制數據的接收,而且需要在使用前確保兩個模塊收發數據的速率是相同的。

所以要是有了這個由 Master (一般是一個 microcontroller )發出的CLK給slave,slave端就知道什么時候接受數據了,可以是上升沿也可以是下降沿,一般由datasheet決定。時鐘的頻率也取決于slave能夠正常工作的時鐘頻率范圍,一般在80MHz左右。

2.SS/CS:

因為SPI接口有時候會連有多個Slave(一般不超過三個),所以隨著slave的增加,master端就會需要越來越多的pin口。當Master與slave處于斷鏈狀態時,SS/CS一般是置成高位的,這樣在master決定要給與哪個slave交互的時候就會把相應的SS/CS置低,稱作 active low

3.MISO/MOSI:

剩下的幾個接口都是SPI的數據線,在每個時鐘周期內,master都會向slave發送1bit數據,slave也可以同時向master發送1bit數據。所以說假設某個SPI接口正工作在50MHz的時鐘頻率,那么它的數據傳輸速率可以達到50Mbps/100Mbps(隨著數據線的增加SPI的數據傳輸速率還能增大更多)。相較于普通的IIC接口已經高出不少了。這也是為什么對于許多傳感器來說會選擇SPI接口。

圖片

多位寬數據pin口的SPI通信接口

其實呢,SPI作為一個常用的外設接口,卻不存在一個標準,因此沒有用于驗證給定產品的接口一致性的基準。。所以SPI可以說是一個 * de facto standard ( 在實踐中被接受,但尚未經過任何正式程序以達成共識的標準,甚至可能沒有公開可用的文檔 )。* * *

A de facto standard :is one that has become accepted in practice but has not undergone any formal process to obtain consensus and may not even have publicly available documentation。

并且在SPI中沒有任何通信流程控制單元,SPI的硬件實現有時候就是靠一個簡單的 shift register ,時鐘這個唯一的控制信號的穩定性至關重要。除此之外,如何確保數據的傳輸是否準確也十分重要,一般只能通過軟件來檢測。在一些 real-time embedded system (實時嵌入式系統)中,軟件必須以比數據到達更快的速度處理接收到的數據。通過接收端的FIFO Buffer,可以緩解此問題。SPI接口中沒有嵌入到錯誤檢測和校正功能中。如果需要,必須在軟件中實現錯誤檢測/糾正。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 存儲器
    +關注

    關注

    38

    文章

    7637

    瀏覽量

    166540
  • 接口
    +關注

    關注

    33

    文章

    8961

    瀏覽量

    153287
  • SPI
    SPI
    +關注

    關注

    17

    文章

    1785

    瀏覽量

    94904
  • 通信接口
    +關注

    關注

    3

    文章

    251

    瀏覽量

    31396
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    基于PC/104 總線與CPLD 的SPI 接口設計

    本文根據SPI 同步串行接口通信協議,介紹了在CPLD 中利用VHDL 語言實現PC/104 總線擴展
    發表于 05-30 09:28 ?41次下載

    SPI接口讀寫串行EEPROM

    SPI接口讀寫串行EEPROM:93C46為采用3線串行同步總線SPI接口方式的EEPROM,其
    發表于 09-19 11:39 ?89次下載

    理解ATE SPI (串行外設接口)

    理解ATE SPI (串行外設接口) 大多數Maxim® ATE設計都采用了一個串行接口,以便從外部控制器件。這種
    發表于 01-26 16:34 ?2796次閱讀
    理解ATE <b class='flag-5'>SPI</b> (<b class='flag-5'>串行</b>外設<b class='flag-5'>接口</b>)

    串行接口SPI接口應用設計

    使用的同步串行三線SPI 接口,可以方便的連接采用SPI 通信協議的外圍或另一片AVR 單片機,實現在短距離內的高速同步
    發表于 11-07 17:28 ?80次下載

    AVR單片機串行接口SPI接口應用設計

    使用的同步串行三線SPI接口,可以方便的連接采用SPI通信協議的外圍或另一片AVR單片機,實現在短距離內的高速同步
    發表于 11-09 17:37 ?4069次閱讀

    一文讀懂SPI串行外設接口

    SPI總線系統是一種同步串行外設接口,它可以使MCU與各種外圍設備以串行方式進行通信以交換信息。正是由于有了
    發表于 04-27 15:19 ?1.1w次閱讀

    基于MSP430F2的SPI串行同步通信

    通用串行通信接口(USCI)采用一個硬件模塊支持多種串行通信方式。本文檔內容介紹同步外圍
    發表于 09-21 15:34 ?2次下載
    基于MSP430F2的<b class='flag-5'>SPI</b><b class='flag-5'>串行</b>同步<b class='flag-5'>通信</b>

    串行外設接口SPI通信協議的應用

    SPI串行外設接口(SerialPeripheral Interface)的縮寫。SPI,是一種高速的,全雙工,同步的通信總線,并且在芯片
    發表于 01-09 14:58 ?2059次閱讀
    <b class='flag-5'>串行</b>外設<b class='flag-5'>接口</b><b class='flag-5'>SPI</b><b class='flag-5'>通信</b>協議的應用

    嵌入式硬件通信接口協議中的串行通信接口-SPI

    本節繼續講嵌入式硬件通信接口協議中的另外一個串行通信接口-SPI。相比于UART串口協議,
    發表于 02-05 11:35 ?1822次閱讀
    嵌入式硬件<b class='flag-5'>通信</b><b class='flag-5'>接口</b>協議中的<b class='flag-5'>串行</b><b class='flag-5'>通信</b><b class='flag-5'>接口</b>-<b class='flag-5'>SPI</b>

    Firefly-RK3128--SPI接口介紹

    SPI是一種高速的,全雙工,同步串行通信接口,用于連接微控制器、傳感器、存儲設備等,本文以指紋識別模塊為例簡單介紹
    的頭像 發表于 11-28 16:32 ?3367次閱讀
    Firefly-RK3128--<b class='flag-5'>SPI</b><b class='flag-5'>接口</b><b class='flag-5'>介紹</b>

    通信接口的作用_常用的串行通信接口有哪些

    本文首先介紹通信接口的作用,其次闡述了通信接口的種類,最后介紹了常用的
    發表于 03-28 10:33 ?1.8w次閱讀

    基于SPI串行總線接口的Verilog實現

    與各種外圍接口器件以串行方式進行通信、交換信息。本文簡述了SPI總線的特點,介紹了其4條信號線,SPI
    的頭像 發表于 05-29 10:16 ?5411次閱讀
    基于<b class='flag-5'>SPI</b><b class='flag-5'>串行</b>總線<b class='flag-5'>接口</b>的Verilog實現

    SPI 串行外設接口

    **SPI簡介:**串行外設接口(Serial Peripheral Interface Bus)SPI是一種用于芯片通信的同步
    發表于 12-20 19:31 ?9次下載
    <b class='flag-5'>SPI</b> <b class='flag-5'>串行</b>外設<b class='flag-5'>接口</b>

    SPI串行外設接口設計實現

    SPI 全稱為 Serial Peripheral Interface,譯為串行外設接口。它是 Motorola 公司推出的一種相對高速的同步、全雙工的通信總線協議。
    發表于 05-29 15:40 ?1851次閱讀
    <b class='flag-5'>SPI</b><b class='flag-5'>串行</b>外設<b class='flag-5'>接口</b>設計實現

    串行通信接口SPI與QSPI的區別

    在嵌入式系統的世界里,選擇正確的通信技術可以對項目的性能和可擴展性產生重大影響。讓我們比較兩個流行的串行通信接口SPI
    的頭像 發表于 04-09 15:24 ?979次閱讀
    <b class='flag-5'>串行</b><b class='flag-5'>通信</b><b class='flag-5'>接口</b><b class='flag-5'>SPI</b>與QSPI的區別
    主站蜘蛛池模板: 国产小视频在线免费 | sihu永久在线播放地址 | 色色色色网| 婷婷视频网 | 天天干天天插天天射 | 快色视频免费观看 | 四只虎免费永久观看 | 4438全国最大成人免费高清 | 91成人午夜性a一级毛片 | 亚洲男人的天堂久久无 | 国产一二三区在线观看 | 四虎最新网址入口 | 看片免费黄 | 51精品视频免费国产专区 | 亚色网站 | 一级特黄aaa大片在线观看 | 糖心vlog麻豆精东影业传媒 | 偷偷操不一样的久久 | 一级特色黄大片 | 久久精品最新免费国产成人 | 精品久久久久久中文字幕欧美 | 日本免费一级 | 欧美三级黄色 | 久久女同| 四虎综合九九色九九综合色 | 免费一级特黄3大片视频 | 免费一级特黄 | 狠狠色噜噜狠狠狠狠黑人 | 日本免费黄色片 | 色综合激情丁香七月色综合 | 1000rt人体1000欧美 | 色老头在线官方网站 | 成 人 a v黄 色 | 国产一级一片免费播放视频 | 天天干天天噜 | 国内视频一区二区 | 男女无遮挡一进一出性视频 | 国产亚洲一区二区三区啪 | 四虎在线永久视频观看 | 午夜色片 | 大香伊在人线免费 |