Arduinos (Uno/Pro Mini) und ein 1.8 Zoll TFT SPI Display (QDTech)

Im Gegensatz zum HY-1.8 handelt es sich hier um ein 1.8 Zoll Display mit dem Samsung S6D02A1 Treiber-Chip. Die Anschlussbelegung ist etwas unterschiedlich und es muss eine Arduino-Bibliothek ausgetauscht werden. Ansonsten ist die Verwendung durch die Adafruit-Grafik-Bibliothek nahezu gleich.

Arduinos (Uno/Pro Mini) und ein 1.8 Zoll TFT SPI Display (QDTech)

Arduinos Pro Mini 3,3V 8MHz und ein 1.8 Zoll TFT SPI Display (QDTech) – blog.simtronyx.de

Allerdings darf dieses Display an den Datenleitungen nur mit 3,3V betrieben werden, weswegen hier 2 Beispiele zum Beschalten aufgeführt werden:

Schaltung mit 3,3V Arduino Pro Mini:

Dies ist die einfachere Variante, da sie direkt mit einem 3,3V Arduino Pro Mini realisert wird:

Schaltplangröße:

1afbgchdie1j5510101515202025253030353540404545505055556060afbgchdiej1.8 SPI 128X1601.8 TFT MODULE-+-+5V OFF 3.35V OFF 3.3
Für weitere Informationen (z.B. Pinbelegungen von Bauteilen oder genaue Kabelverbindungen)
mit der Maus über Elemente fahren (oder im Touch-Modus: Elemente antippen)...

Arduino Pro Mini 3,3V 8MHz 1,8 Zoll TFT (QDTech) Breadboard Power Modul
D8 RST
D9 D/C
D10 (SS) CS
D11 (MOSI) DIN
D13 (SCK) CLK
VCC
(wenn Jumper J1 offen (Rückseite),
ansonsten an 3,3V!)
5V
GND GND GND
VCC
(nur wenn Progammer nicht verbunden !)
BL
(eventuell über einen Widerstand um die
Helligkeit der Hintergrundbeleuchtung zu reduzieren)
3,3V

Schaltung Arduino Uno 5V:

Bei 5V Arduinos muss von 5V auf 3,3V umgewandelt werden, was am einfachsten über 1kOhm Widerstände erfolgt:

Schaltplangröße:

1afbgchdie1j55101015152020252530afbgchdie30j1.8 SPI 128X1601.8 TFT MODULEATMega328P-+-+5V OFF 3.35V OFF 3.3
Für weitere Informationen (z.B. Pinbelegungen von Bauteilen oder genaue Kabelverbindungen)
mit der Maus über Elemente fahren (oder im Touch-Modus: Elemente antippen)...

Arduino 5V (Uno,Nano) 1,8 Zoll TFT (QDTech) Breadboard Power Modul
D8 RST (über 1kOhm Widerstand)
D9 D/C (über 1kOhm Widerstand)
D10 (SS) CS (über 1kOhm Widerstand)
D11 (MOSI) DIN (über 1kOhm Widerstand)
D13 (SCK) CLK (über 1kOhm Widerstand)
5V
(nur wenn USB NICHT verbunden!)
VCC
(wenn Jumper J1 offen (Rückseite),
ansonsten an 3,3V!)
5V
GND GND GND
BL
(eventuell über einen Widerstand um die
Helligkeit der Hintergrundbeleuchtung zu reduzieren)
3,3V

Sourcecode (Sketch):

Bevor wir den Sketch auf unseren Arduino aufspielen müssen wir noch 2 Bibliotheken installieren. Das wäre einserseits eine modifizierte Adafruit_QDTech-Bibliothek zur Ansteuerung des Displaytreibers und dann noch die Adafruit_GFX-Bibliothek für die Grafikausgaben.

// Grafiktest 1.8 Zoll TFT-Farb-Display (QDTech)

#define CS_PIN	10
#define DC_PIN	9
#define RST_PIN	8

#include <Adafruit_GFX.h>    // Adafruit Grafik-Bibliothek
#include <Adafruit_QDTech.h> // modifizierte Adafruit-Bibliothek
#include <SPI.h>

Adafruit_QDTech tft = Adafruit_QDTech(CS_PIN,DC_PIN,RST_PIN);  // Display-Bibliothek Setup

void setup(void) {
  
  tft.init();   		// Display-Chip initialisieren
  
  tft.setRotation(0);	// Display steht laut Schaltplan auf dem Kopf, also anpassen
}

void loop() {

  
  // Bildschirm mit Farbe fuellen
  // fillScreen(farbe);
  tft.fillScreen(QDTech_BLACK);

  delay(2000); // 2 Sekunden warten
  
  // Fontgroesse setzen
  // setTextSize(groesse);
  tft.setTextSize(2);
  
  // Schrift umbrechen?
  // setTextWrap(true);   true=Ja, false=Nein
  tft.setTextWrap(true); 
  
  // Textposition setzen
  // setCursor(x,y);
  tft.setCursor(24,4);
 
  // Textfarbe setzen
  // setTextColor(farbe);
  tft.setTextColor(QDTech_WHITE);
  
  // Text ausgeben
  // print(text);
  tft.print("Hallo !");

  delay(2000); // 2 Sekunden warten
  
  // Linie zeichnen
  // drawLine(x_start,y_start,x_ende,y_ende,farbe);
  tft.drawLine(10,24,118,24,QDTech_GREEN);

  delay(2000); // 2 Sekunden warten
    
  // Ein Rechteck zeichnen 
  // drawRect(x_oben_links,y_oben_links,weite,hoehe,farbe);
  tft.drawRect(4,35,120,20,QDTech_RED); 
  
  delay(2000); // 2 Sekunden warten

  // Ein gefuelltes Rechteck zeichnen
  // drawRect(x_oben_links,y_oben_links,weite,hoehe,farbe);
  tft.fillRect(10,40,108,10,QDTech_YELLOW);

  delay(2000); // 2 Sekunden warten

  // Ein Rechteck mit abgerundeten Ecken zeichnen 
  // drawRoundRect(x_oben_links,y_oben_links,weite,hoehe,rundung,farbe);
  tft.drawRoundRect(4,65,120,20,5,QDTech_MAGENTA); 

  // Ein gefuelltes Rechteck mit abgerundeten Ecken zeichnen 
  // fillRoundRect(x_oben_links,y_oben_links,weite,hoehe,rundung,farbe);
  tft.fillRoundRect(10,70,108,10,5,QDTech_GREY);
  
  delay(2000);
  
  // Einen Kreis zeichnen 
  // drawCircle(x_oben_links,y_oben_links,radius,farbe);
  tft.drawCircle(64,115, 20, QDTech_CYAN);
  
  delay(2000); // 2 Sekunden warten
  
  // Einen gefuellten Kreis zeichnen 
  // fillCircle(x_oben_links,y_oben_links,radius,farbe);
  tft.fillCircle(64,115, 10, QDTech_BLUE);
  
  delay(2000); // 2 Sekunden warten

  // Neue Fontgroesse setzen
  // setTextSize(groesse);
  tft.setTextSize(1);
  
  // Neue Textfarbe setzen
  // setTextColor(farbe);
  tft.setTextColor(QDTech_GREEN);
  
  // Neue Textposition setzen
  // setCursor(x,y);
  tft.setCursor(14,147);
  
  // Text ausgeben
  // print(text);
  tft.print("blog.simtronyx.de");
  
  delay(8000); // 8 Sekunden warten
  
  // Gesamtes Display invertieren?
  // invertDisplay(true);   true=Ja, false=Nein
  tft.invertDisplay(true);
  
  delay(1000); // 1 Sekunde warten
  
  // Gesamtes Display invertieren?
  // invertDisplay(false);   true=Ja, false=Nein
  tft.invertDisplay(false);

  delay(1000); // 1 Sekunde warten
}


Download Source Code

Nicht das richtige Display? Dann hilft eventuell dieser Beitrag:

Bauteile (Bezugsquellen):

eBay: 1.8 Zoll TFT SPI Display
Arduino
Arduino Pro Mini 3.3V 8MHz
Breadboard Kabel
Breadboard Power Modul
Widerstand 1k
Amazon: 1.8 Zoll TFT SPI Display
Arduino
Arduino Pro Mini 3.3V 8MHz
Breadboard Kabel
Breadboard Power Modul
Widerstand 1k

Gut?

FacebooktwitterredditpinterestlinkedinmailFacebooktwitterredditpinterestlinkedinmail