Forum: Mikrocontroller und Digitale Elektronik Ansteuerung "SAMMELBESTELLUNG: 2"2 TFT Display"


von Phil S. (zippi)


Angehängte Dateien:

Lesenswert?

Hallo,

In diesem Thread soll es um die Ansteuerung des KWH022ST03-F02 Displays 
gehen.

Das Display bekommt man hier:
Beitrag "SAMMELBESTELLUNG: 2"2 TFT Display mit 16bit digital interface"

Da die meisten schon ihre Displays erhalten haben, wollte ich auch mal 
fragen ob jemand mit der Ansteuerung angefangen hat.

Ich hab schon eine Platine Geätzt hier mal mein Ergebniss.

Dazu lad ich hier auch die Eagle Lib für den connector hoch.


Gruß
Zippi

von Michelle K. (Firma: electronica@tdnet) (michellekonzack) Benutzerseite


Lesenswert?

Du hast Dich aber ganz schön beeilt...

Grüße
Michelle

von Phil S. (zippi)


Lesenswert?

;).

Fang jetzt grad an mit dem Programmieren. Werde es erstmal im 8bit modus 
betreiben.
Leider war es sehr schwer den Connector zu löten. Habe auch einen 
zerstört. Ich hoffe jetzt, dass alle kontakt haben.

Irgendwie finde ich es auch merkwürdig, wie schwer das Display in den 
Connector passt.

Gruß

von Michelle K. (Firma: electronica@tdnet) (michellekonzack) Benutzerseite


Lesenswert?

Phil S. schrieb:
> Leider war es sehr schwer den Connector zu löten. Habe auch einen
> zerstört. Ich hoffe jetzt, dass alle kontakt haben.

Also jetzt habe ich mir das ers gerade mal angesehen... und ja, du hast 
Recht, Handlöten ist ein Killerjob!

> Irgendwie finde ich es auch merkwürdig, wie schwer das Display in den
> Connector passt.

Komisch, denn ich habe den connector vor mir auf dem Tisch liegen und 
aufgeklappt.

Nun lege ich das FPC im 45° Wingel auf die Kontakte und schiebe sie gut 
1,5mm hinein, auf dem FP-Kabel sind zwei Kontaktreihen sichtbar, wobei 
die erste vollständig im Connector verschwinde.

Danach klapp ich das ganze wieder zu.

Ich hoffe, Du bist jetzt nicht frustriert...  ;-)

Grüße
Michelle

 *PS:*  Sollte jemand die FPC Connectoren vernichten, ich habe noch ein 
paar reserve.

von Michelle K. (Firma: electronica@tdnet) (michellekonzack) Benutzerseite


Lesenswert?

Sag mal zippi, die Connectoren sind dann Top-Connect richtig?

Ich werde alt, denn meine Hände zittern mehr als Epenlaub und ich kann 
nicht mehr messen... (Hmmm, wer mißt, mißt Mist.)

Grüße
Michelle

von Phil S. (zippi)


Lesenswert?

So hab grad mit nem andern Display ausprobiert reinzustecken, damit geht 
es wunderbar. Naja lag wohl an dem einen Display egal, mit etwas kraft 
geht das auch rein.

Mit Heißluft lassen sich die FPC Connectoren besser löten, da muss man 
dann aber aufpassen, das die nicht flüssig werden :D.

>Sag mal zippi, die Connectoren sind dann Top-Connect richtig?
So wie auf dem Bild zu sehen ja.

So wie ich das sehe, kann man das Flachband-kabel egal wie rum 
reinstecken. Dann muss man aber die Eagle-lib verändern.

Gruß

von Michelle K. (Firma: electronica@tdnet) (michellekonzack) Benutzerseite


Lesenswert?

Ich dachte erst, ich müßte Top-Conenct und Bottom-Connect seperat 
bestellen...

Was bei 39poligen FPC ein Problem darstellt, da keine Standard...

Wie dem auch sei, sollte ich die 2"2 in meinen Produkten regulär 
einsetzen, wird es die FPC-Connectoren bei mir standardmäßig geben und 
dauerhaft nachbestellbar sein...

Grüße
Michelle

von Bernhard _. (Firma: dl1bg) (bernhard_)


Angehängte Dateien:

Lesenswert?

So, jetzt ist auch mein erstes Schaltbild für das Display fertig, die 
Datenleitungen werden hierbei über SPI und I2C an einen STM32 
angebunden.

Der Grund für die externe Serialisierung: Für eine 16-bit Ansteuerung 
habe ich nicht genügend viele Pins übrig und ein SPI-Zugriff mit z.B. 20 
MHz (800 ns) ist vermutlich schneller als die 8-bit-Ansteuerung mit 
Schiebeoperationen.

Eventuelle Übertragungsfehler erkenne ich beim Vergleich von MOSI- und 
MISO-Register.

Eine Frage noch an die SPI-Experten: Gibt es SPI-Expander, die einlesen 
UND ausgeben können?

Zur Firmware: Im folgenden Beispiel wird zwar ein anderer 
Display-Controller verwendet, die Ansteuerung sieht auf den ersten Blick 
passend aus.
Was haltet ihr davon?
http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/index_cortex.html#stm32_dpf

[link korrigiert]

von Michelle K. (Firma: electronica@tdnet) (michellekonzack) Benutzerseite


Lesenswert?

Und wo ist der TouchScreen controller?

Der sollte definitiv mit I²C und parallel zum PCA9531 funktionieren

Grüße ud Gute Nacht. (für euch ja Tag)
Michelle

von Bernhard _. (Firma: dl1bg) (bernhard_)


Lesenswert?

Die Auswertung des Touch soll mit dem ADC des STM32 erfolgen, den 
Algorithmus möchte ich von
Beitrag "Re: Auswertung "Analoges Touch-Panel""
übernehmen.

Left und Top können per I²C auf GND gezogen oder mit pull-up eingelesen 
werden, Right und Bottom können vom STM32 getrieben oder analog 
eingelesen werden.

von Phil S. (zippi)


Lesenswert?

Bernhard __ schrieb:
> Die Auswertung des Touch soll mit dem ADC des STM32 erfolgen, den
> Algorithmus möchte ich von
> Beitrag "Re: Auswertung "Analoges Touch-Panel""
> übernehmen.

Ja das funktioniert super, hab ich damals bei meiner ersten 
Touchansteuerung auch gemacht.

Fürs Display gibt es auch die möglichkeit, einen CPLD davor zu schalten 
und in dem CPLD eine art schiebe reg. reinzuprogrammieren. Dann hat man 
auch ein SPI interface.
Wenn man es genug erweitert, dann sollte man auch schreiben und lesen 
können.

Ich bin bei meinem Display soweit, dass es schon flimmert. Mal sehen ob 
ich das jetzt hinbekomme ein Bild zu zeichnen.

Gruß

von Bernhard _. (Firma: dl1bg) (bernhard_)


Lesenswert?

Hallo Zippi / Phil,

mein erstes Board ist jetzt auch fertig; allerdings hat der 
Folienverbinder unter den Lötversuchen gelitten und zumindest der Pin Y- 
hat keinen Kontakt mehr zur Folie; mal sehen, wie viele noch :-(

Bis jetzt funktionieren Backlight (dimmbar), Touch (nur X-Richtung) und 
die Schieberegister (@ 18 MHz); bis nächste Woche ist jetzt aber 
Zwangspause angesagt...

Ciao,
Bernhard

von Michelle K. (Firma: electronica@tdnet) (michellekonzack) Benutzerseite


Lesenswert?

Brauchste noch welche reserve?

Grüße
Michelle

von Phil S. (zippi)


Angehängte Dateien:

Lesenswert?

Bernhard __ schrieb:
> Hallo Zippi / Phil,

Zippi reicht schon ;).

> mein erstes Board ist jetzt auch fertig; allerdings hat der
> Folienverbinder unter den Lötversuchen gelitten und zumindest der Pin Y-
> hat keinen Kontakt mehr zur Folie; mal sehen, wie viele noch :-(

Ja ist wirklich nicht so leicht zu löten. Beim Nachmessen, hatte Y- auch 
keinen kontakt. Hab es dann Nachgelötet.

> Bis jetzt funktionieren Backlight (dimmbar), Touch (nur X-Richtung) und
> die Schieberegister (@ 18 MHz); bis nächste Woche ist jetzt aber
> Zwangspause angesagt...

OK ist schonmal gut.

Mein Display geht soweit. Hab auch alles wichtige eingestellt.
Die Wiederholungsrate kann man von 30-80Hz einstellen, ist ganz cool.

Hier mal 2 Bilder. Ín echt sieht das Diesplay noch besser aus.

Im 2. Bild sieht man den vergleich von S65 Display zu diesem. Alleine 
Das Grün sieht um Welten besser aus. Liegen aber auch ne menge Jahre 
zwischen den Displays.

Window Modus hab ich noch nicht getestet.

Gruß
Zippi

von Michelle K. (Firma: electronica@tdnet) (michellekonzack) Benutzerseite


Lesenswert?

Excellent.

Das freut mich, das Du es so schnell hinbekommen hast.
Sieht echt gut aus

Gute Nacht
Michelle

von Bernhard _. (Firma: dl1bg) (bernhard_)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

auch bei mir ist jetzt eine erste Version der firmware fertig, 
allerdings bekomme ich das Display nicht zum Laufen.

Den Initialisierungscode habe ich aus dem Datenblatt eines anderen 
Displays mit dem HX8340b genommen, die anderen Routinen aus
http://www.siwawi.arubi.uni-kl.de/avr_projects/arm_projects/index_cortex.html#stm32_dpf

Die Pins bewegen sich alle wie gewollt und meine SPI-Expanderei 
funktioniert augenscheinlich auch. Pro bit benötige ich rund 1,2 µs, für 
die ersten Versuche also schnell genug.

Auffällig finde ich, dass NICHTS passiert, also keinerlei Reaktion am 
Display; aus dem Display zurücklesen kann ich leider nicht, da der RD 
auf VDD liegt und mir ein Pin dafür fehlt.

Die Lötverbindungen sind einwandfrei (nachgemessen), eventuell ist einer 
der Kontakte im Stecker "eingesunken".

Bevor ich jetzt eine größere Lötaktion starte, wollte ich euch um ein 
Review meines Codes bitten; vielleicht findet ihr einen Bug?

Danke im Voraus,
Bernhard

von Bernhard _. (Firma: dl1bg) (bernhard_)


Lesenswert?

Aktualisierung: Mittlerweile bekomme ich wilde Pixelmischungen auf das 
Display, obwohl ich nichts schreibe.

Alle Signale sind jetzt auf dem Folienleiter nachgemessen und in 
Ordnung.

Ist meine Initialisierung falsch?

von Zippi (Gast)


Lesenswert?

Hi,

Bin zurzeit im Urlaub, deswegen kann ich meinen code wenn erst montag 
hochladen.

Zum Display, pixelmischung ist gut, dann ist das display normalerweise 
init. Jetzt schreib mal in den gram. Ich glaube das geht mit register 
0x22. Wenn du da jetzt 176x220 mal 0xf800 reinschreibst, solle dein 
ganges Display rot sein. Es ist wichtig, dass du erst das register 
setzt, und dann die 176x220x2 byte überträgst ohne das cs signal 
zwischendurch auf high zu setzen.

Gruß
Zippi

von Bernhard _. (Firma: dl1bg) (bernhard_)


Lesenswert?

Hallo Zippi,

leider ging es nicht so einfach. Das Beschreiben der GRAM hatte ich 
vorher schon im Code (mit zu vielen Pixeln), aber das Display reagiert 
nicht darauf.

Ciao,
Bernhard

von Zippi (Gast)


Angehängte Dateien:

Lesenswert?

OK,

das ist schon komisch.
Hier ist mal mein Beispiel code, er arbeitet mit 8bit interface.

Der Code wurde für den AVR32 programmiert.

Gruß
Zippi

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.