Allgemein
Knowledge Base
- Neue Struktur (In Arbeit)
- Computertechnisches
Community
Privat
/ HomePage / Computerthemen / Hardware / Raspberry Pi / RPI-TFT
Das Display stammt von ebay, es ist kompatibel mit den 1,8 zoll Displays von Adafruit und sainsmart.
Es hat zwar nur eine Auflösung von 160x128 Pixel dafür war es billig und kann mit wenigen Leitungen seriell angesteuert werden. Auf der Rückseite befindet sich noch ein SD-Karten Slot, der ist aber an dieser Stelle nicht relevant.
Das Display arbeitet mit einem ST7735R Controller von Sitronix.
Die Pins am Display sind nur von unten an der Steckerleiste beschriftet. Dafür ist Pin 1 von oben benannt, wenigstans ist also die Numerierung ersichtlich.
Achtung:
Das Display kann per Lötbrücke auf 5V oder 3,3 eingestellt werden, es wird davon ausgegenagen dass es auf 3.3V eingestellt ist. Der verbaute Spannnungsregler ist ohnehin minderwertig. Sollte das Display im 5V Betrieb zu hell oder schlierig aussehen, ist der Spannungsregler höchsrtwarscheinlich defekt! Abhilfe: Spanungsregler auslöten und Lötbrücke schließen, dann das Display nur mit 3.3V verwenden!
Auf dem Raspberry ist Pin 1 der, der am dichtesten am SD-Karten Slot gelegen ist. Pin 2 befindet sich an der äußersten Ecke der Platine.
Display Pin | Raspberry GPIO Pin |
1 - GND | 6 - GND |
2 - VCC | 1 - 3.3V |
6 - Reset | 22 - GPIO25 |
7 - A0 | 18 - GPIO24 |
8 - SDA | 19 - GPIO10 / MOSI |
9 - SCK | 23 - GPIO11 / SCLK |
10 - CS | 24 - GPIO8 / CE0 |
15 - LED+ | 1 - 3.3V |
16 - LED- | 6 - GND |
Für das Display existiert der Framebuffer-Treiber fbtft, der als Kernel-Modul eingebunden werden kann. Zudem ist eine Anpassung der Raspberry Pi Firmware nötig.
Firmware-update tool installieren:
Dann muss die SPI betreffende Zeile aus der raspi-blacklist.conf
auskommentiert werden (also einfach #) davorschreiben:
Die betreffen Datei sieht dann so aus:
Firmware installieren und RPI neu starten:
etc/modules
editieren und Kernelmodul eintragen, sodass es beim nächsten Boot gestartet wird:
Diese beiden Zeilen hinzufügen:
Bei rotate=270
kann 0, 90, 180, 270 eingetragen werden, es bestimmt die Orientierung des Displayinhaltes. Wie man auf dem Foto sieht, steht das Display bei mir auf dem Kopf, deshalb soll das Bild um 270° gedreht dargestellt werden. 0° wäre hochkant, mit der Anschlußleiste nach unten.
Die Boot-Console soll ihre Ausgaben auf das Display schreiben, in einem winzigen Font, also editieren wir die /boot/cmdline.txt
Die bereits vorhandene Zeile wird um fbcon=map:10 fbcon=font:MINI4x6
verlängert und sieht bei mir dann so aus wie unten dargestellt.
Achtung es ist nur EINE ZEILE, auch wenn sie hier umgebrochen dargestellt wird!
Nach dem nächsten Bootvorgang sollte ein login-Prompt auf dem kleinen Display stehen!
Dies ist zwar genaugenommen ziemlich sinnfrei, aber an Niedlichkeit kaum zu überbieten. Außer von Tierbabies
Das Display schafft 30 FPS, also eine flüssige Wiedergabe. Da es aber so klein ist, müssen Filme gemeinhin kleiner gerechnet werden. Das funktioniert mit SD-Material meistens in realtime, besser ist es wenn man die Filme vorher mit geeigneter Software auf 160x128 herunterrechnet.
So spielt man Filme ab:
Wobei <meinfilm.avi> natürlich durch die gewünschte Filmdatei ersetzt werden muss... logisch.
Et voilà - Mäusekino!