Datasheet & Pinout: 1.3" IPS Farveskærm 240x240 (ST7789)

🌈 1.3" IPS Farveskærm (ST7789, 240x240)

Når en monokrom OLED ikke længere kan holde dit kunstneriske udtryk: en 1.3" IPS-farveskærm med 240x240 pixels og 65.000 farver. Skarp, lysstærk og flot fra alle vinkler.

Controlleren er en Sitronix ST7789, og skærmen styres over SPI. Den almindelige 7-pins udgave har ingen CS-pin – det har betydning for koden (se nedenfor).

🛒 Køb 1.3" IPS skærm📄 ST7789V datasheet (PDF)

3.3V! Skærmen har ingen spændingsregulator og ingen 5V-tolerante indgange. VCC skal på 3.3V, og bruger du en 5V Arduino, skal datalinjerne gennem en level shifter.

⚡ Hurtige specifikationer

Parameter Værdi
Skærmstørrelse 1.3 tommer, IPS
Opløsning 240 x 240 pixels, 65K farver (RGB565)
Controller-chip ST7789 (Sitronix)
Interface SPI (kun skrivning – ingen MISO), ingen CS-pin på 7-pins udgaven
SPI-mode Mode 2 eller 3 fordi CS mangler (Mode 0 virker typisk ikke)
Forsyning (VCC) 3.3V
Logikniveau 3.3V – brug level shifter fra 5V-boards
Baggrundslys BLK-pin: ikke forbundet eller HIGH = tændt, LOW = slukket, PWM = dæmpning

📌 Pinout

Set forfra, fra venstre mod højre (7-pins udgaven):

Pin Navn Funktion Forbindes til
1 GND Stel GND
2 VCC Forsyning 3.3V 3.3V
3 SCL SPI-clock (SCK) SCK
4 SDA SPI-data ind (MOSI) MOSI
5 RES Reset, aktiv lav Digital pin
6 DC Data/kommando-valg Digital pin
7 BLK Baggrundslys Ikke forbundet, 3.3V eller PWM-pin
Lad dig ikke snyde af navnene: SCL og SDA er her SPI-ben (clock og MOSI), ikke I2C. Står der SCK på dit eksemplar, er det det samme som SCL. Tjek altid silketrykket.

🔌 Sådan forbinder du den

Skærm Arduino UNO / Nano (via level shifter) ESP32 (DevKit, direkte)
GND GND GND
VCC 3.3V 3.3V
SCL D13 (SCK) GPIO 18
SDA D11 (MOSI) GPIO 23
RES D8 GPIO 4
DC D9 GPIO 2
BLK Ikke forbundet (eller D6 for PWM) Ikke forbundet (eller en PWM-pin)

Fordi der ikke er nogen CS-pin, kan skærmen ikke dele SPI-bussen med andre SPI-enheder (fx et SD-kort-modul).

💻 Eksempelkode

Installér "Adafruit ST7735 and ST7789 Library" og "Adafruit GFX Library". CS sættes til -1 (ingen CS), og SPI_MODE2 er tricket, der får de CS-løse moduler til at virke.

#include <Adafruit_GFX.h>
#include <Adafruit_ST7789.h>
#include <SPI.h>

#define TFT_CS   -1   // modulet har ingen CS-pin
#define TFT_DC    9   // ESP32: 2
#define TFT_RST   8   // ESP32: 4

Adafruit_ST7789 tft = Adafruit_ST7789(TFT_CS, TFT_DC, TFT_RST);

void setup() {
  tft.init(240, 240, SPI_MODE2);   // 240x240 uden CS -> SPI mode 2
  tft.setRotation(2);              // fjern/ret hvis billedet vender forkert
  tft.fillScreen(ST77XX_BLACK);
  tft.setTextColor(ST77XX_GREEN);
  tft.setTextSize(3);
  tft.setCursor(20, 100);
  tft.print("KompoNemt");
  tft.fillCircle(120, 180, 25, ST77XX_MAGENTA);
}

void loop() {
}

💡 KompoNemt-tip fra værkstedet

  • Den hyppigste fejl er 5V: En UNO sender 5V-signaler ud på SCK/MOSI/DC/RES. Brug en level shifter (fx vores bi-directional logic level converter) – eller endnu bedre: brug en ESP32, der kører 3.3V i forvejen.
  • Sort skærm men lyser? Så virker baggrundslyset, men controlleren får ikke de rigtige data. Prøv SPI_MODE3 i stedet for SPI_MODE2.
  • Til ESP32 og fart: Biblioteket TFT_eSPI er markant hurtigere. Sæt ST7789_DRIVER, TFT_WIDTH 240, TFT_HEIGHT 240 og TFT_CS -1 i dens User_Setup.h.
  • Spar strøm: Baggrundslyset er den store strømsluger. Styr BLK med PWM (analogWrite) og dæmp det, når ingen kigger.

🔧 Fejlfinding

  • Hvid eller sort skærm: Tjek VCC = 3.3V, at SCL/SDA sidder på SCK/MOSI, og prøv SPI_MODE3.
  • Billedet er spejlvendt eller forskudt: Prøv en anden værdi i setRotation() (0–3).
  • Farverne er inverterede: Kald tft.invertDisplay(true) eller false.
  • Virker et øjeblik og så ikke mere: Har den fået 5V på data uden level shifter, kan controlleren være skadet.
  • Board vises ikke i Arduino IDE? Se vores CH340-driver guide.

Sidder du fast? Skriv til os – vi hjælper gerne.