Hallo zusammen. Ich habe mich nun durch die Grundlagen durchgearbeitet. Heisst: - Blink-LED - Taster-Abfrage - serielle Datenübertragung - Analogwertverarbeitung - Temperaturanzeige - Multiplexing 7-Seg-Anzeige - LCD-Ansteuerung im Textmodus Jetzt habe ich vor ein Grafik-Display anzusteuern. Doch bevor ich mir eins bestelle, wollte ich erst mal in Erfahrung bringen, wie sowas geht. Ich hab nun gehofft ich finde in den entsprechenden Datenblätter der Pollin-Displays etwas. Aber Fehlanzeige. Auch Google spuckt da nicht soviel aus. Hat jemand von euch gute Links dazu? Würde mich freuen In diesem Sinne ein frohes Fest
E7C schrieb: > Jetzt habe ich vor ein Grafik-Display anzusteuern. Doch bevor ich mir > eins bestelle, wollte ich erst mal in Erfahrung bringen, wie sowas geht. Da gibts große Unterschiede. Im einfachsten Fall kannst du nur am LCD einen Punkt setzen. Das wars. Alles andere musst du selber in Software erledigen. Linien zeichnen, Bögen zeichnen, Flächen füllen, Text malen, etc. Alles, in dem du die zu setzenden Punkte bestimmst und dem LCD den Auftrag gibst: Dieser und jene Punkte sind auf schwarz zu setzen Am anderen Ende stehen Displays, die einen Prozessor mithaben, der auch mit graphischen Primitiva umgehen kann. So wie bei deinem Text-LCD. Dem hast du auch nicht gesagt "Pixel setzen" sondern 'A' hinmalen und der Prozessor am LCD hat gewusst wie das geht. Beides hat Vor und Nachteile. Auf der einen Seite hast du mit Einzelpixel setzen alles in der Hand. Jede Linie, jeder Buchstabe sieht exakt so aus, wie du dir das vorstellst. Dafür musst du in deinem Programm allerdings Routinen dafür haben und die Übertragung zum Display dauert länger, weil es mehr Datenvolumen gibt Auf der anderen Seite hast du mit einem intelligenten Display schnelle Erfolgserlebnisse, die Übertragung geht schnell, musst dafür aber mit dem zufrieden sein, was dir der Hersteller an Grundmitteln anbietet. Wenn das nicht reicht, landest du erst wieder beim Pixel setzen und hast Geld für ein Display ausgegeben, dessen Fähigkeiten du nicht nutzt.
Gibt es denn für beide Varianten kleine Tutorials, dass ich erstmal weiss, wie das ganze realisiert wird? Dann kann ich mich immernoch für ein Display entscheiden. Am besten ich kaufe direkt beide, und nimm das mit Prozessor für die schnellen Erfolgsergebnisse, um mich dann dem Kern weiter zu nähern
> Ich habe mich nun durch die Grundlagen durchgearbeitet. Heisst: Wohlgetan. :-) > Ich hab nun gehofft ich finde in den entsprechenden Datenblätter > der Pollin-Displays etwas. Aber Fehlanzeige. Wirklich? Ich finde fuer einen Restpostenverhoekerladen liefert Pollin meist erstaunlich viel Unterlagen zu ihren LCDs. Also Datenblatt vom Display, Datenblatt zum TreiberIC und manchmal sogar noch ein Beispielprogramm. > Doch bevor ich mir eins bestelle, wollte ich erst mal in Erfahrung > bringen, wie sowas geht. Das Prinzip ist einfach. Du musst ein Display kaufen und es an deinen Controller anschliessen. Es gibt Displays die haben einen parallelen Bus (8080 oder 68k) und welche mit einem seriellen Datenbus. (SPI oder gar I2C) Manche Displays haben auch beide Busse und man kann sich aussuchen welchen man verwendet. Manchmal hat der Hersteller das aber schon festgelegt und du kannst das nicht mehr umstellen. Datenblatt genau lesen! Fuer kleine Microcontroller ist der serielle Bus meistens besser weil man da weniger Pins braucht. Bei manchen LCDs kann man dann aber nur Daten zum LCD schicken und nicht zuruecklesen. Datenblatt genau lesen! Wenn man nicht lesen kann dann muss man im Controller ein Shadowram des LCDs verwalten. Sowas ist eigentlich immer klug weil es schneller ist als aus dem LCD zu lesen. Allerdings sollte der Controller dann genug internes Ram haben. Datenblatt genau lesen und Taschenrechner einschalten! Danach kann man nun Kommandos ans LCD schicken. Es gibt Displays da kannst du nur Pixel ein oder ausschalten. Wenn du aber Linien malen willst oder Text ausgeben ist es deine Aufgabe dich darum zu kuemmern. Dann sollte dein Controller genug Flashram haben um einen Zeichensatz unterzubringen. Es gibt auch Controller die haben soetwas eingebaut. Allerdings gibt es dann manchmal keine deutschen Sonderzeichen. Das prangern wir an. :-) Mach dir auch klar das der Hersteller eines LCDs von irgendwoher ein IC kauft, dessen Datenblatt du lesen musst, und woanders ein Panel. Beides montiert der zusammen und nennt das LCD und schreibt dazu ebenfalls ein Datenblatt. Es ist wichtig zu verstehen das man es auch so programmieren kann das ein LCD nichts anzeigt oder gar kaputt geht. Das kommt davon wenn man das Datenblatt der LCD Hersteller nicht liesst und man glaubt im Internet alles abschreiben zu koennen. Manche LCDs benoetigen noch eine Kontrastspannung. Die kann auch negativ sein. Und sie muss nicht auf GND bezogen sein, manche Hersteller geben diese Spannung relativ zur positiven Versorungsspannung an. Also genau alles im Datenblatt lesen. viel Glueck Olaf
> Gibt es denn für beide Varianten kleine Tutorials, dass ich erstmal > weiss, wie das ganze realisiert wird? Die heissen Datenblaetter und werden vom Hersteller mitgeliefert. Es gibt keinen verbreiteten Standard wie bei den TextLCDs mit Hitachicontroller. Jeder macht das seinen eigenen Kram. Selbst wenn du zwei Displays mit demselben ControllerIC drauf von verschiedenen Herstellern hast so kann es dir passieren das die ihre Pixel an verschiedenen Stellen im Speicher abbilden. Auch die Initialisierung kann unterschiedlich sein. Olaf
Hier könnte man eigentlich noch einen dritten Typ unterscheiden, weil von Pollin die Rede ist: Die controllerlosen Displays, deren Inhalt kontinuierlich aufgefrischt werden muß. Also mal am Beispiel: "Vollintelligente" Displays haben in den allermeisten Fällen einen Toshiba T6963C Controller. Dieser beinhaltet sogar einen Zeichengenerator, d.h. man kann auf das Display auch Text schreiben, ohne ihn sich aus Pixeln zusammenbauen muß. Umfangreicher Befehlssatz. Kann viel, kostet viel (vergleichsweise). Heute selten zu bekommen, hin und wieder bei Pollin. Übliche Auflösungen sind 128x64 oder 128x128. Leicht zu benutzen. "Halbintelligente" Displays haben einen Grafikspeicher, der meist byteweise beschrieben wird. Dieser Speicher wird 1:1 auf das Display abgebildet. Es ist empfehlenswert, Typen zu benutzen, in denen dieser Speicher nicht segmentiert ist, dies macht die Ansteuerung einfacher. Ein typischer Vertreter ist dieses Exemplar hier: http://www.pollin.de/shop/dt/NDU2OTc4OTk-/Bauelemente/Aktive_Bauelemente/Displays/LCD_Modul_SHARP_M078CKA_A3QKLA0057.html Ebenso zählen die EA DOGM Grafikdisplays zu dieser Klasse: http://www.reichelt.de/?;ACTION=28;LA=3;ARTICLE=101652;GROUPID=3007;GROUP=A5213;SID=28G34rYawQARwAAFIi8CQ5839615382a8c379debba458d0152474 Man findet häufig auch Examplare mit Seiko Epson Controller. Etwas anspruchsvoller zu benutzen, dafür aber billig und leicht erhältlich. "Unintelligente", controllerlose Displays wie dieses: http://www.pollin.de/shop/dt/NDU3OTc4OTk-/Bauelemente/Aktive_Bauelemente/Displays/LCD_Modul_E8504CZZ.html müssen kontiniuerlich mit Daten versorgt werden, um ein Bild darzustellen. Es gibt hier im Forum ein Projekt auf AVR-Basis dazu (der ist aber gut beschäftigt und kann dann nichts anderes mehr tun), oder man kann so etwas wie den S1D13705 benutzen, der hier unter "Markt" angeboten wird. Dann hat man einen Controller, der sich um das Display kümmert. Ziemlich komplex, bietet aber größere Auflösungen als die beiden oben beschriebenen Typen.
Kauf am besten ein LCD mit Controller. Alles andere ist nur was für Benedikt :-)
Zu den Controllern, Die KS0107 / KS0108 sind wahrscheinlich am verbreitetsten, gibt viel viel Code dazu. Sind meist die günstigsten und hat nahezu jeder Elektronikversender mit Displays im Programm. Sehr oft gibt es die in 128x64 und 128x128 Die T6963 haben, wie schon gesagt, ein wenig eigenen Grips, aber im Grunde immer noch anzusteuern wie die KS0108 / 7. Die T6963 sind meistens grösser als die KS0108. Habe eines von Pollin mit 256x64 für ca 15 Euro, aber schon seit gut 2 Jahren. Nicht mehr im Programm... Dann gibts noch die, welche sie per UART, SPI, I2C, ... ganz intelligent ansprechen lassen. Meistens von EA (Electronics Assembly), oft schon TFT, 65k Farben, touch usw. Allerdings kosten die wirklich viel. Die haben dafür aber einen richtig guten Befehlssatz (ziehe Line von x1,y1 nach x2,y2, Kreise, Bars, Text, Bitmaps, ...). OLEDs sind solangsam auch recht günstig zu bekommen, allerdings nicht in riesengrößen. Es gibt auch haufenweise Code dazu. Soweit ich mich erinnere gibts bei Watterott welche mit Beispielcode. Schau auch mal bei steitec vorbei, da gibts coole ARM-Stamps mit farb-Tocuhscreendisplays für unter 50 Euro. Ich würde dir ein T6963 empfehlen, haste schonmal die ganze Textk**ke nicht am Hals und du kannst dich um Grafik kümmern. Auch wenn die etwas teurer sind als andere, kostet sie trotzdem nicht die Welt. Guck mal auf ebay usw. Da bekommste 128x128 aufwärts für ca 20 Euro. Wenn du per USB an Rechner willst, schau dir mal die SP14Q002 von Wallbraun Elektronics an, da hab ich zwei, finde ich total genial :) 320x240 S/W mit Touchscreen. Allerdings nich ganz so Kontrastreich, im Sonnenlicht kannste die nicht lesen und der Winkel ist auch nich so 100%ig. Aber wenns kein Fernseher werden soll, wirds schon reichen ;)
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.