自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

SPI總線協(xié)議的時序流程

網(wǎng)絡(luò) 網(wǎng)絡(luò)管理
下面我們主要對SPI總線協(xié)議的具體時序進行一個講解,希望大家能從中得到一個參考,了解這個具體的過程。希望對大家有所幫助。

SPI總線在很多方面都所應(yīng)用,現(xiàn)在我們就以SPI總線協(xié)議的具體流程過程來進行一個講解。下面我們通過一個例子來了解一下具體的時序問題。希望通過本文的介紹,能讓大家對這部分知識有所掌握。

SPI總線協(xié)議是一個環(huán)形總線結(jié)構(gòu),由ss(cs)、sck、sdi、sdo構(gòu)成,其時序其實很簡單,主要是在sck的控制下,兩個雙向移位寄存器進行數(shù)據(jù)交換。假設(shè)下面的8位寄存器裝的是待發(fā)送的數(shù)據(jù)10101010,上升沿發(fā)送、下降沿接收、高位先發(fā)送。那么第一個上升沿來的時候數(shù)據(jù)將會是sdo=1;寄存器=0101010x。下降沿到來的時候,sdi上的電平將所存到寄存器中去,那么這時寄存器=0101010sdi,這樣在8個時鐘脈沖以后,兩個寄存器的內(nèi)容互相交換一次。這樣就完成里一個spi時序。

例子:

假設(shè)主機和從機初始化就緒:并且主機的sbuff=0xaa,從機的sbuff=0x55,下面將分步對SPI總線協(xié)議的8個時鐘周期的數(shù)據(jù)情況演示一遍:假設(shè)上升沿發(fā)送數(shù)據(jù)。

  1. 脈沖 主機sbuff 從機sbuff  sdi sdo  
  2. 0    10101010  01010101   0   0   
  3. 1上  0101010x  1010101x   0   1   
  4. 1下  01010100  10101011   0   1   
  5. 2上  1010100x  0101011x   1   0   
  6. 2下  10101001  01010110   1   0   
  7. 3上  0101001x  1010110x   0   1   
  8. 3下  01010010  10101101   0   1   
  9. 4上  1010010x  0101101x   1   0   
  10. 4下  10100101  01011010   1   0   
  11. 5上  0100101x  1011010x   0   1   
  12. 5下  01001010  10110101   0   1   
  13. 6上  1001010x  0110101x   1   0   
  14. 6下  10010101  01101010   1   0   
  15. 7上  0010101x  1101010x   0   1   
  16. 7下  00101010  11010101   0   1   
  17. 8上  0101010x  1010101x   1   0   
  18. 8下  01010101  10101010   1   0  

這樣就完成了兩個寄存器8位的交換,上面的上表示上升沿、下表示下降沿,sdi、sdo相對于主機而言的。其中ss引腳作為主機的時候,從機可以把它拉底被動選為從機,作為從機的是時候,可以作為片選腳用。根據(jù)以上分析,一個完整的傳送周期是16位,即兩個字節(jié),因為,首先主機要發(fā)送命令過去,然后從機根據(jù)主機的名準備數(shù)據(jù),主機在下一個8位時鐘周期才把數(shù)據(jù)讀回來。

SPI 總線是Motorola公司推出的三線同步接口,同步串行3線方式進行通信:一條時鐘線SCK,一條數(shù)據(jù)輸入線MOSI,一條數(shù)據(jù)輸出線MISO;用于CPU與各種外圍器件進行全雙工、同步串行通訊。SPI總線協(xié)議主要特點有:可以同時發(fā)出和接收串行數(shù)據(jù);可以當作主機或從機工作;提供頻率可編程時鐘;發(fā)送結(jié)束中斷標志;寫沖突保護;總線競爭保護等。

SPI模塊為了和外設(shè)進行數(shù)據(jù)交換,根據(jù)外設(shè)工作要求,其輸出串行同步時鐘極性和相位可以進行配置,時鐘極性(CPOL)對傳輸協(xié)議沒有重大的影響。如果CPOL=0,串行同步時鐘的空閑狀態(tài)為低電平;如果CPOL=1,串行同步時鐘的空閑狀態(tài)為高電平。時鐘相位(CPHA)能夠配置用于選擇兩種不同的傳輸協(xié)議之一進行數(shù)據(jù)傳輸。如果CPHA=0,在串行同步時鐘的第一個跳變沿(上升或下降)數(shù)據(jù)被采樣;如果CPHA=1,在串行同步時鐘的第二個跳變沿(上升或下降)數(shù)據(jù)被采樣。SPI主模塊和與之通信的外設(shè)音時鐘相位和極性應(yīng)該一致。

SPI功能模塊的設(shè)計

根據(jù)功能定義及SPI的工作原理,將整個IP Core分為8個子模塊:uC接口模塊、時鐘分頻模塊、發(fā)送數(shù)據(jù)FIFO模塊、接收數(shù)據(jù)FIFO模塊、狀態(tài)機模塊、發(fā)送數(shù)據(jù)邏輯模塊、接收數(shù)據(jù)邏輯模塊以及中斷形式模塊。

深入分析SPI總線協(xié)議的四種傳輸協(xié)議可以發(fā)現(xiàn),根據(jù)一種協(xié)議,只要對串行同步時鐘進行轉(zhuǎn)換,就能得到其余的三種協(xié)議。為了簡化設(shè)計規(guī)定,如果要連續(xù)傳輸多個數(shù)據(jù),在兩個數(shù)據(jù)傳輸之間插入一個串行時鐘的空閑等待,這樣狀態(tài)機只需兩種狀態(tài)(空閑和工作)就能正確工作。

責(zé)任編輯:佟健 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2010-06-08 16:11:10

SPI總線協(xié)議

2022-05-15 22:34:32

SPI 控制器SPI 子系統(tǒng)

2010-07-06 16:02:30

HART協(xié)議

2010-06-08 16:31:16

LIN總線協(xié)議

2010-06-08 16:55:46

CANopen總線協(xié)議

2010-06-08 15:55:14

CAN總線協(xié)議

2010-06-08 16:35:24

LIN總線協(xié)議

2010-07-01 15:58:31

CANopen總線協(xié)議

2010-06-08 16:52:38

CANopen總線協(xié)議

2010-06-17 23:38:17

CANopen總線協(xié)議

2010-07-01 16:52:19

CAN總線協(xié)議

2019-02-19 14:30:57

總線通訊協(xié)議多層模型

2010-06-08 16:00:34

CAN總線協(xié)議

2010-06-08 16:25:35

I2C總線協(xié)議

2010-06-08 15:49:26

CAN總線協(xié)議

2010-07-08 15:18:06

SSH協(xié)議

2010-06-13 14:31:28

2010-06-21 14:09:33

Bittorrent協(xié)

2010-06-08 15:35:55

CAN總線協(xié)議

2024-10-29 08:34:55

SPI機制接口
點贊
收藏

51CTO技術(shù)棧公眾號