<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Serial_Peripheral_Interface</id>
	<title>Serial Peripheral Interface - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Serial_Peripheral_Interface"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Serial_Peripheral_Interface&amp;action=history"/>
	<updated>2026-05-16T21:30:08Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Serial_Peripheral_Interface&amp;diff=201552&amp;oldid=prev</id>
		<title>~2026-24235-63: Irrelevant, da es nichts zu dem Artikel beiträgt. Außerdem gibt es schon eine Wikipedia Seite mit einer Kritik und einigen Beispielen von der &quot;Master/Slave&quot;-Kontroverse, wo dieser Abschnitt eher hingehört.</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Serial_Peripheral_Interface&amp;diff=201552&amp;oldid=prev"/>
		<updated>2026-04-20T13:31:32Z</updated>

		<summary type="html">&lt;p&gt;Irrelevant, da es nichts zu dem Artikel beiträgt. Außerdem gibt es schon eine Wikipedia Seite mit einer Kritik und einigen Beispielen von der &amp;quot;Master/Slave&amp;quot;-Kontroverse, wo dieser Abschnitt eher hingehört.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Das &amp;#039;&amp;#039;&amp;#039;Serial Peripheral Interface&amp;#039;&amp;#039;&amp;#039; (&amp;#039;&amp;#039;&amp;#039;SPI&amp;#039;&amp;#039;&amp;#039;) ist ein im Jahr 1987 von Susan C. Hill und anderen beim Halbleiterhersteller [[Motorola]] (heute zu Teilen [[NXP Semiconductors]] und [[ON Semiconductor]]) entwickeltes [[Bus (Datenverarbeitung)|Bus-System]]. Es stellt einen „lockeren“ Standard für einen [[Synchrone Datenübertragung|synchronen]] [[Serielle Datenübertragung|seriellen]] [[Bus (Datenverarbeitung)|Datenbus]] (&amp;#039;&amp;#039;Synchronous Serial Port&amp;#039;&amp;#039;) dar, mit dem digitale Schaltungen nach dem [[Master/Slave|Master-Slave-Prinzip]] miteinander verbunden werden können.&amp;lt;ref name=&amp;quot;mot1&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Unter der Bezeichnung &amp;#039;&amp;#039;[[Microwire]]&amp;#039;&amp;#039; gibt es von [[National Semiconductor]] ein von SPI abgeleitetes Bus-System.&lt;br /&gt;
&lt;br /&gt;
[[Datei:SPI single slave.svg|mini|hochkant=1.5|Einfacher SPI-Bus mit einem SPI-Master und Slave]]&lt;br /&gt;
[[Datei:SPI three slaves daisy chained.svg|mini|hochkant=1.5|Bild 1: SPI-Verbindung durch Kaskadierung der Slaves]]&lt;br /&gt;
[[Datei:SPI three slaves.svg|mini|hochkant=1.5|Bild 2: SPI-Sternverbindung]]&lt;br /&gt;
[[Datei:SPI timing diagram2.svg|mini|hochkant=1.5|Bild 3: Datenübertragung bei verschiedenen Einstellungen von CPOL und CPHA(0 – Rot, 1 – Blau)]]&lt;br /&gt;
&lt;br /&gt;
== Grundlagen ==&lt;br /&gt;
=== Eigenschaften ===&lt;br /&gt;
* Die drei gemeinsamen Leitungen, an die jeder Teilnehmer angeschlossen ist, sind:&lt;br /&gt;
&lt;br /&gt;
::# SLK ({{EnS|&amp;#039;&amp;#039;Serial Clock&amp;#039;&amp;#039;}}) auch SCK oder SCLK, wird vom Controller zur Synchronisation ausgegeben&lt;br /&gt;
::#POCI (peripheral out/controller in) oder MISO ({{EnS|&amp;#039;&amp;#039;Master Input, Slave Output&amp;#039;&amp;#039;}})&lt;br /&gt;
::#PICO (peripheral in/controller out) oder MOSI ({{EnS|&amp;#039;&amp;#039;Master Output, Slave Input&amp;#039;&amp;#039;}})&lt;br /&gt;
::Manchmal werden die Datenleitungen auch SDO ({{EnS|&amp;#039;&amp;#039;Serial Data Out&amp;#039;&amp;#039;}}) und SDI ({{EnS|&amp;#039;&amp;#039;Serial Data In&amp;#039;&amp;#039;}}) genannt, wobei die Benennung meistens aus der Sicht des jeweiligen Busteilnehmers erfolgt, sodass hier die Leitungen über Kreuz verbunden werden müssen. Statt SDI mit SDI und SDO mit SDO zu verbinden, muss jeweils SDI mit SDO der Gegenstelle verbunden werden.&lt;br /&gt;
&lt;br /&gt;
* Eine oder mehrere mit logisch-&amp;#039;&amp;#039;0&amp;#039;&amp;#039; aktive Chip-Select-Leitungen, welche alle vom Controller gesteuert werden und von denen je eine Leitung pro Slave vorgesehen ist. Diese Leitungen werden je nach Anwendung unterschiedlich mit Bezeichnungen wie {{Overline|CS}}, {{Overline|SS}}, {{Overline|STE}} oder CE für {{lang|en|&amp;#039;&amp;#039;Chip Select&amp;#039;&amp;#039;}}, {{lang|en|&amp;#039;&amp;#039;Slave Select&amp;#039;&amp;#039;}}, {{lang|en|&amp;#039;&amp;#039;Slave Transmit Enable&amp;#039;&amp;#039;}} oder &amp;#039;&amp;#039;Chip Enabler&amp;#039;&amp;#039; bezeichnet, oft noch in Kombination mit einer Indexnummer zur Unterscheidung. Es gibt auch spezielle Anwendungen, bei denen sich mehrere Chips eine Leitung teilen, siehe Bild 1.&lt;br /&gt;
* [[Duplex (Nachrichtentechnik)|Vollduplexfähig]]&lt;br /&gt;
* Viele Einstellmöglichkeiten, wie&lt;br /&gt;
** mit welcher [[Taktflanke]] ausgegeben oder eingelesen wird&lt;br /&gt;
** Wortlänge (Anzahl der Bits, die übertragen werden)&amp;lt;ref&amp;gt;{{Internetquelle |url=http://www.mct.de/faq/spi.html |titel=mct.de: SPI - Serial Peripheral Interface |datum=2019-01-16 |abruf=2021-10-21 |archiv-url=https://web.archive.org/web/20190116220910/http://www.mct.de/faq/spi.html |archiv-datum=2019-01-16 |offline= |archiv-bot=2023-01-08 22:49:18 InternetArchiveBot }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
** Übertragung: [[Bitwertigkeit|MSB]] oder LSB zuerst&lt;br /&gt;
* Unterschiedliche [[Taktsignal|Taktfrequenzen]] bis in den MHz-Bereich sind zulässig.&lt;br /&gt;
* Vielfältige Einsatzmöglichkeiten in Audio- und Messanwendungen, zur Datenübertragung zwischen [[Mikrocontroller]]n.&lt;br /&gt;
&lt;br /&gt;
Viele Einstellungsmöglichkeiten sind unter anderem deshalb erforderlich, weil die Spezifikation für den SPI-Bus in vielen Eigenschaften nicht festgelegt ist, wodurch verschiedene, zueinander inkompatible Geräte existieren. Häufig ist beispielsweise für jeden angeschlossenen Schaltkreis eine eigene Konfiguration des steuernden Mikrocontrollers (Controller des SPI-Bus) erforderlich.&lt;br /&gt;
&lt;br /&gt;
Viele Mikrocontroller, wie die meisten [[Atmel AVR|AVR]], erlauben über den SPI-Bus eine [[In-System-Programmierung]] (kurz auch ISP).&lt;br /&gt;
&lt;br /&gt;
=== Protokollablauf und Einstellmöglichkeiten ===&lt;br /&gt;
An den Bus können so viele Teilnehmer angeschlossen werden, wie Slave-Select-Leitungen vorhanden sind, zuzüglich des genau einen Masters, der seinerseits das [[Clock-Signal]] an SCK erzeugt. Der Master legt mit der Leitung „Slave Select“ fest, mit welchem Slave er kommunizieren will. Wird sie gegen Masse gezogen, ist der jeweilige Slave aktiv und „lauscht“ an MOSI, bzw. legt er seine Daten im Takt von SCLK an MISO. Es wird ein Wort vom Master zum Slave und ein anderes Wort vom Slave zum Master transportiert.&lt;br /&gt;
&lt;br /&gt;
Ein Protokoll für die Datenübertragung wurde von Motorola zwar nicht festgelegt, doch haben sich in der Praxis vier verschiedene „Modi“ durchgesetzt. Diese werden durch die Parameter „Clock Polarity“ (CPOL) und „Clock Phase“ (CPHA) festgelegt. Bei CPOL=0 ist der Clock Idle Low, bei CPOL=1 ist der Clock Idle High. CPHA gibt nun an, bei der wievielten Flanke die Daten übernommen werden sollen. Bei CPHA=0 werden sie bei der ersten Flanke übernommen, nachdem SS auf Low gezogen wurde, bei CPHA=1 bei der zweiten. Somit werden die Daten bei CPOL=0 und CPHA=0 mit der ersten Flanke übernommen, die nur eine steigende Flanke sein kann. Bei CPHA=1 wäre es die zweite, also eine fallende Flanke. Bei CPOL=1 ist es folglich genau andersherum, bei CPHA=0 fallende Flanke und bei CPHA=1 steigende Flanke.&lt;br /&gt;
&lt;br /&gt;
Der Slave legt bei CPHA=0 seine Daten schon beim Herunterziehen von SS an MISO an, damit der Master sie beim ersten Flankenwechsel übernehmen kann. Bei CPHA=1 werden die Daten vom Slave erst beim ersten Flankenwechsel an MISO gelegt, damit sie beim zweiten Flankenwechsel vom Master übernommen werden können. Der Master hingegen legt seine Daten immer zum gleichen Zeitpunkt an, meist kurz nach der fallenden Flanke von SCK.&lt;br /&gt;
&lt;br /&gt;
Mit jeder Taktperiode wird ein Bit übertragen. Beim üblichen Bytetransfer sind also acht Taktperioden für eine vollständige Übertragung nötig. Es können auch mehrere Worte hintereinander übertragen werden, wobei in der Spezifikation nicht festgelegt ist, ob zwischen jedem Wort das {{overline|SS}}-Signal kurz wieder auf High gezogen werden muss. Eine Übertragung ist beendet, wenn das Slave-Select-Signal endgültig auf High gesetzt wird.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable centered&amp;quot; style=&amp;quot;text-align:center&amp;quot;&lt;br /&gt;
|+ &amp;#039;&amp;#039;Modes&amp;#039;&amp;#039; (Konstellationen)&lt;br /&gt;
|-&lt;br /&gt;
! Mode || CPOL || CPHA&lt;br /&gt;
|-&lt;br /&gt;
| 0 || 0 || 0&lt;br /&gt;
|-&lt;br /&gt;
| 1 || 0 || 1&lt;br /&gt;
|-&lt;br /&gt;
| 2 || 1 || 0&lt;br /&gt;
|-&lt;br /&gt;
| 3 || 1 || 1&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Höhere Datenübertragungsrate mittels &amp;#039;&amp;#039;Dual&amp;#039;&amp;#039; und &amp;#039;&amp;#039;Quad SPI&amp;#039;&amp;#039; ===&lt;br /&gt;
Um eine höhere [[Datenübertragungsrate]] zu erreichen, gibt es unter der Bezeichnung &amp;#039;&amp;#039;Dual SPI&amp;#039;&amp;#039; bzw. &amp;#039;&amp;#039;Quad SPI&amp;#039;&amp;#039; bei manchen Peripheriebausteinen optional eine [[parallele Datenübertragung]] zweier bzw. vierer Bits. Bei &amp;#039;&amp;#039;Dual SPI&amp;#039;&amp;#039; erfolgt die Übertragung (mit verdoppelter Datenübertragungsrate) über die beiden Leitungen POCI/MISO und PICO/MOSI in die gleiche Richtung. Somit ist dabei nur [[Halbduplex]]-Betrieb möglich; außerdem ist eine umschaltbare Übertragungsrichtung bei den Datenpins notwendig. Bei &amp;#039;&amp;#039;Quad SPI&amp;#039;&amp;#039; werden zwei weitere Datenleitungen hinzugenommen, um die Datenübertragungsrate abermals zu verdoppeln. Der SPI-Flash-Baustein W25Q40CL beispielsweise funktioniert dazu zwei Pins um ({{Oberstrich|Hold}} und {{Oberstrich|Write Protect}}), deren eigentliche Funktionen dann nicht mehr zur Verfügung stehen.&amp;lt;ref&amp;gt;[[Winbond]]: [https://www.winbond.com/resource-files/w25q40cl_e_07282017.pdf 2.5/3/3.3V 4 M-BIT SERIAL FLASH MEMORY WITH 4KB SECTORS, DUAL AND QUAD SPI], Datenblatt für Speicherbaustein W25Q40CL (PDF), Seite 7.&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Varianten ==&lt;br /&gt;
&amp;#039;&amp;#039;SafeSPI&amp;#039;&amp;#039; ist ein Industriestandard für SPI in Automobilanwendungen. Sein Hauptaugenmerk liegt auf der Standardisierung der Übertragung von Sensordaten zwischen verschiedenen Geräten.&amp;lt;ref&amp;gt;{{Internetquelle |url=https://safespi.org/faq |titel=FAQ - Frequently Asked Questions |werk=SafeSPI |sprache=de |abruf=2022-03-29}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
{{Commonscat|Serial Peripheral Interface}}&lt;br /&gt;
* {{Webarchiv |url=http://www.mct.de/faq/spi.html |wayback=20190116220910 |text=SPI – Serial Peripheral Interface}}, Grundlagenartikel&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;mot1&amp;quot;&amp;gt;&lt;br /&gt;
{{Patent&lt;br /&gt;
 | Land = US&lt;br /&gt;
 | V-Nr = 4816996&lt;br /&gt;
 | Titel = Queued serial peripheral interface for use in a data processing system&lt;br /&gt;
 | A-Datum = 1987-07-24&lt;br /&gt;
 | V-Datum = 1989-03-28&lt;br /&gt;
 | Anmelder = Motorola (heute z.&amp;amp;nbsp;T.: NXP Semiconductors)&lt;br /&gt;
 | Erfinder = Susan C. Hill, Joseph Jelemensky, Mark R. Heene&lt;br /&gt;
}}&lt;br /&gt;
gooonen&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;/references&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Peripheriebus (intern)]]&lt;/div&gt;</summary>
		<author><name>~2026-24235-63</name></author>
	</entry>
</feed>