2.2“ SPI-Display (ILI9341) am Raspberry betreiben

Nachdem wir vor einigen Wochen schon einmal ein Tutorial über das 2.2″ SPI-TFT in Kombination mit dem Arduino veröffentlicht hatten, ist es nun auch für unseren Raspberry Pi an der Zeit ein eigenes kleines Display zu bekommen. So können wir neben einfachen Statusanzeigen sogar GameBoy-Spiele auf dem kleinen SPI-Display wiedergeben. In der nachfolgenden Anleitung zeigen wir euch sowohl den Anschluss sowie die Erstkonfiguration des Minidisplays am Raspberry Pi. 

Was wird benötigt?

Für eine Besser Übersicht haben wir auch diesmal wieder eine kleine Einkaufsliste für euch zusammengestellt:

2.2″ TFT ILI9341 SPI-DisplayAliexpress* (ca. 6,50 €) oder Amazon* (ca. 13 €)

Raspberry Pi – ca. 30 – 40 € – siehe z.B. bei Amazon*

Netzteil für Raspberry Pi – ca. 10 € – siehe z.B. bei Amazon*

Verbindungskabel – ca. 4 € – siehe z.B. bei Amazon*

56 Ohm Widerstand – ca. 4 € – siehe z.B. bei Amazon*

Display an den Raspberry anschließen

Als erstes müssen wir das Display an unseren Raspberry Pi anschließen, zur besseren Übersicht findet ihr weiter unten auch nochmal das genau Schaltbild vor.

Den ersten SDO/MISO Pin unseres Displays schließen wir an den MISO-Pin (GPIO9 – Pin 21) unseres Raspberry’s an, für den zweiten LED-Pin des Displays benötigen wir zusätzlich einen 56 Ohm Widerstand – dieser wird anschließend mit dem GPIO18 (Pin 12) des Pi’s verbunden (da dieser auch PWM unterstützt, können wir später auch die Helligkeit der Hintergrundbeleuchtung beliebig anpassen).

Kommen wir nun zum dritten Display-Pin „SCK“, diesen schließen wir an den SCLK-Pin (auf Pin 23) unseres Bastelrechners an. Nun folgt der „SDI/MOSI“ Anschluss des SPI-Screens, diesen schließen wir an den MOSI (GPIO 10 – Pin 19) des Mini-PC’s an. Weiter geht es mit dem „DC/RS“ Pin, dieser wird an GPIO 24 (Pin 18) angeschlossen, weiterhin müssen wir den RESET-Pin mit dem GPIO 25 (Pin 22) verbinden.

Den drittletzten „CS“-Displaypin müssen wir an den GPIO 8 anschließen – dies ist Pin 24 des Raspberry’s. Den GND-Pin können wir hingegen mit einen beliebigen Ground-Port (Pin 6, 9, 14, 20, 25, 30, 34, 39) unseres Raspberry verbinden. Zuletzt benötigen wir für die Stromversorgung auch noch den VCC-Pin, diesen schließen wir an einen der zwei vorhandenen 3,3 Volt Ports an (Pin 1 oder 17).

Raspberry GPIO Pins

SPI Display - Schaltplan

Funktionstest

Nachdem alles richtig angeschlossen wurde können wir unseren Raspberry Pi an das Netzteil anschließen. Unseren ersten Funktionstest führen wir mit dem aktuellen Raspbian Jessie durch, das entsprechende Image könnt ihr euch von der offiziellen Webseite HIER herunterladen.

Zunächst müssen wir, falls noch nicht geschehen, unseren SPI-Port im Betriebssystem freischalten. Dazu führen wir den folgenden Befehl aus um in das Konfigurationsmenü zu gelangen:

sudo raspi-config

Nun wechselt in das „Advanced Options“ Untermenü und wählt dort „SPI“ aus – dieses aktiviert ihr dann und beendet anschließend den Konfigurationsassistenten. Anschließend werden wir mit dem folgenden Befehl noch unser System auf den aktuellen Stand bringen (dies kann einige Minuten in Anspruch nehmen):

sudo rpi-update

Sobald das System erfolgreich aktualisiert wurde, müsst ihr das System noch mit dem folgenden Reboot-Befehl noch neu starten:

sudo reboot

Verbindet euch nun neu mit eurem Raspberry Pi, wir führen nun mit den nachfolgenden Befehlen einen ersten Funktionstest durch:

sudo modprobe fbtft_device name=tm022hdh26 rotate=90 speed=80000000 fps=60
sudo FRAMEBUFFER=/dev/fb1 startx

Nach einem kurzen Moment sollte euer Display nun die typische Raspbian Desktopoberfläche anzeigen, damit hätte unser Display den ersten Funktionstest problemlos bestanden. Unsere komplette Anleitung haben wir hier auch nochmal als Video aufbereitet:

Autostart

Da wir das SPI-Display nicht jedesmal manuell über die Kommandozeile neu starten wollen, legen wir nun die entsprechende Befehle in den Autostart ab, dies funktioniert wie folgt: Zunächst müssen wir eine neue Datei im modules-load-Verzeichnis erstellen:

sudo nano /etc/modules-load.d/fbtft.conf

Dieser“fbtft.conf“-Datei geben wir folgenden Inhalt und speichern diese anschließend ab:

spi-bcm2835
fbtft_device

Nun erstellen wir noch eine weitere Datei im modprobe-Verzeichnis:

sudo nano /etc/modprobe.d/fbtft.conf

Dieser geben wir den folgenden Inhalt und speichern auch diese ab:

options fbtft_device name=tm022hdh26 rotate=90 speed=80000000 fps=60

Zuletzt müssen wir noch die bereits vorhandene rc.local Datei editieren:

sudo nano /etc/rc.local

Vor dem „exit 0“-Absatz erweitern wir die Datei mit folgendem Inhalt:

con2fbmap 1 1
sudo FRAMEBUFFER=/dev/fb1 startx

Speichert nun die gemachte Änderung und startet euren Raspberry Pi mit dem typischen Reboot-Befehl neu:

sudo reboot

Das Display sollte nun ohne zusätzliche manuelle Eingaben komplett automatisch starten.

Helligkeit regulieren

Da wir den LED-Pin unseres Displays an einen PWM-Port (Pulsweitenmodulation) unseres Raspberrys angeschlossen haben, können wir nach belieben die Helligkeit der Hintergrundbeleuchtung verändern. Dazu müsst ihr lediglich folgenden Befehl eingeben, dadurch wird das Display zunächst dunkel:

gpio -g mode 18 pwm

Um die Helligkeit auf die maximale Stufe zu setzen, gebt ihr den folgenden Befehl ein:

gpio -g pwm 18 1024

Im Bereich von 0 – 1024 könnt ihr beliebig die Helligkeit regulieren, verändert einfach den Befehl dementsprechend.



Kleine Farb-TFTs an den Raspberry anschließen - wir zeigen euch wie es funktioniert. (Bild: Xgadget.de)
Datum:
11.10.2016, 19:30 Uhr
Autor:
Comments:
Kommentare
* gesponsorter Link
Blogverzeichnis - Bloggerei.de