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 náhled|vpravo|350px|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 náhled|vpravo|350px|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: Master dále dodává hodinový signál, hodnota SS se nemění 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 náhled|400px|Č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" SPI Block Guide V03.06 - tj. Příručka k obvodu SPI (anglicky), . 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 Odkazy Reference

Související články Mikroprocesor Integrovaný obvod Diskrétní součástky Elektronika

Externí odkazy

Externí sériové sběrnice SPI a I²C: http://www.root.cz/…

Kategorie:Sběrnice