0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

串行外圍設(shè)備接口總線的特點(diǎn)以及它的基本配置

嵌入式星球 ? 來(lái)源:嵌入式星球 ? 作者:嵌入式星球 ? 2020-09-24 15:20 ? 次閱讀

幾十年來(lái)使用的三種最常見的多線串行數(shù)據(jù)傳輸格式是I2C,UART和SPI。本文著眼于串行外設(shè)接口(SPI)總線,該總線已擺脫了顯式的標(biāo)準(zhǔn)化,因此在實(shí)現(xiàn)協(xié)議之前,請(qǐng)始終檢查要使用的集成電路的數(shù)據(jù)表。

能力和特點(diǎn)

串行外圍設(shè)備接口總線使用四個(gè)數(shù)據(jù)線在主設(shè)備和從設(shè)備之間提供全雙工同步通信。

基本主從配置

串行外設(shè)接口允許將數(shù)據(jù)位從主設(shè)備移出到從設(shè)備中,同時(shí),還可以將位從從設(shè)備移出到主設(shè)備中。

動(dòng)畫1顯示了數(shù)據(jù)從Microchip A移入Microchip B,又從Microchip B移入MicrochipA。

動(dòng)畫2顯示了兩個(gè)微芯片之間SPI事務(wù)的虛擬4通道示波器軌跡。由馬克·休斯(Mark Hughes)用Mathematica創(chuàng)建

由于SPI尚未標(biāo)準(zhǔn)化,因此可能會(huì)遇到先傳輸最高有效位(MSb)或最低有效位(LSb)的情況。檢查設(shè)備的數(shù)據(jù)表并相應(yīng)地設(shè)置數(shù)據(jù)處理例程。如果您使用的是Arduino,則可以參考此頁(yè)面以獲取有關(guān)配置SPI端口信息。

時(shí)鐘極性和相位

時(shí)鐘轉(zhuǎn)換控制數(shù)據(jù)的移位和采樣。SPI具有四種模式(0、1、2、3),分別對(duì)應(yīng)四種可能的時(shí)鐘配置。

在時(shí)鐘周期的上升沿采樣的位在時(shí)鐘周期的下降沿移出,反之亦然。

當(dāng)從選擇線被驅(qū)動(dòng)至邏輯低電平(從選擇通常為低電平有效信號(hào))時(shí),每個(gè)事務(wù)開始。從選擇線,數(shù)據(jù)線和時(shí)鐘線之間的確切關(guān)系取決于如何配置時(shí)鐘極性(CPOL)和時(shí)鐘相位(CPHA)。

在時(shí)鐘極性不變的情況下(即,當(dāng)從器件選擇轉(zhuǎn)換為邏輯低電平時(shí),時(shí)鐘處于邏輯低電平):

模式0:配置時(shí)鐘相位,以便在時(shí)鐘脈沖的上升沿采樣數(shù)據(jù),并在時(shí)鐘脈沖的下降沿移出數(shù)據(jù)。這對(duì)應(yīng)于上圖中的第一個(gè)藍(lán)色時(shí)鐘軌跡。注意,數(shù)據(jù)必須在時(shí)鐘的第一個(gè)上升沿之前可用。

模式1:配置時(shí)鐘相位,以便在時(shí)鐘脈沖的下降沿采樣數(shù)據(jù),并在時(shí)鐘脈沖的上升沿移出數(shù)據(jù)。這對(duì)應(yīng)于上圖中的第二條藍(lán)色時(shí)鐘軌跡。

在時(shí)鐘極性反轉(zhuǎn)的情況下(即,當(dāng)從器件選擇轉(zhuǎn)換為邏輯低電平時(shí),時(shí)鐘處于邏輯高電平):

模式2:配置時(shí)鐘相位,以便在時(shí)鐘脈沖的下降沿采樣數(shù)據(jù),并在時(shí)鐘脈沖的上升沿移出數(shù)據(jù)。這對(duì)應(yīng)于上圖中的第一個(gè)橙色時(shí)鐘軌跡。注意,數(shù)據(jù)必須在時(shí)鐘的第一個(gè)下降沿之前可用。

模式3:配置時(shí)鐘相位,以便在時(shí)鐘脈沖的上升沿采樣數(shù)據(jù),并在時(shí)鐘脈沖的下降沿移出數(shù)據(jù)。這對(duì)應(yīng)于上圖中的第二個(gè)橙色時(shí)鐘軌跡。

關(guān)鍵參數(shù)

CLK:串行時(shí)鐘。由主設(shè)備控制。每個(gè)時(shí)鐘周期都會(huì)移出一個(gè)新的數(shù)據(jù)位。

SSN:從機(jī)選擇(“ N”將其標(biāo)識(shí)為低電平有效信號(hào))。由主設(shè)備控制。激活的從設(shè)備選擇線指示主機(jī)正在向相應(yīng)的從設(shè)備發(fā)送數(shù)據(jù)或從其請(qǐng)求數(shù)據(jù)。

MOSI:主輸出?從輸入。數(shù)據(jù)離開主設(shè)備并進(jìn)入從設(shè)備。芯片A上的MOSI線連接到芯片B上的MOSI線。

MISO:主機(jī)輸入?從機(jī)輸出。數(shù)據(jù)離開從設(shè)備并進(jìn)入主設(shè)備(或以菊花鏈配置的另一個(gè)從設(shè)備;請(qǐng)參閱下一節(jié))。芯片A上的MISO線連接到芯片B上的MISO線。

CPOL:時(shí)鐘極性。這支配時(shí)鐘信號(hào)的初始邏輯狀態(tài)。有關(guān)更多信息,請(qǐng)參考上一節(jié)。

CPHA:時(shí)鐘相位。這支配了數(shù)據(jù)轉(zhuǎn)換和時(shí)鐘轉(zhuǎn)換之間的關(guān)系。有關(guān)更多信息,請(qǐng)參考上一節(jié)。

從選擇和菊花鏈

多從選擇配置

在標(biāo)準(zhǔn)的SPI安排中,主設(shè)備可以通過(guò)啟用設(shè)備(即,將相應(yīng)設(shè)備的從選擇線設(shè)置為邏輯低電平)向共享公共數(shù)據(jù)線的單個(gè)設(shè)備寫入數(shù)據(jù)或向其請(qǐng)求數(shù)據(jù)。注意不要同時(shí)啟用多個(gè)從站,因?yàn)榉祷氐街髡镜臄?shù)據(jù)將由于MISO線之間的驅(qū)動(dòng)程序爭(zhēng)用而損壞。某些應(yīng)用程序不需要將數(shù)據(jù)返回給主服務(wù)器;在這種情況下,如果主機(jī)希望將相同的數(shù)據(jù)發(fā)送到多個(gè)從機(jī),則可以同時(shí)尋址多個(gè)從機(jī)。

在多從站選擇配置中,每個(gè)從站都需要來(lái)自主站的唯一從站選擇線。如果主站沒(méi)有足夠的I / O引腳來(lái)滿足所需數(shù)量的從站,則可以通過(guò)合并解碼器/多路分解器來(lái)實(shí)現(xiàn)I / O擴(kuò)展,例如74HC(T)238(PDF)(3至8行)解碼器/解復(fù)用器)。

菊花鏈配置

在此配置中,數(shù)據(jù)從一臺(tái)設(shè)備移動(dòng)到另一臺(tái)設(shè)備。最終的從設(shè)備可以將數(shù)據(jù)返回給主設(shè)備。

在菊花鏈配置中,所有從機(jī)共享一條公共的從機(jī)選擇線。數(shù)據(jù)從主機(jī)轉(zhuǎn)移到第一個(gè)從機(jī),然后從第一個(gè)從機(jī)轉(zhuǎn)移到第二個(gè),依此類推。數(shù)據(jù)沿線級(jí)聯(lián)直至該系列中的最后一個(gè)從機(jī),然后可以使用其MISO線將數(shù)據(jù)發(fā)送到主設(shè)備。

這種配置非常適合節(jié)日期間流行的可單獨(dú)尋址的LED燈串。

結(jié)論

串行外設(shè)接口已經(jīng)存在了數(shù)十年,沒(méi)有理由期望它會(huì)很快消失。雖然I2C和UART可能會(huì)更受歡迎,但SPI是一種通用且直接的串行通信接口,非常適合某些應(yīng)用。

fqj

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • SPI
    SPI
    +關(guān)注

    關(guān)注

    17

    文章

    1688

    瀏覽量

    91215
  • 串行數(shù)據(jù)傳輸

    關(guān)注

    0

    文章

    4

    瀏覽量

    6814
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    嵌入式的常用總線介紹

    硬件電路設(shè)計(jì)、簡(jiǎn)化系統(tǒng)結(jié)構(gòu),常用一組線路,配置以適當(dāng)?shù)?b class='flag-5'>接口電路,與各部件和外圍設(shè)備連接,這組共用的連接線路被稱為總線。
    的頭像 發(fā)表于 11-11 09:52 ?93次閱讀

    如何使用可配置邏輯塊 (CLB) 實(shí)施定制串行接口

    電子發(fā)燒友網(wǎng)站提供《如何使用可配置邏輯塊 (CLB) 實(shí)施定制串行接口.pdf》資料免費(fèi)下載
    發(fā)表于 09-09 10:07 ?0次下載
    如何使用可<b class='flag-5'>配置</b>邏輯塊 (CLB) 實(shí)施定制<b class='flag-5'>串行</b><b class='flag-5'>接口</b>

    CAN總線接口類型

    CAN總線(Controller Area Network)是一種基于廣播的串行通信協(xié)議,廣泛用于連接分布式系統(tǒng)中的各個(gè)設(shè)備,實(shí)現(xiàn)它們之間的數(shù)據(jù)交換和控制。CAN總線
    的頭像 發(fā)表于 09-03 14:13 ?1135次閱讀

    SPI總線的定義和特點(diǎn)

    SPI總線(Serial Peripheral Interface),全稱為串行外圍設(shè)備接口,是由Motorola公司提出并定義的一種同步、串行
    的頭像 發(fā)表于 09-03 14:05 ?528次閱讀

    通用串行總線控制器和通用串行總線設(shè)備的區(qū)別

    通用串行總線(Universal Serial Bus,簡(jiǎn)稱USB)是一種廣泛使用的串行通信協(xié)議,用于計(jì)算機(jī)和其他設(shè)備之間的數(shù)據(jù)傳輸。USB技術(shù)自1996年推出以來(lái),已經(jīng)經(jīng)歷了多個(gè)版本的更新,包括
    的頭像 發(fā)表于 08-29 15:40 ?1071次閱讀

    通用串行總線控制器影響什么設(shè)備

    通用串行總線控制器(USB控制器)在計(jì)算機(jī)系統(tǒng)中扮演著至關(guān)重要的角色,主要影響和管理與USB接口相關(guān)的設(shè)備。以下是通用串行總線控制器影響的
    的頭像 發(fā)表于 08-29 15:38 ?410次閱讀

    南京沁恒微USB總線轉(zhuǎn)接芯片 CH341

    CH341是一個(gè)USB總線的轉(zhuǎn)接芯片,通過(guò)USB總線提供異步串口、打印口、并口以及常用的2線和4線等同步串行接口。 在異步串口方式下,CH3
    發(fā)表于 05-16 13:55

    是否有可能使用CYSPP配置文件連接到外圍設(shè)備

    我們的現(xiàn)有系統(tǒng)使用中央和外圍設(shè)備,使用基于 Microchip RN4020 的中央和外圍設(shè)備。 由于供應(yīng)限制的原因,我們希望將英飛凌 CYBT-483056 SoC 用于 BLE central。 我們想知道是否有可能使用CYSPP
    發(fā)表于 03-01 06:54

    什么是I2C接口?什么是I3C接口?I2C與I3C的區(qū)別

    I2C接口是一種串行通信協(xié)議,全稱為Inter-Integrated Circuit,即集成電路間總線。它是一種雙向、兩線制(SCL和SDA)的串行通信
    的頭像 發(fā)表于 02-17 14:39 ?5206次閱讀
    什么是I2C<b class='flag-5'>接口</b>?什么是I3C<b class='flag-5'>接口</b>?I2C與I3C的區(qū)別

    usb-c接口是什么意思 pd接口和usb接口哪個(gè)更好

    以通過(guò)USB-C接口提供更高的功率輸出,以滿足各種設(shè)備的充電需求。 USB接口是一種通用的串行總線標(biāo)準(zhǔn),
    的頭像 發(fā)表于 01-31 17:01 ?7690次閱讀

    PSOC6如何通過(guò)I2C與外圍設(shè)備通信?

    PSOC6 如何通過(guò) I2C 與外圍設(shè)備通信? 我不太明白這一系列芯片 CAN 如何向上或向下拉動(dòng)?我根據(jù)例程編寫了一個(gè)與I2C通信的外圍設(shè)備,但它 CAN不起作用, ADXL345模塊
    發(fā)表于 01-31 06:08

    TC39x如何在用戶模式下訪問(wèn)外圍設(shè)備?

    你好, 我已經(jīng)在 TC39x 中啟用了用戶模式 1,并希望在用戶模式下允許訪問(wèn)一些外圍設(shè)備和功能。 我主要想在用戶模式下使用 cpu endinit(在啟用和禁用看門狗的上下文中)。
    發(fā)表于 01-22 06:52

    硬件電路設(shè)計(jì)之SPI電路設(shè)計(jì)

    SPI(Serial Peripheral Interface) 是串行外設(shè)接口的簡(jiǎn)稱,是微控制器(MCU)與外圍設(shè)備通信最常見的接口,常見的外圍設(shè)
    的頭像 發(fā)表于 12-07 18:16 ?4366次閱讀
    硬件電路設(shè)計(jì)之SPI電路設(shè)計(jì)

    并行總線串行總線的區(qū)別

    。 1.定義和原理: 并行總線是指在計(jì)算機(jī)系統(tǒng)中同時(shí)傳送多個(gè)比特的數(shù)據(jù)線路,通過(guò)并行傳輸數(shù)據(jù)位來(lái)提高數(shù)據(jù)傳輸速度和帶寬。而串行總線則是指在計(jì)算機(jī)系統(tǒng)中逐位地傳輸數(shù)據(jù)的數(shù)據(jù)線路,
    的頭像 發(fā)表于 12-07 16:45 ?3348次閱讀

    怎樣減少變頻器對(duì)PLC與外圍設(shè)備通訊的干擾?

    轉(zhuǎn)速的重要設(shè)備,廣泛應(yīng)用于各個(gè)工業(yè)領(lǐng)域。然而,由于變頻器本身的特性以及電磁干擾等原因,會(huì)對(duì)PLC(Programmable Logic Controller)與外圍設(shè)備的通訊產(chǎn)生干擾,進(jìn)而影響整個(gè)系統(tǒng)的運(yùn)行穩(wěn)定性和可靠性。本文將
    的頭像 發(fā)表于 11-20 16:36 ?1243次閱讀