Dienstag, 19. Februar 2019

10. Teil iRadio: Displays mit 8/16 Bit - Parallelschnittstelle

Displays mit 8/16 Bit - Parallelschnittstelle

Autor: Bernhard

es werden die folgenden TFT- Controller unterstützt:

8bit Parallel ILI9325   
8bit Parallel ILI9327   
8bit Parallel ILI9341   
8bit Parallel ILI9342   
8bit Parallel ILI9481   
8bit Parallel SPFD5408   
8bit Parallel S6D1121   
8bit Parallel R61505U   
16bit Parallel ILI9341 



Im Bild ein 8Bit ILI9341.

Der Daemon liegt in iRadio/display/ILIxxxx_parallel/ und hat den Code wie gewohnt in der Datei displayd.c .
Wie die Verkabelung des Displays mit dem Raspberry erfolgt, ist in der Datei README.md hinterlegt.

Der jeweils verwendete Displaycontroller ist in der Datei build.sh einzutragen.

Beispieleintrag in der build.sh:

cc -o displayd displayd.c fontx.c ili93xx.c -lwiringPi -lm -lpthread -DILI9481

Hier wird ein Daemon mit ILI9481-Unterstützung gebaut.

Für ILI9341 sieht build.sh dann so aus:

cc -o displayd displayd.c fontx.c ili93xx.c -lwiringPi -lm -lpthread -DILI9341 

Insgesamt gibt es in build.sh die Optionen:

-DILI9325 
-DILI9327 
-DILI9341 
-DILI9342 
-DILI9481 
-DSPFD5408 
-DS6D1121 
-DR61505U 

In der Datei pin.conf kann man festlegen welcher GPIO jeweils für welche Datenleitung verwendet wird, steht aber auch alles in README.md .

Nachdem das Display am Raspberry angeschlossen ist und  der Controllertyp in build.sh eingetragen wurde, kann man das compilieren und installieren des Daemons im iRadio-Order durch den Aufruf des Scriptes install_ILIxxxx_TFT_par.sh mit root-Rechten beginnen. Nach einem Reboot des Radios ist dann alles aktiv. Achtet darauf das sich der Steuerdaemon gpiod (für die Programm- oder Lautstärkenregler) nicht mit dem Display ein GPIO-Pin teilen muss, andernfalls ist das Verhalten des Radios unbestimmt! Aber auch das dürfte eigentlich klar sein!

Wie immer kann und soll displayd durch den Nutzer selbstständig anpassbar sein. Die hier mitgebrachten Treiber bieten dazu eine wunderschöne API für eigene Oberflächen.

Einige dieser Displays haben auch eine berührungsempfindliche Oberfläche. Wie man diese an den Raspberry anschließt und abfragt, steht ebenfalls in der README.md. Damit lässt sich auch abseits von X11/FLTK eine entsprechend zu steuernde Nutzeroberfläche gestalten.
 

Keine Kommentare:

Kommentar veröffentlichen