For faster navigation, this Iframe is preloading the Wikiwand page for Serial Peripheral Interface.

Serial Peripheral Interface

SPI (Serial Peripheral Interface) je sériové periferní rozhraní. Používá se pro komunikaci mezi řídícími mikroprocesory a ostatními integrovanými obvody (EEPROM, A/D převodníky, displeje…). Komunikace je realizována pomocí společné sběrnice. Adresace se provádí pomocí zvláštních vodičů, které při logické nule aktivují příjem a vysílání zvoleného zařízení (piny SS nebo CS).

Rozdělení zařízení na sériové SPI sběrnici

[editovat | editovat zdroj]
Sběrnice SPI: jedno řídicí (master) a jedno podřízené (slave) zařízení

Master

  • řídí komunikaci pomocí hodinového signálu
  • určuje, se kterým zařízením na sběrnici bude komunikovat pomocí SS - Slave Select (někdy CS - Chip Select)

Slave

  • vysílá podle hodinového signálu, pokud je aktivován pomocí SS/CS

Průběh komunikace

[editovat | editovat zdroj]
Sběrnice SPI: jedno řídicí (master) a tři podřízená (slave) zařízení
  • Pro komunikaci Master nastaví log. 0 na SS zařízení, se kterým chce komunikovat.
  • Pak začne generovat hodinový signál na SCLK a v té chvíli vyšlou obě zařízení svoje data, přičemž MOSI (Master Out, Slave In) je vždy Master výstup, Slave vstup a MISO (Master In, Slave Out) je Master Vstup, Slave výstup.
  • Jakmile jsou data vyslána, může komunikace dále pokračovat:
    1. Master dále dodává hodinový signál, hodnota SS se nemění
    2. nebo může být ukončena: Master přestane vysílat hodinový signál a nastaví SS do log. 1.
  • Délka vyslaných dat je buď 8bit (Byte) a nebo 16bit.

Polarita a fáze hodinového signálu

[editovat | editovat zdroj]
Časový diagram zobrazující úroveň a posun hodinového signálu

Vztah mezi hodinovým signálem a daty se určuje dvěma konfiguračními bity, které se v původní dokumentaci k SPI označují jako CPOL a CPHA. Tuto konvenci definuje firma Freescale Semiconductor (původně Motorola) ve "Freescale's SPI Block Guide" [1].

  • CPOL = 0; klidová úroveň hodinového signálu log. 0
  • CPOL = 1; klidová úroveň hod. sig. je log. 1
  • CPHA = 0; hodnota je čtena při přechodu hodin z klidové do aktivní úrovně (tj. "první" hranou)
  • CPHA = 1; hodnota je čtena při přechodu hodin z aktivní do klidové úrovně (tj. "druhou" hranou)

Tabulka módů říkající jakou kombinaci CPOL a CPHA sběrnice má. Tyto kódy namísto CPOL a CPHA využívají některé logické analyzátory, vývojová studia (př. Arduino IDE) nebo datasheety součástek.

Mode CPOL CPHA
0 0 0
1 0 1
2 1 0
3 1 1

Související články

[editovat | editovat zdroj]

Externí odkazy

[editovat | editovat zdroj]
{{bottomLinkPreText}} {{bottomLinkText}}
Serial Peripheral Interface
Listen to this article

This browser is not supported by Wikiwand :(
Wikiwand requires a browser with modern capabilities in order to provide you with the best reading experience.
Please download and use one of the following browsers:

This article was just edited, click to reload
This article has been deleted on Wikipedia (Why?)

Back to homepage

Please click Add in the dialog above
Please click Allow in the top-left corner,
then click Install Now in the dialog
Please click Open in the download dialog,
then click Install
Please click the "Downloads" icon in the Safari toolbar, open the first download in the list,
then click Install
{{::$root.activation.text}}

Install Wikiwand

Install on Chrome Install on Firefox
Don't forget to rate us

Tell your friends about Wikiwand!

Gmail Facebook Twitter Link

Enjoying Wikiwand?

Tell your friends and spread the love:
Share on Gmail Share on Facebook Share on Twitter Share on Buffer

Our magic isn't perfect

You can help our automatic cover photo selection by reporting an unsuitable photo.

This photo is visually disturbing This photo is not a good choice

Thank you for helping!


Your input will affect cover photo selection, along with input from other users.

X

Get ready for Wikiwand 2.0 🎉! the new version arrives on September 1st! Don't want to wait?