Main /

RPI-TFT

Allgemein

Knowledge Base

Virtualisierung Emulation

Technik und Wissen

Community

Privat

%center%[[http://validator.w3.org/check?uri=referer|http://www.w3.org/Icons/valid-xhtml10.png]]%%

RPI-TFT

/ HomePage / Computerthemen / Hardware / Raspberry Pi / RPI-TFT

Mini TFT-Display (HY-1.8 SPI) am Raspberry PI

Das Display

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 winking smiley 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.

Verdrahtung

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 PinRaspberry GPIO Pin
1 - GND6 - GND
2 - VCC1 - 3.3V
6 - Reset22 - GPIO25
7 - A018 - GPIO24
8 - SDA19 - GPIO10 / MOSI
9 - SCK23 - GPIO11 / SCLK
10 - CS24 - GPIO8 / CE0
15 - LED+1 - 3.3V
16 - LED-6 - GND

Ansteuerung

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.

Angepasste Firmware installieren:

Firmware-update tool installieren:

sudo wget https://raw.github.com/Hexxeh/rpi-update/master/rpi-update -O /usr/bin/rpi-update && sudo chmod +x /usr/bin/rpi-update

Dann muss die SPI betreffende Zeile aus der raspi-blacklist.conf auskommentiert werden (also einfach #) davorschreiben:

sudo nano /etc/modprobe.d/raspi-blacklist.conf

Die betreffen Datei sieht dann so aus:

# blacklist spi and i2c by default (many users don't need them)

#blacklist spi-bcm2708
blacklist i2c-bcm2708

Firmware installieren und RPI neu starten:

sudo REPO_URI=https://github.com/notro/rpi-firmware rpi-update
sudo shutdown -r now

Boot-Console auf dem Display anzeigen lassen

etc/modules editieren und Kernelmodul eintragen, sodass es beim nächsten Boot gestartet wird:

sudo nano /etc/modules

Diese beiden Zeilen hinzufügen:

fbtft_device name=sainsmart18 rotate=270 bgr=1
con2fbmap 1 1

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

sudo nano /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!

dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p8 rootfstype=ext4 elevator=deadline rootwait fbcon=map:10 fbcon=font:MINI4x6

Nach dem nächsten Bootvorgang sollte ein login-Prompt auf dem kleinen Display stehen!

Filme auf dem Mini-Display abspielen

Dies ist zwar genaugenommen ziemlich sinnfrei, aber an Niedlichkeit kaum zu überbieten. Außer von Tierbabies winking smiley

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:

sudo mplayer -vo fbdev:/dev/fb1 -x 160 -y 128 -zoom -framedrop <meinfilm.avi>

Wobei <meinfilm.avi> natürlich durch die gewünschte Filmdatei ersetzt werden muss... logisch.

Et voilà - Mäusekino!

Links:

Frische Änderungen (All) | Edit SideBar Zuletzt geändert am 16.12.2013 19:02 Uhr Seite Bearbeiten | Seitenhistorie
Powered by PmWiki