Was ist die serielle Peripherieschnittstelle?

Eine serielle Peripherieschnittstelle (Serial Peripheral Interface, SPI) ist eine kostengünstige synchrone 4-Draht-Vollduplex-Datenstromschnittstelle für die serielle Kommunikation, die in einer Master-Slave-Beziehung arbeitet. Die Datenübertragung in seriellen Geräten erfolgt bitweise, wodurch SPI zu einer Low-Speed-Schnittstelle wird. Es wird üblicherweise als Verbindung zwischen integrierten Schaltkreisen mit langsamen Peripheriegeräten an Bord verwendet, auf die intermittierend zugegriffen wird. Es konkurriert mit Geräten zur parallelen Datenübertragung. Mit zunehmender Effizienz von SPI verringert sich jedoch dessen Vorteil. SPI wird manchmal als "Mikrodraht" bezeichnet, obwohl dies als Teilprotokoll von SPI angesehen wird.

Die Datenübertragung über eine serielle Peripherieschnittstelle erfolgt über ein Vollduplex-Protokoll. Daten werden gleichzeitig in beide Richtungen übertragen und empfangen. Anwendungen, die SPI verwenden, erzielen in diesem Modus eine hohe Effizienz. Eine solche Anwendung besteht zwischen einem Codierer-Decodierer (Codec) und einem digitalen Signalprozessor (DSP). Weitere Anwendungen sind Temperatur- und Drucksensoren sowie Flash-Speicher.

Immer wenn zwei serielle Peripheriegeräte miteinander kommunizieren, wird ein Gerät als "Master" bezeichnet, während das andere Gerät als "Slave" fungiert. Das Master-Gerät initiiert die gesamte Kommunikation, indem es Signale an das Slave-Gerät sendet. Ein serieller Peripherieschnittstellenbus kann mehrere Slave-Geräte an einen einzelnen Master anschließen.

Serielle periphere Schnittstellengeräte verwenden drei Register - Steuerregister (SPCR), Statusregister (SPSR) und Datenregister (SPDR) - zum Senden von Daten zusammen mit vier verschiedenen Signalen. Das erste Signal heißt Serial Clock (SCLK), die nur das Master-Gerät generiert. Es folgen Master-Out, Slave-In (MOSI), Master-In, Slave-Out (MISO) und Slave-Select (SSn), wobei "n" die Anzahl der Slave-Geräte ist, an die das Master-Gerät angeschlossen ist.

In einer typischen Einzel-Slave-Konfiguration würde ein Techniker, der eine serielle Peripherieschnittstelle verwenden möchte, SCLK mit dem Eingang eines Slave-Geräts verbinden. MOSI überträgt dann Daten vom Master-Gerät zum Slave-Gerät, während MISO Daten vom Slave zum Master überträgt. Um zu bestimmen, welches Gerät Master und welches Slave ist, verbindet das erstere Master-SSn mit Slave-SSn und erzeugt ein diskretes Allzweck-Ein- / Ausgangssignal für das letztere.

Um mehrere Slaves an einen Master in einer seriellen Peripherieschnittstelle anzuschließen, werden separate SSn-Signale vom Master-Gerät an separate Slaves angeschlossen. Zum Beispiel ist SS1 mit Slave 1 verbunden, SS2 ist mit Slave 2 verbunden und so weiter. Ähnlich wie bei der Single-Slave-Konfiguration wird SCLK vom Master-Gerät mit den mehreren Slaves verbunden. MOSI von Master zu Slaves sind verbunden, ebenso MISO von Slaves zu Master.

ANDERE SPRACHEN

War dieser Artikel hilfreich? Danke für die Rückmeldung Danke für die Rückmeldung

Wie können wir helfen? Wie können wir helfen?