2.2" GLCD 320x240 mit ILI9341

OP #3273408
Lesenswert?
• ▲
▼
Servus allerseits

Auf *bay gibt es für ein paar Groschen farbige GLCDs in 2,2" Grösse und 
mit einer Auflösung von 320x240. Diese LCDs werden via SPI (max. 10MHz) 
angesprochen, weshalb die Verdrahtung recht einfach ausfaellt.
Als kleines Extra gibt es noch einen SD-Karten Sockel.
Einfach mal nach ILI9341 suchen. Die Masse von ca. 4cm x 7cm erlauben es 
somit auch dort noch ein aussagekraefliges LCD einzusetzen, wo es 
eigentlich vom Platz gar nich möglich waere.

Der beiliegende Code ist zwar für einen STM32F407 bestimmt, ist aber 
(meiner Meinung nach) soweit klar geschrieben, dass eine Portierung auf 
einen anderen Controller nicht schwer sein sollte.

Zu beachten ist nur, dass ich manche Ascii Zeichen dazu benutzt habe, um 
türkische Zeichen zu generieren: siehe Methode Translate()
Einfach mit GLCDFontCreator2 einen neuen Font-Header generieren.

Benutzte Quellen
GLCDFontCreator2: 
http://www.mikrocontroller.net/attachment/21921/glcd_ks0108_v11.zip
Ebay-Verkaeufer Egochina: TM022HDH26_Module.rar
Angehängte Dateien:
OP #3347047
Lesenswert?
• ▲
▼
Na klar habe ich weitergemacht.
Erstens, weil es ein Müssen war, und zweitens, weil es echt Spass macht 
mit diesem kleinen Ding zu arbeiten.

In der Zwischenzeit hat sich aber der Kod etwas veraendert. Auch waren 
ein paar kleine Fehler drin. Ich glaube unter anderem war was mit der 
Screen-Orientation. Und die Darstellung des türkischen Alphabets musste 
abgeandert werden. usw. usf.

Ich lade mal die z.Zt. aktuellen Dateien hoch. Schau sie Dir an. Und 
wenn Du Fragen hast ... kein Problem.
Angehängte Dateien:
#3367509
Lesenswert?
• ▲
▼
#3368853
Lesenswert?
• ▲
▼
wow, das sieht sehr gut aus, Mehmet.

Genau bei dem hatte ich auch bestellt. Allerdings für $6.50. der hat die 
Preise wieder angezogen.

Bin leider noch nicht dazu gekommen, mein LCD anzuschließen. Von daher 
kann ich Dir noch kein Feedback zu deinem Code geben, kommt aber noch.
#3539512
Lesenswert?
• ▲
▼
Sooo
ich will es allmählich auch mal angehen. Zu den Unterlagen hab ich noch 
ein paar Anmerkungen/Fragen:

1. Das Datenblatt zum Controller ist bei Ilitek anscheinend nicht 
abrufbar. Die neuste Version heisst im Dateinamen und auf der Titelseite 
"V1.11", in der Revision History auf der letzten Seite und unter 
Dokumenteigenschaften aber "1.13". Gibt es noch ein neueres?

2.Der fest eingestellte "Interface Modus" IM3..0 scheint "1110" zu sein, 
dagegen spricht nur der Platinenaufdruck "SDA/SDI", denn SDA ist dann 
falsch.
(Die Übersetzung von "SDO" mit serial clock output im elecfreaks-Wiki 
ist schlicht Unsinn.)

3. Die Hintergrund-LED hat vermutlich keinen Vorwiderstand, den muss man 
selbst davorschalten. Achtung, bei Elecfreaks steht "3,4V". Die 
Arduino-Lib zum ILI9341 auf Github schaltet den Anschluß "LED" mit einem 
Portpin, da kann die Beleuchtung nicht sehr hell sein.
https://github.com/gmtii/ili9341-arduino
(Kann man den Reseteingang auch einfach  mit dem Arduino-Reset 
verbinden? Auf Github wird dafür ein weiterer Port benutzt.)

4. Die Pins D/CX, WRX und SCL sind in der Pinbeschreibungstabelle im 
Datenblatt durcheinandergeraten, und im Blockschaltbild fehlt SCL 
einfach.

5. Die maximale SCL-Frequenz ist unterschiedlich für Schreiben und 
Lesen, da beides immer gleichzeitig stattfindet, darf man über 6,6 MHz 
den gelesenen Daten nicht mehr trauen? 100ns = 10 MHz Schreibtakt aber 
nur 150ns = 6,6 MHz Lesetakt.

6. Die minimalen Wartezeiten nach Reset sind abhängig von sleep-in oder 
sleep-out Zustand (ausgeschlafen? ist das chinesisches Englisch?) aber 
nach Hardware-Reset scheint die kürzere zu gelten.
#3539988
Lesenswert?
• ▲
▼
Ich meckere mal weiter

Die Pegelwandlung vom 5V-Arduino zum nicht-5V-toleranten Display soll 
man laut elecfreaks einfach mit einem Serienwiderstand von 20...30 kOhm 
erreichen.
Bastleralarm! Das muss einem doch auffallen, dass man 10 MHz Rechteck 
nicht durch einen 30k-Widerstand schicken kann. Mit 30k und einer 
angenommenen Eingangskapazität von 10 pF (das Datenblatt schweigt dazu) 
beträgt die -3dB-Grenzfrequenz 1/(2*Pi*R*C) gerade noch 500 kHz. Wenn es 
nur 5pF sind liegen wir immer noch eine Dekade unter der Taktfrequenz.

Anderswo schlägt jemand einen mit 3,3V betriebenen Uralt-Buffer CD4050 
vor. Der stammt aus der Zeit, als CMOS-Flipflops bei 5V gerade noch 2,5 
MHz teilen konnten. Wenn schon aktiv, dann einen zeitgemäßeren 3,3V-Chip 
einer 5V-toleranten Familie, oder vielleicht auch die 
MOSFET-Serienschaltung nach Philips-Applikation - kann die eigentlich 10 
MHz?

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.