Inhaltsverzeichnis:

Rasberry Pi Zero W mit Arduino TfT (ili9341) - Gunook
Rasberry Pi Zero W mit Arduino TfT (ili9341) - Gunook

Video: Rasberry Pi Zero W mit Arduino TfT (ili9341) - Gunook

Video: Rasberry Pi Zero W mit Arduino TfT (ili9341) - Gunook
Video: Connect an SPI TFT with Touchscreen to your Arduino - ILI9341 LCD with XPT2046 Touch screen 2024, November
Anonim
Raspberry Pi Zero W mit Arduino TfT (ili9341)
Raspberry Pi Zero W mit Arduino TfT (ili9341)

Nach einer Woche Recherche, Debugging und Test habe ich endlich mein SeedStudio 2,8 Arduino TfT auf meinem RasPi 0 W mit Kivy und GPIO zum Einsatz gebracht, um eine Smartwatch oder ein kleines Anzeigegerät zu erstellen. Da alle erforderlichen Informationen verstreut sind Über mehrere Websites hinweg dachte ich, ich würde etwas zusammenstellen, beginnend mit der Verkabelung. Nur eine Anmerkung, dass die Touch-Schnittstelle nicht funktioniert und analoge Pins 0-3 benötigt. Ich kann es später zum Laufen bringen.

Ich verwende den offiziellen Build von Raspberry Pi Stretch und gehe davon aus, dass Sie bereits ein Disk-Image auf einem USB-Laufwerk haben. Ich habe nicht auf Jessie oder anderen Distributionen getestet. Ich gehe auch davon aus, dass Sie über allgemeine Kenntnisse im Löten, grundlegender Elektronik und etwas Linux-Know-how verfügen.

Dieses Tutorial beginnt, als ob Sie Stretch neu installiert hätten.

Schritt 1: Schritt 1: Verkabelung

Schritt 1: Verkabelung
Schritt 1: Verkabelung

Das SeedStudio 2,8 TfT-Display für Arduino verwendet 8 Drähte, um das Display über die SPI-Schnittstelle mit dem RasPi zu verbinden.

HINWEIS: Wenn Sie kein Mini-HDMI-Kabel haben, können Sie die zusammengesetzten "TV" -Pins über dem USB-Stromanschluss verwenden und einen kleinen Hohlstecker auf die Pins löten. Der quadratische Stift ist positiv und der runde ist negativ. Löten Sie mit der Buchse das Plus an den Schaft (Mitte) des Laufsteckers und das Minus an das Gehäuse. Finden Sie am männlichen Ende, welches Kabel der Fall ist (verwenden Sie ein Ohmmeter) und löten Sie es an die Masse des Cinch-Steckers. Verbinden Sie die beiden verbleibenden Drähte miteinander. Schalten Sie den Pi ein, um zu testen, ob er funktioniert.

Sobald der Pi betriebsbereit ist, aktualisieren Sie den Pi mit:

sudo rpi-update

sudo-Update

sudo-Upgrade

Um dieses Display zu verkabeln, schließen Sie Folgendes an:

Arduino TfT-Pins zu RasPi-Pins

MOSI D11 bis GPIO 10 (SPI_MOSI)MISO D12 bis GPIO 09 (SPI_MISO)

SCK D13 bis GPIO 11 (SPI_CLK)

TFT_CS D5 bis GPIO 08 (SPI_CE0_N)

TFT_DC D6 zu GPIO 24

5V bis 5 Volt Stromschiene

Masse zu Masse

Zurücksetzen auf GPIO 23

Zusätzlich können Sie den Jumper auf der Rückseite mit der Bezeichnung "Backlight" verlöten und ein zusätzliches Kabel vom TfT an Pin D7 an einen beliebigen Pin des RasPi anschließen, um die Hintergrundbeleuchtung zu steuern.

Schritt 2: Schritt 2: Raspberry Pi-Setup

Schalten Sie den Pi ein und öffnen Sie ein Terminal STRG + ALT + T ist die Schnelltaste.

Typ: sudo raspi-config

Scrollen Sie nach unten zu den Schnittstellenoptionen, wählen Sie SPI und drücken Sie die Eingabetaste. Wählen Sie "Ja" zum Aktivieren. Wenn Sie zum Neustart aufgefordert werden, wählen Sie Nein. Aktivieren Sie auch in diesem Menü SSH. Das Standardpasswort ist Himbeere. Um per SSH in den Pi zu gelangen, geben Sie pi@Raspberry oder wie auch immer Sie Pi auf einem anderen Computer genannt haben ein.

Nächster Typ: sudo nano /boot/config.txt

Scrollen Sie nach unten, wo "framebuffer_width" und "framebuffer_height" stehen, ändern Sie die Werte auf 680 bzw. 420 und kommentieren Sie diese Zeilen.

Direkt darunter befindet sich das "hdmi_group/_mode" Entkommentieren Sie diese und ändern Sie die Werte auf 2 bzw. 87 und fügen Sie "hdmi_cvt=680 420 60 1 0 0 0" als neue Zeile hinzu.

Scrollen Sie wieder nach unten, bis Sie "dtparam=i2c_arm=on" erreichen und "dtparam=spi=on" entkommentieren Sie diese beiden Zeilen.

Fügen Sie nun ganz unten diese Zeilen hinzu:

dtoverlay=rpi-display #(ersetzen Sie durch einen, der mit Ihrem Treiber funktioniert, ich verwende ili9341, GitHub dtoverlay-Geräte)

dtparam=rotate90 #(0 ist Hochformat)

dtparam=speed=48000000

dtparam=xohms=100

dtparam=debug=4

gpu_mem=64

Drücken Sie STRG+X, dann Y und geben Sie ein, um die Datei zu speichern.

Weiter: sudo nano /boot/cmdline.txtAm Ende der Zeile fügen Sie hinzu: fbcon=map:10 fbcon=font:ProFont6x11

Endlich: sudo nano /etc/modules

Hinzufügen: spi-bcm2835

snd-bcm2835

i2c-bcm2708

flexfb

fbtft_device

Wenn Sie alles richtig gemacht haben, sollten Sie nach dem Laden des Kernels anstelle eines weißen Bildschirms die ganze Zeit einen schwarzen Bildschirm auf dem TfT sehen. Dies ist eine gute Nachricht und bedeutet, dass der RasPi über die SPI-Schnittstelle mit dem TfT kommuniziert. Möglicherweise sehen Sie auch einen Boot-Ladebildschirm auf dem TfT selbst.

Schritt 3: Schritt 3: Fbturbo Config und FBCP installieren

Wenn Sie nun testen möchten, ob das TfT das Display widerspiegelt.

Geben Sie ein: sudo nano /usr/share/X11/xorg.conf.d/99-fbturbo.conf

Wo steht "Option "fbdev" "/dev/fb0"

Ändern Sie die "0" in eine "1". Dadurch wird nun das HDMI-Display auf den TfT-Bildschirm portiert. Starten Sie einfach den Pi neu und er sollte den Desktop auf das TfT laden. Ändern Sie es wieder auf "0" und setzen Sie das Tutorial fort.

Jetzt müssen wir cmake installieren, um fbcp und fbcp zu kompilieren, um die HDMI-Spiegelung auf die SPI-Schnittstelle zu ermöglichen.

Also: sudo apt-get install cmake

Sobald das erledigt ist: sudo git clone

mkdir-Build

CD-Build

cmake /home/pi/rpi-fbcp (oder wohin Sie die rpi-fbcp-Datei heruntergeladen haben)

machen

sudo install fbcp /usr/local/bin/fbcp

Sobald dies erledigt ist, wenn Sie "fbcp &" eingeben, sollte das TfT Ihren Desktop spiegeln.

Damit es beim Booten ausgeführt wird, ändern Sie die Datei rc.local wie folgt: sudo nano /etc/rc.local. Sie können den unnötigen "if"-Befehl löschen und "fbcp &" hinzufügen. Verlassen Sie den Ausgang 0 unten.

Nachdem alle Schritte abgeschlossen sind, sollte Ihr TfT-Display betriebsbereit sein und nach dem Booten automatisch starten. Sie können die Anzeigegrößen in /boot/config.txt ändern oder den Overscan auskommentieren, wenn Sie schwarze Ränder haben.

Empfohlen: