Forum: Mikrocontroller und Digitale Elektronik beliebte Display Controller für STM32


von Markus H. (dasrotemopped)


Lesenswert?

Hallo zusammen,

egal was man so bastelt, ein Display macht oft Sinn hinzuzufügen.
Allerdings ist die Auswahl groß und der Einsatzzweck unterschiedlich.
Ich habe da einige Favoriten :
ili9341 - SPI 240x320 hiColour
st7565 - SPI 128x64 s/w
ssd1963 - parallel 800x480 hiColour
STM32-LTDC - parallel 800x480 hiColour / 1280x720 palette
serielles Char-LCD - uart s/w characterset
T6963C - parallel 240x64 b/w
Die seriellen Displays sind mit wenigen Pins an die CPU angeflanscht,
die parallelen bieten mehr Performance und Auflösung, aber auch mehr
Aufwand auf der CPU Seite.
Was sind eure Favoriten und warum ? Wie hoch schätzt ihr den 
Softwareaufwand ein, um ein neues Display ans Laufen zu  bringen ? 
Welcher Hersteller ist da vorbildlich, welcher eher nicht  ?

Gruß,

dasrotemopped.

von m.n. (Gast)


Lesenswert?

Markus H. schrieb:
> Was sind eure Favoriten und warum ?

Wenn Du so fragst: 
http://mino-elektronik.de/TFT-direct-drive/TFT-direct-drive.htm#tft-5
Einen separaten Controller wegzulassen hat mir in den letzten Jahren ein 
paar Riesen (vormals Braune) eingespart. Es macht das was es soll, keine 
unnötigen Schnick-Schnack-Farben und ist affenschnell, da Bildauflösung 
und µC gut zueinander passen (internes RAM, memory-mapped)!

von Martin S. (strubi)


Lesenswert?

Markus H. schrieb:
> Was sind eure Favoriten und warum ? Wie hoch schätzt ihr den
> Softwareaufwand ein, um ein neues Display ans Laufen zu  bringen ?
> Welcher Hersteller ist da vorbildlich, welcher eher nicht  ?

Die Fragen sind ein Dauerbrenner :)
Kein Hersteller ist wirklich vorbildlich, bisher fand ich Sitronix noch 
am konsistentesten. Problem ist, dass dir die Distributoren alle Jahre 
lang wieder was anderes oder 'äquivalentes' liefern.
Ilitek und Konsorten sind meist irgendwie kompatibel, aber wenn du im 
Detail mit Display-Orientierung und Scrolling/Speicheradressierung 
rummachst, merkst du die Unterschiede.
Die Fragen die du dir eh stellen solltest:
- Brauche ich einen Framebuffer auf dem Display ? (kleiner uC)
- Muss ich Text scrollen oder nur statisch Blöcke updaten?
- Blit-Copy-Funktion nötig (Windows verschieben)?
Und zuletzt: Kriege ich das korrekte Datenblatt?

Die ILI9341 und ähnliche 93** sind definitiv gut zum Anfangen, da würde 
ich aber gleich die Parallel-Variante nehmen. Schenkt sich nix zum SPI 
von der Komplexität her, solang du die Timings beachtest. Den typischen 
Aerger hast du eher mit den Registern und Initialisierungssequenzen...

Ich hab mir mal vor ner Weile den hier bestellt:

http://www.dx.com/p/open-smart-2-2-st7775-tft-lcd-touch-screen-display-w-adapter-module-465840#reviews

Da ist zwar ein Sitronix-Klon von Raydium drauf, aber das Datasheet 
stimmt.
Touch habe ich nicht verwendet.

Noch ne Anmerkung: Ab 320x240 würde ich auf schnellere Prozessoren (die 
Framebuffer per DMA streamen können) und LVDS-Interfaces gehen

: Bearbeitet durch User
von Display (Gast)


Lesenswert?

SSD1306 - I²C 128x64 OLED

Mit dieser Library -> https://github.com/4ilo/ssd1306-stm32HAL lässt 
sich das Display praktisch ohne nachzudenken in meine CubeMX/HAL 
Projekte einbinden.

von Harry L. (mysth)


Lesenswert?

Markus H. schrieb:
> Was sind eure Favoriten und warum ?

Das zur geplanten Anwendung passende.

Markus H. schrieb:
> Wie hoch schätzt ihr den
> Softwareaufwand ein, um ein neues Display ans Laufen zu  bringen ?

Nahezu irrelevant, da man sowas i.d.R. genau 1 mal baut.

von Tassilo H. (tassilo_h)


Lesenswert?

Mein Favorit momentan für Displays der Größenordnung 4.3"/480x272:
STM32F767 per LTDC: Hat genug internes RAM so daß man den 256kByte 
Framebuffer drin unterbringt (512k). Gibt genug Anbieter für die 
Displays (ca. 10..15US$ mit resistivem Touch), TP braucht ein paar 
passive Teile für ESD-Schutz, der Rest geht mit dem internen ADC. 
Nachteil: Will man auch noch Ethernet und SD-Karte verwenden, braucht 
man mindestens eine Variante im 144-pinnigen Gehäuse

Für große Displays ist IMHO der LTDC die einzige Lösung, blöd daß man 
dann immer externes RAM braucht, also unter 176-Pin-Gehäuse quasi nix 
geht. Bei den Features muß man auch aufpassen, bei einem 800x480x16bit 
Display ist man mit einem 16-Bit SDRAM am STM32F429 schon an der Grenze 
der Busbandbreite, eine zweite Displayebene geht nur eingeschränkt.

von Dr. Sommer (Gast)


Lesenswert?

Leicht OT: Wo bekommt man gut große controllerlose hochauflösende 
Displays, die auch für die Serie billig genug sind? Für Prototypen kann 
ich z.B. bei Farnell alles mögliche kaufen und das für die Serie dann 
woanders billig beschaffen. Wie macht man das bei Displays? Alles bei 
Ali-Express? Nur direkt bei Herstellern? Es ginge um TFT-Displays 
ähnlich wie die in Tablets, die direkt vom Prozessor getrieben werden.

von idealo (Gast)


Lesenswert?

Dr. Sommer schrieb:
> Leicht OT: Wo bekommt man gut große controllerlose hochauflösende
> Displays, die auch für die Serie billig genug sind?

Man wendet sind an FAEs von Distributoren wie z.B. Rutronik und 
Consorten.

von Johannes S. (Gast)


Lesenswert?

Dr. Sommer schrieb:
> Leicht OT: Wo bekommt man gut große controllerlose hochauflösende
> Displays, die auch für die Serie billig genug sind?

da fallen mir spezielle Distris wie Glyn oder Data-Modul ein.

Tassilo H. schrieb:
> Für große Displays ist IMHO der LTDC die einzige Lösung, blöd daß man
> dann immer externes RAM braucht,

mit der Kombi LTDC und Displays mit Controller bekommt man aber auch 
schon schnelle Ausgaben hin, Grafikram das die CPU auch beschreiben kann 
halte ich nur für richtige Videos oder wenn man grosse Bereiche scrollen 
möchte für nötig.

von Hfgj (Gast)


Lesenswert?

Epson S1D13781

Aber nur weil der stm mit dem internen RAM schon knapp bemessen ist.

Der framebuffer würde den Rahmen sprengen und die LCD Arbeit ( 
transparentes OSD ) den eigentlichen Job massiv ausbremsen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.