Hallo zusammen, ich habe hier ein ILI9341-SPI-Modul unbekannter Herkunft. Kennt jemand von diesem Modul den hardverdrahteten SPI-Modus, oder hat sogar einen Schaltplan gefunden? Viele Grüße W.T.
Läuft wunderbar mit der Adafruit ILI9341 library. Habe zwei davon im Einsatz inkl. Touch. Schaltplan brauchst du nicht, steht alles notwendige auf dem Silkscreen
:
Bearbeitet durch User
Hallo, was ist jetzt Deine Frage? Die Anschlüsse sind beschriftet. Der Controller ist bekannt. 5V Spannungsregler ist drauf, die Datenleitungen sind nicht 5V-tolerant (nur 3,3V Pegel). Displaybeleuchtung wird per Transistor geschaltet. Touchcontroller dürfte der übliche XPT2046 drauf sein, auch bekannt. Schaltplan dazu hab eich nie gesucht, ist ja nichts drauf, wo der helfen könnte. Treiberbibliotheken für den ILI9341 und den XPT2046 dürfte es wohl für jede denkbare µC-Familie geben. Ich nutze die nur am ESP8266/ESP32, die 2,2" Version ist prnzipiell identisch. ok, zu viel geschrieben und zu langsam... Gruß aus Berlin Michael
:
Bearbeitet durch User
Michael U. schrieb: > ok, zu viel geschrieben und zu langsam... Kann passieren wenn der TO sich nicht äussert was er denn genau will. Einen Schaltplan halte ich auch für sinnlos. Gell, Tarzan?
Michael U. schrieb: > ist ja nichts drauf, wo der helfen > könnte Sicher. Einmal: Sind da an verdeckter Stelle noch Level-Shifter und evtl. ein Schalt-Transistor für die LED. Und: Wie sind IM[2:0] verschaltet? Eigentlich kommen nur 101 und 111 infrage. Das kann man dann auch ausprobieren. Aber manchmal geht erfragen schneller als ausprobieren, und die gesparte Zeit kann man an anderer Stelle sinnvoll investieren. Zweck ist natürlich, die Ansteuerung zu schreiben. Praktischerweise habe ich das für die Parallel-Version schon erledigt. Es muß also nur noch die nackte Datenübertragung angepaßt werden.
Walter T. schrieb: > Praktischerweise habe > ich das für die Parallel-Version schon erledigt. Ja Tarzan, schon klar, dieses Modul so wie du es zeigst steuerst du schnell mal praktischerweise parallel an. Du bist der Chuck Norris der Elektronik. Wo sind denn die vielen parallelen Anschlüsse?
Hallo, Walter T. schrieb: > Sicher. Einmal: Sind da an verdeckter Stelle noch Level-Shifter und > evtl. ein Schalt-Transistor für die LED. Und: Wie sind IM[2:0] > verschaltet? Eigentlich kommen nur 101 und 111 infrage. Das kann man > dann auch ausprobieren. Aber manchmal geht erfragen schneller als > ausprobieren, und die gesparte Zeit kann man an anderer Stelle sinnvoll > investieren. Es gibt keine Leveshifter drauf, auch nicht irgendwo versteckt, habe ich bisher bei keinem dieser SPI-Displays gefunden. Der Transistor für die LED ist Q1, Basiswiderstand ist R6, Vorwiderstand der LED R5. Das siht man so schon bzw. kann es mit dem Ohmmeter ausprüfen. Da DC auf der Anschlußleiste ist und keine Umschaltmöglichekit vorgesehen ist, bleibt ja nur 4-Wire-Mode. Walter T. schrieb: > Zweck ist natürlich, die Ansteuerung zu schreiben. Praktischerweise habe > ich das für die Parallel-Version schon erledigt. Es muß also nur noch > die nackte Datenübertragung angepaßt werden. Sollte dann ja nichtmal richtig Aufwand sein. Diese Displays kommen von diversen China-Herstellern, bisher ware alle im Prinzip identisch. Kritisch: ich habe Versionen, da ist das Backlieght nur mit einem 10 Ohm am LED-Pin ohne Schalttransistor. Das geht bei 3,3V gerade noch so, an einem µC-Pin nicht. Ich hänge soclhe Dispaly dann mit zusätlichen 51 Ohm an 5V und lasse die eben leuchten. Habe ich bisher aber nur bei 1,8" Versionen mit ST7735 gehabt. Gruß aus Berlin Michael
Super! Vielen Dank! Michael U. schrieb: > Sollte dann ja nichtmal richtig Aufwand sein. Nein, ich gehe davon aus, daß ich blos die 16 Bit-Farben auf 18 Bit strecken muss und dann nur die Sende-Funktion angepaßt werden muss.
Walter T. schrieb: > daß ich blos die 16 Bit-Farben auf 18 Bit > strecken muss Das kann der ILI9341 selbst.
Harry L. schrieb: > Das kann der ILI9341 selbst. Wenn ich das richtig interpretiere, nur bei paralleler Ansteuerung. Zumindest habe ich auf Anhieb nicht gefunden, daß man die RGB-Pixel per SPI auch in zwei Bytes einpassen darf.
Walter T. schrieb: > Harry L. schrieb: >> Das kann der ILI9341 selbst. > > Wenn ich das richtig interpretiere, nur bei paralleler Ansteuerung. > Zumindest habe ich auf Anhieb nicht gefunden, daß man die RGB-Pixel per > SPI auch in zwei Bytes einpassen darf. Nein das Display kann auch in SPI 16 und 18 Bit. Bei 3-PIN SPI muss man jedoch weiterhin 18 Pixel rein-clocken weil das D/C mit im Datenstrom ist, bei 4-Pin SPI werden 16 Pixel rein geschoben. Siehe Datenblatt 63ff
1 | In 4-line serial interface, different display data format is available for two color depths supported by the LCM |
2 | listed below. |
3 | -65k colors, RGB 5, 6, 5 -bits input. |
4 | -262k colors, RGB 6, 6, 6 -bits input. |
Die Adafruit lib betreibt es auch in dem Mode.
Timmo H. schrieb: > Nein das Display kann auch in SPI 16 und 18 Bit. Das ist ja famos! Ich hatte schon befürchtet, dass ich entweder irgendwie Farben und Adressen bei der Display-Ansteuerung auseinanderpfriemeln müßte, weil im Rest meiner Firmware alle Farben 16 Bit sind, oder eben die Farben von 16 auf 24 Bit umzustellen. Aber so spart das eine Menge Arbeit. Ich bin gestern abend gar nicht mehr dazu gekommen, das Datenblatt wieder komplett durchzuarbeiten. Wenn nichts dazwischenkommt, wird das mein Wochenendprojekt.
Danke für die hilfreichen Tipps! Mit Soft-SPI läuft das Modul schon. Die Initialisierung unterscheidet sich im SPI-Modus nicht vom Parallel-Modus, und auch sonst ist der Eingriff minimal. Im Prinzip reichen - wenn man eine funktionierende Parallel-Implmenentierung hat - die Diagramme auf S. 35 bis 39 für das 4-line serial interface Protokoll.
:
Bearbeitet durch User
Nachtrag: Bei diesem Modul schlägt das Auslesen der ID4 fehl. Das zu wissen kann einem auch ein paar Minuten Fehlersuche ersparen. Der einzige Weg, sicherzustellen, dass das LCD auch angeschlossen ist, scheint also zu sein, irgendein Pixel zu schreiben und auch wieder auszulesen.
:
Bearbeitet durch User
Walter T. schrieb: > Nachtrag: Bei diesem Modul schlägt das Auslesen der ID4 fehl. Das zu > wissen kann einem auch ein paar Minuten Fehlersuche ersparen. Wahrscheinlich ist der Pin EXCT auf GND gelegt. > Der einzige Weg, sicherzustellen, dass das LCD auch angeschlossen ist, > scheint also zu sein, irgendein Pixel zu schreiben und auch wieder > auszulesen. Was machst Du wenn das Display nicht angeschlossen ist? Eine Fehlermeldung ausgeben? Das erscheint mir irgendwie nicht sinnvoll. Übrigens: Das Rücklesen der Pixel erfolgt immer im 24 Bit/Pixel-Format...
Bernd schrieb: > Was machst Du wenn das Display nicht angeschlossen ist? Morsen. Ich finde es praktisch, bei der Inbetriebnahme zu wissen, ob Controller und Display zusammenspielen. Beispiel: Ich schalte das Gerät ein. Auf dem LCD ist nichts zu sehen. a) Ist das Gerät überhaupt wirklich eingeschaltet? b) Ist das Kabel zum Display in Ordnung? c) Oder ist das Display in Ordnung, zeigt auch etwas an, aber ich sehe das in der prallen Sonne nicht?
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.