Sarjaliitännäisliitäntä (SPI) on edullinen, nelijohtiminen, täyden dupleksin synkroninen sarjaviestintädatavirtaliitäntä, joka toimii isäntä-orja-suhteessa. Tiedonsiirto sarjalaitteissa tapahtuu bitti kerrallaan, mikä tekee SPI: stä hitaan nopeuden rajapinnan. Sitä käytetään yleisesti linkkinä integroitujen piirien välillä, joissa on hitaita oheislaitteita, joihin on pääsy ajoittain. Se kilpailee rinnakkaisten tiedonsiirtolaitteiden kanssa, mutta SPI: n tehokkuuden kasvaessa edellisen etu pienenee. SPI: tä kutsutaan joskus “mikrojohdoksi”, vaikka tätä pidetään SPI: n osajoukkoprotokollana.
Tiedonsiirto sarjaliitännän kautta tapahtuu kaksisuuntaisen protokollan kautta. Tietoja siirretään ja vastaanotetaan molempiin suuntiin samanaikaisesti. SPI: tä käyttävät sovellukset saavat paljon tehokkuutta tässä tilassa; yksi tällainen sovellus on kooderi-dekooderi (koodekki) ja digitaalinen signaaliprosessori (DSP). Muita sovelluksia ovat lämpötila- ja paineanturit sekä flash -muisti.
Aina kun kaksi sarjaliitäntälaitetta kommunikoi, toista laitetta kutsutaan “isäntäksi” ja toista laitetta “orjaksi”. Päälaite aloittaa kaiken tiedonsiirron lähettämällä signaaleja orjalaitteelle. Sarjaliitännän oheisliitäntäväylä voi yhdistää useita orjalaitteita yhteen isäntään.
Sarjaliitäntälaitteet käyttävät kolmea rekisteriä – ohjausrekisteri (SPCR), tilarekisteri (SPSR) ja datarekisteri (SPDR) – lähettäessään tietoja yhdessä neljän eri signaalin kanssa. Ensimmäistä signaalia kutsutaan sarjakelloksi (SCLK), jonka vain isäntälaite luo. Tätä seuraa master-out slave-in (MOSI), master-in slave-out (MISO) ja slave select (SSn), jossa “n” on orjalaitteiden lukumäärä, johon isäntälaite on kytketty.
Tyypillisessä yhden orjan kokoonpanossa insinööri, joka haluaa käyttää sarjaliitännäisliitäntää, yhdistäisi SCLK: n orjalaitteen tuloon. MOSI siirtää sitten tiedot päälaitteesta orjalaitteeseen, kun taas MISO siirtää tiedot orjasta isäntään. Jotta voidaan määrittää, mikä laite on isäntä ja mikä orja, ensimmäinen yhdistää Master SSn: n orja SSn: ään ja luo yleiskäyttöisen erillisen tulo-/lähtösignaalin jälkimmäiseen.
Jos haluat liittää useita orjia yhteen isäntään sarjaliitännässä, erilliset SSn -signaalit kytketään isäntälaitteesta erillisiin orjiin. Esimerkiksi SS1 on kytketty orja 1: een, SS2 on kytketty orjaan 2 ja niin edelleen. SCLK on kytketty isäntälaitteesta useisiin orjiin samoin kuin yhden orjan kokoonpano. MOSI isännältä orjille on kytketty ja MISO orjilta isännälle.