I2C vs. SPI Display: Wann nimmst du was?
Stehst du vor der Wahl zwischen I2C und SPI fuer dein naechstes Display-Projekt? Welches Protokoll setzt du am liebsten ein?
Vergleich
Pin-Bedarf im Direktvergleich
I2C braucht nur 2 Datenleitungen am Board. Bei SPI sind es meist 4 bis 5 Pins fuer Takt, Daten und Steuersignale.
I2C: SDA, SCL | SPI: MOSI, SCK, CS, DC
Stand: Mikrocontroller, Arduino IDE
Vergleich
Geschwindigkeit und Bildrate
I2C laeuft meist mit 400 kHz, gut fuer Text. SPI schafft viele Megahertz und ist noetig fuer fluessige TFT-Animationen.
Wire.setClock(400000)Stand: Mikrocontroller, Arduino IDE
Tipp
Mehrere Geraete am selben Bus
I2C adressiert Geraete direkt ueber eine Software-Adresse. Bei SPI benoetigt jedes zusaetzliche Display einen eigenen CS-Pin.
Stand: Mikrocontroller, Arduino IDE
Tipp
Kabel und Stoeranfaelligkeit
I2C ist bei laengeren Jumper-Kabeln oft anfaellig fuer Signalstoerungen. SPI verzeiht mehr, braucht aber sauber gefuehrte Takte.
Stand: Mikrocontroller, Arduino IDE
Tipp
Die schnelle Entscheidungshilfe
Nimm I2C fuer kleine monochrome OLEDs und Messwerte. Nimm SPI fuer farbige Grafik-TFTs, Touchscreens und schnelle GUIs.
Stand: Mikrocontroller, Arduino IDE
Stand: Mikrocontroller, Arduino IDE · jeder Schritt selbst am Gerät nachvollzogen
Quellen
- Arduino Wire Library Referenz
- Arduino SPI Library Referenz