• <option id="immmk"></option>
  • <noscript id="immmk"><kbd id="immmk"></kbd></noscript>
    發布時間:2020-10-05 23:08 原文鏈接: 嵌入式硬件通信接口協議SPI:協議基礎(二)

    信號時序

    四線SPI接口的時序一般的總是先拉低從機選擇信號線SS,然后輸出SCLK,帶著數據MOSI,此時MISO為高阻態。大致如下如:

    嵌入式硬件通信接口協議-SPI(一)協議基礎

    一般有SPI接口的器件,在Spec上都會有對應的時序圖,這里分別截取SPI接口FLASH型號為GD25Q32C、SPI接口OLED型號為QG-2832TLBFG04,這兩器件的Spec內關于SPI時序部分的介紹,如下兩張截圖:

    嵌入式硬件通信接口協議-SPI(一)協議基礎

    嵌入式硬件通信接口協議-SPI(一)協議基礎

    對比不難發現,時序圖的規范,定義了各個信號線輸出電平的順序和時延,還定義了時鐘信號跳變沿與數據信號的“對齊”,這里的“對齊”實際上就是數據的輸出和采樣。

    同樣的,這個時序規范了SPI器件所呈現的SPI接口信號線特性,包括:時鐘上升、下降沿時長;片選與時鐘跳變沿之間的時延;時鐘邊緣與數據線保持的時長…

    這些時序特性,都在明確了SPI主機與其通信時,要求不超出其定義的范圍,否則從機器件響應不及時而導致通信異常。

    不同的器件,對SPI接口的信號時序要求也會不同。第一張簡明的時序圖,而基于這樣的時序圖,SPI接口又可以配置不同的接口配置參數。

    接口配置項

    一般在開發時,接口的可選配置有:接口模式(實際配置的是單、雙工模式選擇)、設備主從模式、數據寬度、時鐘極性(CPOL:)、時鐘相位(CPHA)、時鐘速率、數據bit位大小端選擇。

    接口模式

    標準的四線SPI接口,使用的場景是主從機進行數據交互的通信,兩方都有數據的收發過程,而在LCD/OLED這樣的SPI接口作為從設備的器件中,就不需要數據返回給主機,只需要接收來自主機的控制信息和顯示的數據。

    基于這樣的使用場景,就可以配置成三線的單工通信,即僅需要從機選擇SS、時鐘SCLK、數據輸出MOSI即可。

    設備主從模式

    這個配置一般需要看芯片是否支持,可將芯片配置成SPI主機或者從機,能更好地集成在項目的系統中。

    數據寬度

    顧名思義,就是發送數據可以配置成8bit、16bit等,這也是根據芯片而定。

    時鐘極性、時鐘相位

    這兩者分別是CPOL(Clock Polarity)CPHA(Clock Phase),極性就是指高低電平,這個定義了SPI總線在空閑狀態下,時鐘保持高電平還是低電平,因為這個關系到了SPI通信時第一個時鐘跳變沿是上升還是下降沿;相位指的是時鐘的跳變沿,指定了數據信號的輸出和采樣如何與時鐘對齊。

    這兩個配置,在Wiki和百度百科上都做了非常清晰的解釋,這里截圖引用如下:

    嵌入式硬件通信接口協議-SPI(一)協議基礎

    嵌入式硬件通信接口協議-SPI(一)協議基礎



  • <option id="immmk"></option>
  • <noscript id="immmk"><kbd id="immmk"></kbd></noscript>
    伊人久久大香线蕉综合影院首页