08.09.2013, Axel SchultzeDK4AQ, Quelle Jörg Alpers ... · 29.05.14 Ser. 1,8" Grafik-Displays mit...

32
29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 1 Serielles Grafik-Display (GFX-Lib) 08.09.2013, Axel SchultzeDK4AQ, Quelle Jörg Alpers, Adafruit Quellen und Eigenschaften für Grafik-Displays Die TFT Display -Library GFX Das Grafikmodul 1.8" 18-bit color TFT LCD (adafruit) Interface des Grafikmoduls Schaltung des Display-Experiments Software Quellen

Transcript of 08.09.2013, Axel SchultzeDK4AQ, Quelle Jörg Alpers ... · 29.05.14 Ser. 1,8" Grafik-Displays mit...

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 1

Serielles Grafik-Display (GFX-Lib)08.09.2013, Axel SchultzeDK4AQ, Quelle Jörg Alpers, Adafruit

● Quellen und Eigenschaften für Grafik-Displays● Die TFT Display -Library GFX● Das Grafikmodul 1.8" 18-bit color TFT LCD (adafruit)● Interface des Grafikmoduls● Schaltung des Display-Experiments● Software● Quellen

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 2

1. Quellen und Eigenschaften von Grafik-Displays

Farb-Grafik-Displays für Microcontroler sind derzeit günstig auf dem Markt zu haben.Es handelt sich um Restposten aus dem Handy-Business. Die Preise liegen zwischen10 und 30 Euro, die Bildschirmgröße liegt derzeit zwischen 1 und 5“. Dazu kommenFarbinformationen mit 18Bit Farbtiefe pro Farbpunkt.

Da das Handy-Geschäft ein schnelllebiges Geschäft ist, ist die Erhältlichkeit derModule sehr kurzlebig.

Wenn man mit kleinen Microcontrollern arbeitet, so stellt sich die Frage nach derverfügbaren Anzahl Pins. Für solche Systeme sind Displays mit seriellen Schnittstellensinnvoll. Die sinnvollste Schnittstelle ist aufgrund der Geschwindigkeit der SPI-Bus.

Für neue Handys / Smartphones wird eine Pixel-weise gleitende Verschiebung desBildes erwartet. Das erfordert für die schnelle Verschiebung einer großen Datenmengeeinen hohen Datentransfer. Dies ist auch durch SPI bei großen Displays nicht zuleisten.

Also gibt es nur wenige kleine Grafik-Display aus älteren Handyserien auf dem Markt.Allerdings tauchen neuerdings auch kleine serielle Displays mit anderen Technologienauf. So sind lichtstarke Displays mit OLED-Technologien erhältlich (Organische LED).Auch Anzeigen aus Ebook-Lesegeräten „Electronic Paper“ sind erhältlich.

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 3

2. Die TFT Display - Adafruit-GFX-LibraryDiese Library stammt von der Firma Adafruit. Adafruit ist eine Firma mit ca. 50MA. Siewurde 2005 von der Ingenieurin Limor "Ladyada" Fried gegründet. Diese Firma hat inder Vergangenheit mit vielen Entwicklungen für Arduino und ähnliche Systeme dieMAKE-Bewegung sehr gefördert und von dieser Massenbewegung profitiert.Auftragsentwicklungen sind mittlerweile ebenfalls Standardgeschäft.

Adafruit wurde 2012 von der amerikanischen Zeitschrift Entrepreneurs zum Startup-Unternehmen des Jahres gewählt

Zu vielen der entwickelten Boards wurden von Adafruit auch Bibliotheken zurAnwendung entwickelt. Eine dieser Bibliotheken ist GFX. Mittlerweile wird GFX direktvon Arduino unterstützt und die Funktionen der Bibliothek können über die Hilfe-Funktion zugegriffen werden.

Die Library kann von https://github.com/adafruit/Adafruit-GFX-Library heruntergeladenwerden. Sie wird gepflegt (siehe README.txt öffnen, History). Es sollte immer derneueste Stand verwendet werden.

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 4

Ein Tutorial zur GFX-Library findet sich unter:http://learn.adafruit.com/adafruit-gfx-graphics-library

Für folgende Displays sind Libraries vorhanden:

● RGBmatrixPanel, für 16x32 and 32x32 RGB LED matrixpanels

● Adafruit_TFTLCD, für 2.8" TFT LCD touchscreen breakout undTFT Touch Shield für Arduino.

● Adafruit_HX8340B, für 2.2" TFT Display mit microSD.● Adafruit_ST7735, für 1.8" TFT Display mit microSD.● Adafruit_PCD8544, für die Nokia 5110/3310 monochrome LCD.● Adafruit-Graphic-VFD-Display-Library, für 128x64 Graphic

VFD.● Adafruit-SSD1331-OLED-Driver-Library-for-Arduino für das

0.96" 16-bit Color OLED Display mit MicroSD Holder.● Adafruit_SSD1306 für Monochrome 128x64 and 128x32 OLEDs.

Die Adafruit_GFX Library arbeitet mit einer zweiten Library zusammen , die dieBedienung unterschiedlicher Grafik-Controller ermöglicht. Z.B. der Controller ST7735im Color LCD erfordert die Installation beider Libraries: Adafruit_GFX undAdafruit_ST7735 Libraries.

- https://github.com/adafruit/Adafruit-ST7735-Library- https://github.com/adafruit/Adafruit-GFX-Library

Die GFX-Library istnicht identisch mit

der Arduino TFTLibrary !

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 5

(1) (2) (3) (4) (5) (6) (7) (8) (9) (10)

GN

DVC

CR

ESET D/C

CAR

D_C

STF

T_C

SM

OSI

SCK

MIS

OLI

GH

T

3. Das Grafikmodul 1.8" 18-bit color TFT LCD(Adafruit)

Das Board ist bei vielen Arduino-Läden erhältlich(Lipoly, Watterott) und über Ebay auch aus China zubeziehen..

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 6

Spezifikationen

● LCD TFT display mit 1.8" Diagonale● 128x160 Auflösung, 18-bit (262,144) Farben● ST7735R Controller mit eingebautem Pixel-

adressierbarem Vido-RAM-Buffer● 4- oder 5- Draht-SPI-Interface● Eingebauter MicroSD Kartenadapter – Ansteuerung mit 2 weiteren Digitalpins● 5V kompatibel! Anwendung mit 3.3V oder 5V Logik● Onboard 3.3V @ 150mA LDO Spannungsregler● 2 weiße LED Backlights,mit Steuertransistor, PWM-Helligkeitssteuerung

möglich● 2,54mm Pfostenverbinder zur einfachen Breadboard-Verwendung● 2mm Montage-Löcher an den 4 Ecken● Abmessung 34mm x 56mm x 6.5mm

Quelle: www.adafruit.com

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 7

Schaltung des JH-T1800-Breakouts von Ladyada

Achtung ! Es gibt mit dem gleichen Display auch andere Anbieter. Es werdenverschiedene Stecker und Anschlussbelegungen verwendet !Auch die Signalbedeutungen stimmen nicht immer (insbes. die LED-Beleuchtung)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 8

4. Interface des Grafikmoduls1.8" 18-bit color TFT LCD display with microSD card breakout – ST7735R (Adafruit)ID 358

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 9

Sämtliche Daten und Steuerleitungen können an allen möglichen freien Pins des Arduinosangeschlossen werden, auch SDA,SCK, MISO, können frei wählbar angeschlossen werden.

Die beste Anbindung hinsichtlich Geschwindigkeit der Datenübertragung erreichtman aber durch die Anbindung an die spezifischen hardwareunterstützten SPI-Signalpins des Arduinos !

Die nachfolgende Tabelle zeigt ein Beispiel der Verbindung Arduino – Grafikboard.

In der Spalte „austauschbar“ ist gekennzeichnet, ob Pins am Prozessor tauschbar sind.

flex: diese Kombination ist frei wählbarfest: sollte so verwendet werden !

Die Pinkombination mit flexibelen Eigenschaften muß im Sourcecode definiert werden. SPI-Pins mit Hardware -Funktion sind als Default-Werte vereinbart.

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 10

Arduino Nano DiplaySignal Pin Bedeutung Pin Signal aus-

tausch-bar

Bemerkung

D9 12 04 A0 bzw.D/C

flex Bezeichnung auch alsRS/DC - ST7735 needsthis to toggle betweendata & commands

D10 13 06 CS flex ChipSelect

D11 14 MOSI 09 MISO fest SerialData

D13 16 SCK 08 SCK fest SerialClock

RST 08 03 RESET flex Reset

5V 27 02 VCC fest Versorgungsspannung

GND 4/29 01 GND fest Ground

5V s.o. 10 LED+ fest HintergrundbeleuchtungPlus

D12 15 MISO - - - Nicht verwendet

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 11

5. Schaltung des Experiments

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 12

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 13

6. SoftwareDie GFX-Library und die Controller-Libraries müssen in den libraries-Ordner alsVerzeichnis Adafruit_ST7735 und Adafruit_GFX abgelegt werden. libraries muss in demVerzeichnis angelegt werden, in dem das Skecthbook liegt (siehe Arduino IDEEinstellungen )z.B.:c:...\Controller\Arduino_Code\c:...\Controller\Arduino_Code\libraries\UTFT\

Das Programmbeispiel GRAF2_SPI18Test1 (graphicstest_highspeed) stammt von :https://github.com/adafruit/Adafruit-ST7735-Library/blob/master/examples/graphicstest_highspeed/graphicstest_highspeed.pde

Das Programmbeispiel GRAF2_SPI18Test2 simuliert die Ausgabe eine Frequenzanzeigebei maximaler Änderungsgeschwindigkeit (Abstimmdrehknopf wird maximal schnell

betätigt) .

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 14

graphicstest_highspeed (1)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 15

graphicstest_highspeed (2)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 16

graphicstest_highspeed (3)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 17

graphicstest_highspeed (4)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 18

graphicstest_highspeed (5)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 19

graphicstest_highspeed (6)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 20

graphicstest_highspeed (7)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 21

graphicstest_highspeed (8)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 22

graphicstest_highspeed (9)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 23

graphicstest_highspeed (10)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 24

graphicstest_highspeed (11)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 25

graphicstest_highspeed (12)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 26

graphicstest_highspeed (13)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 27

graphicstest_highspeed (14)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 28

GRAF2_SPI18Test2 (1)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 29

GRAF2_SPI18Test2 (2)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 30

GRAF2_SPI18Test2 (3)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 31

TftPrintFreq (zugehörige Routine)

29.05.14 Ser. 1,8" Grafik-Displays mit GFXT, A.Schultze, DK4AQ 32

:● http://arduino.cc/en/Reference/TFTLibrary

● http://blog.simtronyx.de/arduino-nano-mit-1-8-zoll-tft-display/http://blog.simtronyx.de/arduino-nano-mit-1-8-zoll-tft-display/

● http://arduino.alhin.de/index.php?n=39

● http://mbed.org/users/smultron1977/notebook/spi-18-tft--mbed-work-in-progress

6. Quellen