成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

SPI總線協(xié)議

Travis / 1409人閱讀

摘要:目錄概述概述總線機(jī)制總線機(jī)制的四種工作模式的四種工作模式數(shù)據(jù)交換數(shù)據(jù)交換概述是一種同步串行通信協(xié)議,由一個(gè)主設(shè)備和一個(gè)或多個(gè)從設(shè)備組成,主設(shè)備啟動(dòng)與從設(shè)備的同步通信,從而完成數(shù)據(jù)的交換。

目錄

1.SPI概述

2.SPI總線機(jī)制

3.SPI的四種工作模式

4.SPI數(shù)據(jù)交換


1.SPI概述

? SPI(serial peripheral interface)是一種同步串行通信協(xié)議,由一個(gè)主設(shè)備和一個(gè)或多個(gè)從設(shè)備組成,主設(shè)備啟動(dòng)與從設(shè)備的同步通信,從而完成數(shù)據(jù)的交換。SPI是一種高速全雙工同步通信總線,標(biāo)準(zhǔn)的SPI僅僅使用4個(gè)引腳,主要應(yīng)用在 EEPROM, Flash, 實(shí)時(shí)時(shí)鐘(RTC), 數(shù)模轉(zhuǎn)換器(ADC), 數(shù)字信號(hào)處理器(DSP) 以及數(shù)字信號(hào)解碼器之間。是 Motorola 公司推出的一種同步串行接口技術(shù),是一種高速的,全雙工,同步的通信總線。SPI總線首次推出是在1979年,Motorola公司將SPI總線集成在他們第一支改自68000微處理器的微控制器芯片上。由于在芯片中只占用四根管腳 (Pin) 用來控制以及數(shù)據(jù)傳輸, 節(jié)約了芯片的 pin 數(shù)目, 同時(shí)為 PCB 在布局上節(jié)省了空間。 正是出于這種簡單易用的特性, 現(xiàn)在越來越多的芯片上都集成了 SPI技術(shù)。

2.SPI總線機(jī)制

SPI的通信原理很簡單,它以主從方式工作,這種模式通常有一個(gè)主設(shè)備和一個(gè)或多
個(gè)從設(shè)備,需要至少4根線,事實(shí)上3根也可以(單向傳輸時(shí))。也是所有基于SPI的設(shè)備共
有的,它們是SDI(數(shù)據(jù)輸入)、SDO(數(shù)據(jù)輸出)、SCLK(時(shí)鐘)、CS(片選)。

  • (1)SDO/MOSI – ?Serial Data Output/Master Out Slave In,?主設(shè)備數(shù)據(jù)輸出,從設(shè)備數(shù)據(jù)輸入;
  • (2)SDI/MISO – Serial Data Input/Master In Slave Out,?主設(shè)備數(shù)據(jù)輸入,從設(shè)備數(shù)據(jù)輸出;
  • (3)SCLK – Serial Clock,時(shí)鐘信號(hào),由主設(shè)備產(chǎn)生;
  • (4)CS/SS – Slave Select/Chip Select,?從設(shè)備使能信號(hào),由主設(shè)備控制。當(dāng)有多個(gè)從設(shè)備的時(shí)候,因?yàn)槊總€(gè)從設(shè)備上都有一個(gè)片選引腳接入到主設(shè)備機(jī)中,當(dāng)我們的主設(shè)備和某個(gè)從設(shè)備通信時(shí)將需要將從設(shè)備對(duì)應(yīng)的片選引腳電平拉低或者是拉高。

3.SPI的四種工作模式

CPOL:clock polarity 時(shí)鐘的極性;表示 SPI 在空閑時(shí), 時(shí)鐘信號(hào)是高電平還是低電平.?

CPHA:clock phase 時(shí)鐘的相位;表示 SPI 設(shè)備是在 SCK 管腳上的時(shí)鐘信號(hào)變?yōu)?span style="color:#fe2c24;">上升沿時(shí)觸發(fā)數(shù)據(jù)采樣, 還是在時(shí)鐘信號(hào)變?yōu)?span style="color:#fe2c24;">下降沿時(shí)觸發(fā)數(shù)據(jù)采樣.

時(shí)鐘極性CPOL是用來配置SCLK的電平出于哪種狀態(tài)時(shí)是空閑態(tài)或者有效態(tài),時(shí)鐘相位CPHA
是用來配置數(shù)據(jù)采樣是在第幾個(gè)邊沿:

  • CPOL=0,表示當(dāng)SCLK=0時(shí)處于空閑態(tài),所以有效狀態(tài)就是SCLK處于高電平時(shí)
  • CPOL=1,表示當(dāng)SCLK=1時(shí)處于空閑態(tài),所以有效狀態(tài)就是SCLK處于低電平時(shí)
  • CPHA=0,表示數(shù)據(jù)采樣是在第1個(gè)邊沿,數(shù)據(jù)切換在第2個(gè)邊沿
  • CPHA=1,表示數(shù)據(jù)采樣是在第2個(gè)邊沿,數(shù)據(jù)切換在第1個(gè)邊沿

我們SPI通信有4種不同的模式,不同的從設(shè)備可能在出廠是就是配置為某種模式,這是不能改變的;但我們的通信雙方必須是工作在同一模式下,所以我們可以對(duì)我們的主設(shè)備的SPI模式進(jìn)行配置,通過CPOL(時(shí)鐘極性)和CPHA(時(shí)鐘相位)來控制我們主設(shè)備的通信模式,具體如下:
Mode0:CPOL=0,CPHA=0
Mode1:CPOL=0,CPHA=1
Mode2:CPOL=1,CPHA=0
Mode3:CPOL=1,CPHA=1

四種模式的時(shí)序圖如下如所示:

模式0:CPOL= 0,CPHA=0。SCK串行時(shí)鐘線空閑是為低電平,數(shù)據(jù)在SCK時(shí)鐘的上升沿被采樣,數(shù)據(jù)在SCK時(shí)鐘的下降沿切換

模式1:CPOL= 0,CPHA=1。SCK串行時(shí)鐘線空閑是為低電平,數(shù)據(jù)在SCK時(shí)鐘的下降沿被采樣,數(shù)據(jù)在SCK時(shí)鐘的上升沿切換

模式2:CPOL= 1,CPHA=0。SCK串行時(shí)鐘線空閑是為高電平,數(shù)據(jù)在SCK時(shí)鐘的下降沿被采樣,數(shù)據(jù)在SCK時(shí)鐘的上升沿切換

模式3:CPOL= 1,CPHA=1。SCK串行時(shí)鐘線空閑是為高電平,數(shù)據(jù)在SCK時(shí)鐘的上升沿被采樣,數(shù)據(jù)在SCK時(shí)鐘的下降沿切換
其中比較常用的模式是模式0和模式3。為了更清晰的描述SPI總線的時(shí)序,下面展現(xiàn)了模式0下的SPI時(shí)序圖:

?上圖清晰的表明在模式0下,在空閑狀態(tài)下,SCK串行時(shí)鐘線為低電平,當(dāng)SS被主機(jī)拉低以后,數(shù)據(jù)傳輸開始,數(shù)據(jù)線MOSI和MISO的數(shù)據(jù)切換(Toggling)發(fā)生在時(shí)鐘的下降沿(上圖的黑色虛線),而數(shù)據(jù)線MOSI和MISO的數(shù)據(jù)的采樣(Sampling)發(fā)生在數(shù)據(jù)的正中間(上圖中的灰色實(shí)線)。下圖清晰的描述了其他三種模式數(shù)據(jù)線MOSI和MISO的數(shù)據(jù)切換(Toggling)位置和數(shù)據(jù)采樣位置的關(guān)系圖:

4.SPI數(shù)據(jù)交換

? ? ? ? SPI 設(shè)備間的數(shù)據(jù)傳輸之所以又被稱為數(shù)據(jù)交換, 是因?yàn)?SPI 協(xié)議規(guī)定一個(gè) SPI 設(shè)備不能在數(shù)據(jù)通信過程中僅僅只充當(dāng)一個(gè) "發(fā)送者(Transmitter)" 或者 "接收者(Receiver)". 在每個(gè) Clock 周期內(nèi), SPI 設(shè)備都會(huì)發(fā)送并接收一個(gè) bit 大小的數(shù)據(jù), 相當(dāng)于該設(shè)備有一個(gè) bit 大小的數(shù)據(jù)被交換了.

? ? ? ?一個(gè) Slave 設(shè)備要想能夠接收到 Master 發(fā)過來的控制信號(hào), 必須在此之前能夠被 Master 設(shè)備進(jìn)行訪問 (Access). 所以, Master 設(shè)備必須首先通過 SS/CS pin 對(duì) Slave 設(shè)備進(jìn)行片選, 把想要訪問的 Slave 設(shè)備選上.

? ? ? ?在數(shù)據(jù)傳輸?shù)倪^程中, ?每次接收到的數(shù)據(jù)必須在下一次數(shù)據(jù)傳輸之前被采樣. 如果之前接收到的數(shù)據(jù)沒有被讀取, 那么這些已經(jīng)接收完成的數(shù)據(jù)將有可能會(huì)被丟棄, ?導(dǎo)致 SPI 物理模塊最終失效. 因此, 在程序中一般都會(huì)在 SPI 傳輸完數(shù)據(jù)后, 去讀取 SPI 設(shè)備里的數(shù)據(jù), 即使這些數(shù)據(jù)(Dummy Data)在我們的程序里是無用的.

參考文獻(xiàn):

SPI通信協(xié)議(SPI總線)學(xué)習(xí)

SPI總線協(xié)議概述

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/121954.html

相關(guān)文章

  • SPI、PCI、IIC、UART、GPIO、AXI4協(xié)議總結(jié)大全

    摘要:從設(shè)備使能信號(hào),由主設(shè)備控制,只有該信號(hào)為預(yù)先規(guī)定的使能信號(hào),對(duì)該芯片的操作才有效,這就允許再統(tǒng)一總線上連接多個(gè)設(shè)備。點(diǎn)對(duì)點(diǎn)通信中,接口不需要進(jìn)行尋址操作,但是沒有指定的流控制,沒有應(yīng)答機(jī)制確認(rèn)是否接收到數(shù)據(jù)。 1、GPIO 通用可編程IO接口,對(duì)于簡單的外圍設(shè)備或者電路,需要CPU為之提供...

    zhangrxiang 評(píng)論0 收藏0
  • 基于STM32平臺(tái)的數(shù)字溫度顯示器系統(tǒng)設(shè)計(jì)

    摘要:帶中文字庫的是一種具有位位并行線或線串行多種接口方式,內(nèi)部含有國標(biāo)一級(jí)二級(jí)簡體中文字庫的點(diǎn)陣圖形液晶顯示模塊其顯示分辨率為。貼片按鍵模塊支持標(biāo)準(zhǔn)的協(xié)議,完整的協(xié)議棧。以最低成本提供最大實(shí)用性,為功能嵌入其他系統(tǒng)提供無限可能。 項(xiàng)目簡介 開發(fā)環(huán)境: Keil5.14,CubeMX6.0.1,主...

    villainhr 評(píng)論0 收藏0
  • STM32學(xué)習(xí)筆記 第二章 STM32資源介紹

    摘要:總線掛載的外設(shè)有等。外設(shè)地址映射片上外設(shè)區(qū)分為三條總線,根據(jù)外設(shè)速度的不同,不同總線掛載著不同的外設(shè),掛載低速外設(shè),和掛載高速外設(shè)。 第二章 STM32資源介紹 2...

    G9YH 評(píng)論0 收藏0
  • STM32F103基于spi實(shí)現(xiàn)OLED顯示

    摘要:文章目錄一原理二實(shí)現(xiàn)顯示中文滾動(dòng)顯示顯示字符串讀取溫濕度顯示溫濕度三結(jié)果開機(jī)顯示歡迎信息循環(huán)讀取溫濕度以及滾動(dòng)顯示我的四總結(jié)五參考六源碼一原理的定義就是串行外圍設(shè)備接口。 ...

    xfee 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<