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
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.
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.
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.
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?
Christoph Kessler (db1uq) schrieb:> Zu den Unterlagen hab ich noch ein paar Anmerkungen/Fragen…
So, bei mir läuft nun alles mit dem A137. Haben sich bei Dir inzwischen
alle Fragen geklärt?