Ein einfacher LCD Controller für ein 640x480 Dual Scan LCD. Ideal für alle die noch so ein LCD rumliegen haben, aber nicht 30 für ein S1D13704/5 ausgeben wollen.
Hier noch eine einfache Testversion um eine Schwarzweis 640x480 BMP zu laden. Einfach die .BMP Datei über RS232 mit 115200Baud senden.
Hi, das interessiert mich. Versteh ich das richtig (aus dem Schaltplan), das man noch ein bischen schneller werden könnte wenn man die Datenleitung auch noch an einen extra Port hängt und das Addresslatch wegläst? Gruesse Peter
Nein, das bringt nichts, denn der LD temp, X+ Befehl benötigt nur 4 Takte. Wenn man das per Hand macht, muss man zwei Bytes an den Ausgang legen (2 Takte), RD\ auf Low und wieder auf High bringen (nochmal 2 Takte) und anschließend die Adresse erhöhen (2 Takte). Da ist der ld Befehl schneller, und der liest sogar noch den Wert aus dem RAM.
Hi Benedikt, ist es richtig, das es dieses Display mal bei pollin für 9 Euro gab ? mfg Kay
Es waren glaube ich 9,95 wenn ich mich noch recht erinnere... Die Schaltung läuft aber auch so ziemlich mit jedem anderen SW 640x480 LCD, dessen Ansteuerung nicht total anderst ist.
hi ich finde es prima, das man dazu jetzt keinen extra epson controller braucht. kann man das ding auch mit nem AT90S8515 laufen lassen ? wäre es vielleicht auch möglich die eagle datei von dir zu erhalten ? mfg Kay
Es sollte auch mit einem normalen 8515 laufen, ich habe es zwar noch nicht ausprobiert, aber an sich verwende ich keine Spezialfunktionen des mega8515. Für was brauchst du da eine Eagle Datei ? Die Schaltung ist doch in 30Minuten auf einer Lochrasterplatine aufgebaut, vor allem da uC, Latch und SRAM direkt nebeneinander kommen und A0-7 jeweils direkt mit dem nächsten IC verlötet werden können.
Hi, da haste eigentlich recht. das werde ich auch machen. nur noch ne frage, am Display sind noch 2 Anschlüsse vorhanden. einer für die CFL Röhre denke ich und der andere ? im datenblatt steht was von -23 Volt ?? da blick ich nicht ganz durch. mfg Kay
Hier mal ein Foto von meinem Testaufbau. Beide Anschlüsse sind für die CCFLs, denn das LCD hat zwei davon. Der Stecker mit der Buchse ist der heiße Pol, der mit den Stiften der kalte. Die -23V beziehen sich auf die Spannung zwischen +5V und VLCD. Macht also etwa -18V gegen Masse. Da das LCD beschädigt wird, wenn nur VLCD aber keine +5V anliegen, wird diese Spannung vom uC geschaltet. An V- muss also eine stabilisierte Spannung mit etwa -17 bis -18V angeschlossen werden YSCL wird mit LP verbunden. Der 573 kann ein AC, AHC, ALS, F oder sonst ein schneller sein. Ich verwende einen ALS573 aus einem alten Mainboard. Ich sehe gerade, da ist ein Fehler im Plan. Es muss kein 74x32, sondern ein 74x02 sein, da das LCD die Daten an der fallenden Flanke haben möchte. Für den 74x2 reicht eigentlich ein HC. Einen 64k SRAM bekommt man etwas schlecht, aber es sollte auch mit einem 128k SRAM funktionieren. Meiner hat 20ns. Ob der 55ns 128k SRAM von Reichelt auch schnell genug ist habe ich noch nicht getestet, es sollte aber funktioniern, auchn wenn das Timing ziemlich knapp ist.
Man koennte doch die negative spannung mit spule und fet+diode gleich mit genererieren? sollte mit dem pwm ausgang relativ einfach sein. neben bei, koennte man kontrast per software steuern. gruss roman
Allerdings ist die erzeugte Spannung nicht konstant, sondern ändert sich mit der Last (=Bildinhalt). Da nehm ich lieber einen MC34063 für 35Cent und habe dann eine konstante Spannung.
ich habe auch mal noch ne kurze frage. es geht momentan ja nur SW ! wäre es denn möglich und auch machbar, das ganze mit 16 Graustufen ? mfg Kay
Um Graustufen zu erzeugen, muss eine zeitliche Modulation erfolgen, für drei unterschiedliche Helligkeitsstufen müsste der Bildinhalt zweimal nacheinander ausgegeben werden. Die Helligkeitsstufen sind dann: 0 - Pixel bleibt bei beiden Durchläufen aus 1 - Pixel wird nur bei einem Durchlauf angesteuert 2 - Pixel wird bei beiden Durchläufen angesteuert Sowas reduziert die Bildqualität noch weiter (IMHO sind TN-SW-Displays eh' nicht das weiße vom Ei) und steigert den Speicherbedarf. Gut, so ein 32K-SRAM kost' nicht die Welt, und man müsste die alle nur parallelschalten und könnte derzeit unbenutzte Portleitungen mit den /CS-Eingängen der SRAMs verbinden. Die Software müsste nach jedem Frame auf ein anderes SRAM umschalten, was nicht schwer sein dürfte. Übrigens ein dickes Lob an Benedikt. Mit welcher Framerate arbeitet diese Schaltung eigentlich?
Die Framerate beträgt etwa 65Hz. Bis 80Hz sind möglich, aber dann geht ab und zu mal ein Datenbyte verloren. Daher habe ich es soweit reduziert, dass man ein Vollbild am Stück senden kann, ohne dass irgendwas verloren geht. 65Hz ist noch im erträglichen Bereich: Vor allem bei den alten LCDs sieht man dann noch kein Flimmern. Das mit der schlechteren Bildqualität stimmt nur bedingt: Um 16 Graustufen darzustellen, braucht man 15 Bilder und somit auch die 15 fache Geschwindigkeit (zumindest in der Theorie). LCD Controller wie der S1D13704 machen das aber irgendwie anderst, aber echt gut. Selbst wenn die (theoretische) Displayfrequenz nur 70Hz/15=4,67Hz beträgt, sieht man da kein Flackern. Graustufen wären bei dieser Schaltung zwar möglich, aber dadurch würde die Displayfrequenz auf etwa 30Hz sinken, was auf jedenfall gut sichbar flackert. Bei 640x480 kann man auch ganz gut mit SW leben. Auf alten PC System (Atari) konnte die Grafikkarte auch nur 640x400 und 2 Farben (also Schwarzweiß) mit dem Standardmonitor. Um trozdem Graustufen darstellen zu können, kann man ja immer noch Streuraster verwenden. Siehe Bild im Anhang.
Hallo, @Bendedikt: Für die negative Spannung ( - 17V ) benutzt du also einen MC34063 ? Für die CFL´s brauche ich doch noch einen Inverter oder ? würde mir die teile gerne bei reichelt bestellen, will aber erst warten, bis ich alles zusammen habe. deswegen frage ich mfg Kay
Der MC34063 schafft gerade so die -18V bei 5V Eingangsspannung. Der Wirkungsgrad ist miserabel (ca. 50%), aber es geht. Ich habe das ganze mal durchgerechnet, in der Theorie lassen sich maximal 55% Wirkungsgrad und max. -20V erreichen, was gerade so reicht. Die CCFLs brauchen auch noch 2 Inverter, da das Pollin LCD 2 Röhren hat !
Hi Benedikt! Wie überträgst du dann die Daten zum Display und von wo aus? Hast du das am PC angeschlossen oder wie darf ich mir das vorstellen? Ich habe auch ein 640x480-monochrom-LCD und würde das gerne an meinen PC an den LPT anschliessen und mit LCDInfo betreiben. Denkst du es wäre möglich deine Schaltung in diese Richtung zu modifizieren? Beim MC34063 kann man durch ändern der Spule und der Arbeitsfrequenz noch ein bisschen rausholen. Sowohl bei der Ausgangspannung als auch beim Wirkungsgrad. Ich weiß nicht wie du den betreibst, aber evtl. könntest du noch ein bisschen raushloen...
Ds LCD bekommt die Grafikdaten seriell. Ich sende einfach ein SW BMP mit 115,2kbaud an den AVR, der es dann auf dem LCD darstellt. Leider dauert der Aufbau eines Bildes 3s, es ist also nichts für schnelle Grafiken. Außerdem ist es zu keinem vorhandene LCD Controller Standart kompatibel. Gibt es irgendwelche seriellen Grafik LCDs ? Wenn ja, dann könnte ich dieses nachbilden, so dass man es mit irgendeiner Standartsoftware ansteuern kann. An sich wäre zwar auch eine Ansteuerung über den LPT möglich, aber dieser ist warscheinlich zu schnell für den AVR, der hauptsächlich mit der LCD Ansteuerung beschäftigt ist.
Von seriellen GLCDs weiß ich nichts, sorry! An das Handling hatte ich nicht gedacht, stimmt... Der AVR hätte vermutlich keine Chance mit der Geschwindigkeit des LPT mitzuhalten, selbst wenn sich am Bildinhalt kaum was ändert... In dem Fall hat sich das schon wieder ziemlich erledigt und werde mir doch einen S1D1.... holen und eine Platine und Treiber dazu machen müssen... Trotzdem recht vielen Dank!
benutz doch die software LCDHype (www.lcdhype.de.vu) dafür kann man sehr einfach treiber entwickeln (das meißte is open source) und nen treiber der nur n bmp sendet is ja nich wirklich schwer zu schreiben
@Hauke das mit lcdhype wäre schon toll. nur bringt es mir ja auch nix, wenn das aufbauen einens Bildes 3s dauert. mfg Kay
Den Bildaufbau könnte ich beschleunigen, wenn ich anstelle der seriellen Verbindung eine parallele verwendet. Allerdings muss diese von der Geschwindigkeiz her begrenzt werden, bzw. vor jedem Datentransfer bzw. Befehl das Busy Flag abgefragt werden. Die LCD Ausgabe benötigt rund 12MIPs (für 60fps) bzw. 14MIPs für 70fps. Der mega8515 verkraftet problemlos 20MHz, was also 6MIPs nur für den Datentransfer zur Verfügung stellen würde. Pro Byte werden rund 70 Takte benötigt. Somit würde eine Aktualisierung rund 0,5s dauern, wenn alles optimal läuft ! Falls also jemand ein Plugin schreiben kann (und möchte), ich erweitere meine Software gerne um einen schnelleren Datentransfer zu ermöglichen. Ein 640x480 LCD am LPT wäre schon super, vor allem da der mega8515 und die paar ICs kaum was kosten...
hi benedikt, wenn Du so ne parallele Ansteuerung machen könntest, könnte ich probieren, ne Software für die Parallele des PC´s zu schreiben !! mfg Kay
wenns weiter geht, ich hätte auch interesse! PS: der programmierer dieser Software ist sehr offen in sachen vorschlägen ... der hilft euch auch gerne weiter!
Ich werde dann in den nächsten Wochen mal meine Schaltung auf parallel umbauen und testen. Sobald die erste Version läuft, melde ich mich wieder.
Hallo Benedikt, Ich hab zuhause ein 640x480 von einem alten Olivetti Notebook - jedoch keine Steckerbelegung. Könntest du mir dabei vielleicht weiterhelfen wenn ich ein paar Fotos davon mache? Danke. lg leo
ein paar fotos reichen meißt nicht! man bräuchte schon ein Datenblat oder ähnliches!
wenn ichs hätte... die chip-bezeichnungen hab ich gegooglet, jedoch nichts gefunden. vielleicht hat jemand mit solchen dingern mehr erfahrung als ich und kann mir dabei helfen, die chips zu identifizieren. danke
Um ein Datenblatt oder sonstige Infos zu finden, gehe ich immer so vor: Nach der Bezeichnung googlen. Mit etwas Glück findet man ein paar Notebook Manuals, in denen die Anschlussbelegung steht. Der Rest ist dann eine Kleinigkeit.
hi benedikt, was mich auch noch interessieren würde : Ich suche noch nach einer möglichkeit, das LCD als Kontrollmonitor zu benutzen. also ich will keine kompletten bilder anzeigen, nur Texte an einer bestimmten Stelle anzeigen. Könnte ich das auch über die serielle lösen ? wäre das möglich ? mfg Kay
@Hauke Radtki Ob Text oder Bild ist egal, das ist ein Grafik LCD ! Ein weiterer AVR als Character Generator, mit schneller paralleler Anbindung oder mit SPI und dann sollte es eigentlich ganz gut funktionieren, Text anzuzeigen.
ne damit meinte ich nur, dass die übertragung über die serielle schnittstelle nicht lange braucht, wenn man nur zeichen schickt ;-P
hi, möchte das LCD also als Home Automation Kontroll LCD verwenden. Dazu möchte ich mit einem AVR Texte ( evtl. auch bilder ) über die serielle oder Parallele an das LCD senden. Nur fehlt mir halt das Wissen, den AVR für das LCD zu programmieren. Naja, vielleicht habe ich ja glück, und Benedikt hilft da ein wenig :-) mfg Kay
parallel wirkt sich auf jeden fall gut auf die geschwindigkeit aus!
malindenraumwerf Es gibt doch ein App-Note von Atmel das die Datenübertragung zwischen AVR und PC-Parallelport mit Datenraten von bis zu 400kBytes/s zeigt... könnte vielleicht interessant sein?
Die ganzen App Notes sind zwar an sich OK, aber bei der LCD Ansteuerung muss die Datenübertragung quasi im Hintergrund laufen. Da kann man dann mit 100kB/s schon sehr zufrieden sein...
wichtig ist mir halt nur, das ich auch mit nem anderen AVR auf den Controller für das LCD zugreifen kann. Mein Problem ist nur, das ich Basic'er bin und mit C oder ASM nicht viel weiter komm.
Hi Benedikt, ich hab hier gerade entdeckt, dass du die gleiche Idee hattest BMP Files seriell zum AVR zu übertragen. Ich hab da ein kleines Problem. Und zwar läuft das ganze bei mir mit einem 8515 an 8MHz, mehr als 34800 Baud funktioniert bei mir nicht, aber das genügt ja auch. Das Problem ist, dass im externen SRAM das 320x240 Pixel Bild auf etwa 320*40 Pixel zusammengestaucht ist, d.h. es wird von der seriellen Übertragung nur etwa jedes 6. Datenbyte in den Speicher geschrieben (mal mehr mal weniger, sehr variabel) im internen SRAM funktioniert dieses Verfahren einwandfrei, es scheint also gerade so, als ob der externe Speicher für die Übertragung zu langsam ist. Aber selbst wenn ich die Baudrate extrem reduziere so auf 1200 und das ist schon echt unangenehm langsam, hat er das selbe Problem. Ich glaube das ist ein Hardwareproblem, muss man da vielleicht Pulldowns oder Cs oder irgendwas an den Bus hängen ich weiss echt nicht, bei dir funktionierts ja offenbar mit 115kBaud. Also ich hab noch Zeit bis Fr, würde mich freuen, wenn mir jemand einen Tip geben könnte
Ohne Code und Schaltung kann ich dir leiter nicht weiterhelfen. Funktioniert denn die Ausgabe der Daten aus dem RAM auf dem LCD fehlerfrei ? Wenn ja, dann wird es eher nicht an einem Timingproblem beim SRAM liegen.
Ja die Ausgabe funktioniert einwandfrei. Was ich hier benutze ist ein Evaluation Board, hab also kein Schematic davon und das Speicherinterface sieht genauso aus, wie auf dem lcd.gif in einem der vorangehenden Beiträge. Ich hab den UART empfang schon mit und ohne Interruptsteuerung ausprobiert, ist immer das gleiche Problem. Ich glaube auch nicht, dass es ein Softwareproblem ist, beim UART Empfang kann man ja nicht viel falsch machen. Aber vielleicht eine Frage noch, mit welchem Programm sendest du denn die Bildschirmmaske an den AVR. Ich hab bisher immer eine Textdatei mit dem Hyperterminal geschickt, aber ich habe das Gefühl, der sendet das File viel schneller als die eingestellte Baudrate. Gibts da vielleicht was eleganteres?
Ich verwende das Bray Terminal oder HTerm http://www.mikrocontroller.net/forum/read-8-155472.html#new
Das ist genau das, was ich schon beim letzten Projekt gebraucht hätte Die Übertragung funktioniert jetzt auch, musste nur ne Zeichenverzögerung einstellen Thanx
Hi Benedikt, haste deine Schaltung schon auf Parallel umgebaut ? mfg Kay
Hi Benedikt, haste deine Schaltung schon auf Parallel umgebaut ? mfg Kay
Hab schon angefangen, bin aber noch nicht ganz fertig.
hab dazu noch ne kurze frage. wäre es denn auch möglich, die serielle zu verwenden und nur teile des Displays zu beschreiben, also z.B. Locate 10,10 "Hallo". Also das von oben der 10 Pixel und von links der 10 Pixel usw. Ich hoffe du verstehst mich ein wenig. wäre das möglich ?
Ja, das ist möglich. Dafür gibt des den SetCursor Befehl. Text lässt sich allerdings nicht direkt darstellen, da das Display nur einzelne Pixel anzeigen kann. Der Text muss also als Bild geliefert werden.
wie kann ich das aber mit einem Terminalprogramm machen ? unterstützt deine Schaltung das ganze ? mfg Kay
Leider nein, da 9bit an Daten übertragen werden müssen, um zwischen Daten/Befehl unterscheiden zu können. In etwa 1 Monat habe ich etwas Zeit, dann schreibe ich das ganze auf ein 8bit Parallelinterface um, ähnlich T6963 und Co. Dann kann man ein 640x480 LCD an den LPT anschließen...
das wäre ja prima. dann werde ich noch gerne warten. dankeschön
Hallo Benedikt, suche nach der Anschlussbelegung von LCD Display (640*480 BW) kannst Du, wenn möglich, Anschlussbelegungen zu Deinem Projekt veröffentlichen oder hast Du ne Webseite auf der Details zum Projekt sind?
Das Datenblatt zu dem LCD (EG9006) findet man irgendwo hier im Forum (es hieß glaue ich Pollin LCD blau)
Hallo , ich habe mehrere dieser Displays. Leider keine Unterlagen dazu. Haben Sie die Schaltpläne oder andere Unterlagen zu diesen Displays. Wie wäre es mit einem Tausch ? :-) Display gegen Unterlagen . Porto übernehme ich. uk
Sucht du Daten zum EG9006 oder zu einem anderen LCD ?
Die zum EG9006 sucht er bestimmt nicht, sonst hätte er sie ja hier im Forum schon längst gefunden...
Hmmmm ???? Das ist nicht so einfach. Es geht um 640 X 480 SW LCD von Pollin. Hab ich schon fast acht Jahre rumliegen. Leider habe ich nie die Unterlagen bekommen. Ich muss wohl mal die Kiste rauskramen und ein Bild einstellen. bis denn
Hallo ich habe noch ein 640 x 480 Display hier liegen. Folgendes steht drauf : H6480L-FT (oben) / H6485L-FF (hinten). Das Datenblatt ist auf : http://pingos.i7c.org/stuff/display/Datenblatt.pdf Funktioniert eure Schaltung/Software auch mit diesem Display ? danke Markus
Theoretisch kann man das Display auch damit betrieben, aber man müsste die Software etwas umschreiben, denn im Gegensatz zu den meisten LCDs ist deines kein Dual Scan Display (Bei einem Dualscan Display wird die obere und untere Displayhälfte gleichzeitig dargestellt, bei dire nacheinander).
Mir sind ein paar LCDs zugeflogen SP10Q003. Ich frage mich, ob ich mit dieser Loesung diese auch ansteuern kann? @Benedikt: Koenntest Du mal draufschauen? Danke! Alex
Ähnliche Antwort wie zuvor: Ist möglich, aber die Software muss angepasst werden.
Hallo zusammen, da bin ich wieder. Hab zwar noch keine Fotos aber die Bezeichnungen. Auf der Rückseite sind zwei Bezeichnungen angegeben. "LM641542" und "92C02935Y" Beim ersten gibt mir Google nur Bestellnummern für den Chip. Am Rand steht noch die Bezeichnung "Sharp", "X1075CP" und "MM V" Wie gesagt, ich habe zehn von den Dingern und geb auch gern das ein oder andere ab. Danke bis denn
Könntest du mal ein Foto davon machen, vor allem von dem Anschluss ? Wieviele Pins hat der Anschuss ?
Ist das Flachbandkabel der Anschluss, oder der 15 polige ? Dem 15 poligen nach könnte es dem LM64194 ähnlich sein, die Position der dicken Leitbahnen auf 6 und 7 passt zumindest schonmal (Vss und Vee). Wenn jetzt auch noch die Pins 11-15 am Flachbandkabel zum unteren Displayrand und Pins 7-10 am Kabel zum oberen Rand zu finden sind, könnte das durchaus sein.
Wenn das 14 polige Kabel 1:1 mit dem 15 poligen verbunden ist (außer Pin 4 beim 15 poligen, der bei 14 poligen fehlt), dann passt die Belegung sehr warscheinlich.
Hi Benedikt, du hast ja vor, das Display mit einem pseudo "T6963C" ansteuerbar zu machen. Wie siehts da eigentlich mit der Auflösung aus ? unterstützt der T6963C eigentlich ne Auflösung von 640*480 ??? Die Software die ich kenne unterstützen normalerweise nur 320*240 !! mfg Kay
Der 6963 kann an sich keine so hohen Auflösungen, aber das ist auch kein Problem, denn eine Initialisierung benötgt der 640x480 Controller nicht. Das Adressregister ist 16bit breit, reicht also für 512k Pixel. 640x480 sind nur 300k Pixel.
Das Display kenne ich. Ich meine auch, ein Datenblatt davon zu haben; das werde ich, wenn ich mich denn nicht total irre, hier heute abend posten. Nur soviel: Das Flachbandkabel ist der Anschluss, und das Display ist, wie üblich, in eine obere und untere Hälfte geteilt, die mit je 4 Bit angesteuert werden. Es müsste daher hervorragend zu Benedikts Ansteuerng passen. Mehr heute abend.
Meine Vermutung zur Anschlussbelegung (von 1-14): FLM, LP, XSCL, 5V, GND, -15-18V, UD0-UD3, LD0-LD3 Mal schauen ob ich richtig geraten haben...
Anbei Scans meiner leider recht schlechten Kopie des Datenblatts des LM641541, das wohl dem x42 entspricht. Die Teile gabs vor ziemlich langer Zeit (15 Jahre her?) mal bei einem Elektronikrestpostenhändler namens Bühler zum Spottpreis. Habe damals davon eines an einer ISA-Graphikkarte von Dr.Berghaus (ein anderer Name für eine Apotheke) in Betrieb genommen - funktioniert. Heutzutage sind solche Displays zwar verhältnismäßig uninteressant, aber man könnte, Benedikts Projektvorlage aufgreifend, daraus ja beispielsweise eine schicke Funkuhr bauen. Oder ähnlich nützliches ...
Hier die erste Testversion für den LCD Controller mit parallelem Anschluss (z.B. an einen anderen uC oder an einen PC über den LPT.) Für den Anschluss an den LPT, kommt Busy an Pin 11 (Busy), WR\ an Pin 1 (Strobe\) und C/D\ an Pin 14 (Autofeed). GND kommt an Pin 18-25 Das Kabel sollte sehr kurz sein (max. 1m), ansonsten muss man 74LS245 o.ä. dazwischen schalten, die Kabelreflektionen dämpfen usw. Im Paket ist auch ein einfaches QBasic Programm zur Ansteuerung enthalten. Damit lässt sich ein BMP mit 640x480 und 2 Farben laden. Die Ladezeit beträgt < 1s, bei meinem 900MHz PC unter Win98SE waren im Durchschnitt etwa 45kByte/s Datenrate möglich. Unter DOS über 50kByte/s. Immerhin das 5 fache gegenüber der RS232 Variante. Falls es jemand getestet hat, dann bitte ich um eine kleinen Kommantar, ob die Software funktioniert oder nicht. In den nächsten Tagen/Wochen werde ich hoffentlich eine fehlerfreie Version mit allen Features fertig bekommen.
hi, könntet ihr euch mal diesen thread angucken und mir sagen, ob man die hier genannte schaltung für mein problem benutzen kann? http://www.mikrocontroller.net/forum/read-1-206511.html
Die Antwort lautet (wie fast immer): Theoretisch ja, aber die Software muss entsprechend an das LCD angepasst werden. Wenn man die Ausgabe etwas optimieren möchte, dann ist in diesem Fall noch ein Schieberegister notwendig, da dein LCD zwei Bit benötigt, meine Software aber 8bit ausgibt. Mit einem HD61830 oder einem T6963 wäre das ganze warscheinlich einfacher.
Baust du dann auch nen charter generator wie beim t6963c ein? das wäre dann nämlcih extrem praktisch!
Ich kanns mal versuchen, allerdings wird dieser ziemlich langsam, denn immerhin muss ich für ein 8x8 Zeichen 16Bytes schreiben und 16Bytes lesen (da die Daten als 4bit Werte gespeichert werden). Außerdem hat man keine getrennten Bereiche für Text und Grafik, sondern der Text überschreibt stur die Grafik (eventuell könnte man auch OR, AND, XOR einbauen).
Hier die neue Version mit Character Generator (der erstaunlich schnell ist). Insgesamt gibt es ein paar Änderungen/Verbesserungen: - 8x8 Character Generator, damit ist eine schnelle Textdarstellung möglich - leicht überarbeitete Ansteuerung (mit hoffentlich weniger Störungen, ich hasse den LPT !!!) - verbessertes Display Timing. Das leichte Flimmern während einer Datenübertragung ist jetzt weg. Außerdem nimmt sich der Controller etwas mehr Zeit indem er Busy setzt, während er mit dem LCD beschäftigt ist. - PWM Ausgang (OC1B auf PortE2) z.B. für Kontrastreglung per Software einstellbar. Damit hat der mega8515 jetzt keine freien Pins mehr.
Respekt! Du warst ja sehr schnell! Ich glaube ich werde mir die schaltung jetzt auch einmal aufbauen!
Jetzt muss sich nur noch jemand finden, der eine geeignete Windows Software (z.B. als Plugin für eines von den vielen LCD Progs) dafür schreibt. Meine Fähigkeiten hören beim normalen C auf... Unter Win98/DOS habe ich mir auf dem LCD schon einen (etwas ruckelnden) Film in 320x180 angeschaut. Das lief ganz gut.
Also ich find die Software LCDHype sehr passend dafür, das einzige problem ist, dass die software intern auf 320x240 beschränkt ist aber vielleicht lässt sich das irgendwie aufbohren ... mal fragen
Ich habe gerade mal einen kompletten Film über den LPT auf dem LCD angeschaut, und hatte keinen einzigen Übertragungsfehler, kein Flimmern, nichts. Es waren durchschnittlich rund 50kByte/s, was bei 320x180 rund 6fps macht. Das sollte eigentlich reichen. Viel schneller sind auch die meisten normalen LCDs mit Controller am LPT nicht. Schreibt jetzt irgendjemand dafür eine Windowssoftware, um das LCD sinnvoll nutzen zu können ? Und noch ein Tip: Vergesst nie bei >8MHz CKOPT zu setzen ! Anfangs hatte ich gewaltige Probleme, immer wenn ich das Windows Logo aufs LCD übertragen habe, kam nur Mist raus. Nach weiteren Tests (insgesamt rund 10 Stunden !) habe ich gemerkt, dass der Fehler immer auftrat, wenn ich helle Bildinhalte übertragen habe. Jetzt habe ich ein StartLogo eingebaut. War diese an Zeile 10 positioniert lief alles. Bei Zeile 50 dauerte das Laden des Logos 5-30s. Bei Zeile 100 unendlich lange. Und die ganzen, äußerst merkwürdigen Fehler, lagen alle nur an der nicht gesetzen CKOPT Fuse !
Morgen, erstmal Respekt. Son geiles Projekt. Und nun ne Frage hat mal einer von euch son display über ???
Soeben habe ich die 100kB/s Marke geknackt ! Die Begrenzung liegt nicht am AVR, sondern am PC. Dieser muss 5 IO Zugriffe für jeden Schreibvrogang ausführen, was sehr viel Zeit kostet. Eventuell könnte man den ECP Modus verwenden, da der Write Impuls bei diesem automatisch erzeugt wird. Ebenso wird selbständig Busy abgefragt. Hier mal ein paar aktuelle Daten: Dauer eines Schreibvorgangs: ca 2,3us Maximale (von mir) erreichte Datenrate: konstant 100kByte/s 100kByte/s entsprechen 2,6fps mit vollen 640x480 Pixeln Auflösung oder 0,8 MegaPixel pro Sekunde ! Das übertrifft so ziemlich die meisten LCDs die ich bisher je am LPT gesehen habe... Der LCD Controller benötigt ca. 50% der CPU Leistung (bei 60Hz LCD Frequenz und 18,432MHz CPU Takt.) Es sind also noch rund 50% frei. 50%*1s/2,3us= ca. ~200kB/s (zumindest theoretisch) Bei 100kB/s ist also noch eine ausreichende Reserve frei. Im Anhang eine leicht überarbeitete Version des LCD Controllers (besseres Busy Timing, dadurch schneller) und ein C Programm (Programm + Source) zur Ansteuerung. Damit lässt sich eine beliebige SW BMP Datei laden. Leider läuft dieses Programm nur unter Win95/98. WinXP und ähnlicher auf NT basierender Schrott verweigern leider den direkten Hardware Zugriff.
Sry will E-Mail-benachrichtigung. Is kein Doppelpost.
Hallo zusammen, vielen Dank für die Hilfe. das Datenblatt von Rufus scheint zu passen. Gratuliere ein Display wäre damit für Rufus reserviert. Benedikt bekommt sowieso eins. (Wenn er will) @Rufus & Bennedikt: Wenn ihr eins möchtet. Kurze email reicht. Drei hätte ich dann noch über. Wer zuerst kommt mal zuerst. bis denn
Also wenn Dieter sich nich meldet dann möcht ich zwei aber ABWARTEN.
@Udo So ein Display suche ich schon seit längerem. Die Hintergrundbeleuchtung bei meinem stört nämlich (sowohl vom Aufwand her, als auch elektrisch gesehen). Die HF der CCFL Röhren stört manchmal dermaßen, dass der AVR instabil läuft wenn der Metallrahmen nicht gut geerdet ist. PS: Falls du irgendwelche Wünsche/Ideen für die Controllersoftware hast, nur raus damit...
Wie sieht es eigentlich mit 320x240 LCDs aus ? Besteht Bedarf an einem Low Cost Controller für LCDs mit 4bit Anschluss ? Dann würde ich den 640x480 Controller ein wenig anpassen, so dass er 4bit LCDs ansteuern kann.
Hallo Benedict, würde mich brennend interessieren. Gruss, Ralf
@Udo K.: Das freut mich, daß mit meinem Datenblatt was anzufangen war. Hoffe, daß es wenigstens halbwegs lesbar ist. Danke für das angebotene Display ... ich verzichte dankend. Komme derzeit zu keinen Bastelorgien und habe außerdem bereits ein zum Datenblatt passendes Display 'rumliegen. Von mir aus sei es Benedikt gespendet, denn der hat es mit seinem Projekt hier wirklich verdient.
Hallo, @Benedikt Dann bekommst du zwei :-) Dann sind álle fünf weg. Nochmals Danke bis denn uk
Für alle diejenigen, die WinXP oder ähnliches haben, und nicht zu einfach auf den LPT zugreifen können, hier die Lösung: http://darkface.pp.se/~spleen/lsd/awkiawki/index.cgi/UserPort Damit läuft auch mein kleines Beispielprogramm, das ich vor kurzem gepostet habe. Auf meinem 2,2GHz Rechner sind es jetzt 140kByte/s... Ich habe auch noch ein kleines Video (in leider miserabler Qualität) angehängt, das ein 640x400 Video auf dem LCD zeigt.
Hier gibt es schon wieder eine neue Version. Diesmal habe ich horizontales Scrolling eingebaut: Bisher wurden von den 256 Bytes die für eine Zeile reserviert waren nur 160Bytes verwendet. Die restlichen wurden nie geschrieben oder gelesen. Jetzt kann man 250Bytes (=1000Pixel) davon beschreiben, und die Ausgabeposition in 4 Pixel Schritten um 0-89 Werte (=0-356Pixel)verschieben. Das 640x480 LCD lässt sich jetzt frei in einem virtuellen 1000x480 Raum positionieren. Vorsicht beim Austausch durch die neue Software: Eine Zeile im Speicher ist jetzt nicht mehr 160Bytes, sondern 250Bytes groß, daher funktionieren einige der alten Ansteuerprogramme nicht mehr richtig. Schön wäre auch ein vertikales Scrolling gewesen, aber dazu reicht der Speicher nicht: Von den 256 Zeilen werden 4 durch das interne RAM des AVRs ausgeblendet. 2 weitere gehen duch den Overscan verloren, so dass noch 250 bleiben. Wegen 10 Zeilen ein Scrolling einbauen bringt nichts. Außerdem ist alles aufgrund der DualScan Ausgabe nicht so einfach.
Ich habe mal ein uraltes Winamp Plugin ausgegraben und auf das 640x480 LCD angepasst. Was herauskam sind einige nette Visualisations, die teilweise ziemlich ruckeln, aber trotzdem ganz nett sind. Auch ein paar (eigentlich total nutzlose), aber trotzdem gut aussehende (z.B. in 3D) kamen dabei heraus. Immerhin hat man ein VGA Display nur als Winamp Plugin laufen... Die Datei einfach ins Winamp/Plugins Verzeichnis kopieren. Es ist zwar noch eine absolute Alpha Version, weshalb Winamp mit Sicherheit ab und zu mal abstürzen wird, aber für den Anfang ist es ganz OK. Hat eigentlich überhaupt schonmal jemand den Controller nachgebaut ?
Benedikt, ich will. Muss aber erst meine ersten AVRs bestellen. Übernächste Woche gehts los. Und eine kloine Frage. Kann man das ganze USB fähig machen. Linuxtreiber könnt ich dann versuchen zu progen. Als Monitorersatz an servern wäre es schon Klasse. Oder meine Idee. Das ganze in einen (Plexiglas-)Bilderrahmen auf dem Mann auf Lans die Gamestates anzeigen kann. mfg Lukes Vader
Ich hab jetzt Ferien, und will den auch nachbauen! USB fähig könnte man das ganze machen, indem man einen USB -> Seriell wandler nutzt (also rs232) und dann mit nem controller (ein weiterer) das ganze auf parallel wandelt (also nich nur parallel, sondern parallel + steuerleitungen) der FTDI chip schafft glaub 3 mega Baud, also sollte das reichen Sowas hab ich schon mal für nen 240x128 t6963c LCD überdacht, und ich bin bei einer framerate von ca 20 fps gelandet.
Wiso so kompliziert ? Am Anfang hatte ich anstelle des Parallelports den UART verwendet. Wenn man den auf das maximale einstellt was der AVR schafft, dann sollte das eigentlich reichen. Allerdings müsste man dann einen 16MHz Quarz nehmen wegen den FT232 Baudraten, aber 100kBytes/s sind immer noch ganz OK. Unterstützt der FT232 hardwaremäßig CTS ? Dann wäre das Busy Problem schonmal gelöst... Allerdings bleibt ein Problem, weswegen ich überhaupt auf Parallel umgestiegen bin: Wie unterscheidet man Befehle/Daten ?
Befehl/Daten könnte man entweder mit einer der weiteren leitungen bewältigen, die man bei rs232 hat. oder man müsste 9 bits senden, wobei z.b. das erste bit angibt, obs befehl oder daten ist (9 bits in einem frame senden geht ja mit rs232)
Mit RS232 ja, mit FT232 nein. Ich hatte es anfangs mit UART und 9bits gemacht, nur ein PC kann einfach keine 9bits, so wie der uC. Ich habs dann auf Low Level ebene gemacht: UART Register eingelesen, geschaut ob der Puffer leer ist, dann das Parity Bit auf Mark/Space eingestellt (je nachdem ob Befehl oder Daten) und dann das Byte ins UART Register geschrieben. Vor/nach jedem Befehl war dann eine mehrere ms lange Pause angesagt. Wenn man das mit einer zusätzlichen Leitung macht, hat man genau dasselbe Problem, da man nie weiß wann noch Daten im UART FIFO sind. Der FT232 unterstützt schonmal den 9bit Modus garnicht. Zumindest dekodiert er das Parity Bit, und überträgt es garnicht erst vom/zum PC. Man müsste hier auch vor/nach jedem Befehl Mark/Space umschalten, aber das ist vermutlich extrem langsam. UART wäre mir auch viel lieber als LPT, aber es einfach sehr viel komplizierter. Ich bin für alle Vorschläge offen, wie man das LCD sonst noch möglichst einfach an den PC hängen kann.
Hallo. Ich werde den Controller demhaechst nachbauen. Die Sachen sind schon bestellt. Allerdings moechte ich das SP10Q003 von Hitachi ansteuern. Habe auch noch ein paar davon. Alex
Ich fürchte das mit dem SP10Q003 wird nicht so einfach gehen. Ein 320x240 LCD könnte man noch so ohne weiteres am Controller betreiben (auch wenn die Software nicht optimal dafür ist), aber SP10Q003 ist ein 240x320 LCD (also 240 Pixel breit, 320 Pixel hoch). Es wird zwar was auf dem LCD erkennbar sein, aber wirklich zu gebrauchen ist das warscheinlich nicht.
ja, das ist mir klar. Ich werde natuerlich auch die Software dementsprechend anpassen muessen. Eine Sache ist mir noch nicht ganz klar: Wie erzeuge ich die CL1 und CL2 Signale, aber das wird auch schon. Alex
Hi Leute, endlich hab ich mal eine Seite gefunden, die auch meine, bei eBay ersteigerten, Displays nennt. Ich bestitze die SHARP LM641541 Dinger. Jetzt überleg ich mir, die Displays als Anzeige für Uhrzeit, Anrufe, Netzwerkverbindungen etc. unter Linux oder Windows einzusetzen. Meine Überlegung war, das man die Displays in jedem Raum der Wohnung hat. Dazu wollte ich den, von C'Ts entwickelten ETHERNET 2 SERIELL Adapter verwenden, weil ich einfach net so viele serielle Ports zur Verfügung hab, auch denke ich, das die Letungslänge mit teilweise über 10 Metern nicht unbedingtperfekt ist. Jetzt wollte ich fragen, ob jemand schon für das SHarp Display ne Ansteuerung gemacht hat, bzw. Ansteuerung seriell, mit Texteingaben und Grafik. Meine Rechner haben leider keine Parallelen Port mehr und die Serielle ist wegen eines Bastelfehlers meinerseits defekt. Ich habe 7 Displays, wovon ich für meine Zwecke 4-5 bräuchte. Wer eines zu Testzwecken haben möchte, der kann sich bei mir via eMail melden. Dummerweise bin ich nict unbedingt der Basteltyp, habs mehr mit Basic, würde aber versuchen, irgedetwas an Programm zu schreiben, mit dem ich was auf dem Display ausgeben kann. Danke für Eure Anteilnahme... Gruß Björn
CL1 = LP CL2 = XSCL Das Datenblatt vom SP10Q003 ist schon lustig: Bei der Anschlussbelegung heißen die Dinger CL1 und CL2, im Timing Diagramm CP und Load Ich habe mal eine kleine Schaltung angehängt, wie man die 8bit Daten des SRAMs bei 4bit LCDs effektiver nutzen kann. Die Software muss allerdings ziemlich stark geändert werden.
Im Moment bin ich gerade dabei die Software wieder auf serielle Schnittstelle über den UART umzuschreiben. Die Datenrate lege ich erstmal auf 1MBit fest, was best case 100kB/s liefern sollte. Das ganz wird dann über einen FT232 laufen, was die Ansteuerung per PC warscheinlich ziemlich vereinfachen wird. Der Busy Ausgang wird Hardwaremäßig vom FT232 über CTS ausgewertet, was für eine effektivere Datenübertragung sorgen sollte, da die Response Zeit gegen Null geht.
Hier nun die erste Testversion des LCD Controllers mit USB Anschluss über einen FT232. Der mega8515 läuft nun mit 16MHz, um eine Baudrate von 1MBaud = 100kB/s zu erreichen. Das ist zwar nicht ganz so schnell wie die parallele Version, aber der Anschluss und die Ansteuerung sind einfacher, die CPU Auslastung viel geringer und die Übertragung sicherer. Im Anhang die Software, Schaltbild und ein kleines Windows Programm + Source um ein BMP zu laden.
Was bring ein LCD ohne passende Sofware, die was sinnvolles darauf anzeigt? Nichts ! Aus diesem Grund habe ich mit Hilfe der Programmiers von LCDHype (ViRuSTriNiTy) einen Treiber geschrieben, der das 640x480 LCD ansteuern kann, obwohl LCDHype (http://www.lcdhype.de.vu/) eigentlich nur 320x240 unterstützt. Mit einigen Tricks geht das auch ganz gut. Leider läuft das ganze noch recht langsam und instabil, aber das werde ich hoffentlich bald behoben haben.
Hier mal die aktuellste USB Version mit Treiber und Beispiel für LCDHype.
Hallo, danke benedikt für diese Infos. Sehr geil. werde jetzt die restlichen teile bestellen und dann gehts los. danke Kay
Hallo.... @Benedikt: Ich habe jetzt meine Hardware soweit zusammengeloetet. Mein Problem ist jetzt die lcdconpar.asm zu uebersetzen. Ich habe auch schon mal versucht die .hex datei in meinen 8515 herunterzuladen, aber ich bekommen den Fehler: "Address: 0x0000, Expected: 0xc020, Received: 0xffff" Jetzt meine Fragen: 1. Gibt es einen besonderen Trick um die .asm zu uebersetzen? 2. Was bedeuted diese Fehlermeldung? Alex
Hi Leute, es hat sich erledigt -> habe den Fehler gefunden. ;-)) Alex
@Kay, Alex1 und die anderen die den Controller nachbauen: Gebt mal bitte einen Kommentar dazu ob, ob die Schaltung bei euch problemlos läuft. Ich habe jetzt 2x die USB Version und eine parallele bei mir am Laufen und hatte eigentlich keine größeren Probleme. Zumindest hängte sich der Controller nie auf (wenn doch wäre es auch nicht schlimm, da der Watchdog eine Beschädigung des LCDs verhindert). Bei der parallelen Version muss man nur etwas mit dem Ansteuertiming aufpassen.
hi, wenn ich den controller nachgebaut habe, werde ich auf jedenfall meine Erfahrungen dazu schreiben.
Hallo... @Benedikt: Ich habe immer noch den Fehler beim Programmieren. Das "ding" (AVRProg) meldet immer den selben Fehler!? Hmmm..... "Address: 0x0000, Expected: 0xc020, Received: 0xffff" Koennt ihr mir auf die spruenge helfen? Danke Alex
Ich würd mal sagen dein Programmer programmiert nicht... Es sollte der Wert 0xx020 drin stehen, es steht aber 0xffff = gelöscht drin.
Ja, klar. So weit ich weiss werden die neuen Sachen mit FF geliefert. Wie bekommen ich das Ding zum Programmieren? Ich habe grad mal meinen JTAG noch mal neu Programmiert. Der Progger geht. Alex
Hi wollte fragen ob noch jemand ein lcd zu verkaufen hat ... gruss flo
Ich habe 2 LCD, eins kann ich abgeben. Brauche aber jemanden, der mir die Schaltung aufbaut und den Controller proggt.
hi würde als gegenleistung die schaltung für dich aufbauen und den Controller proggen
Hi, wie ich schon oben geschrieben habe, hab ich auch noch mehrere von den Displays... wenn mir jemand die schaltung aufbaut (aber bitte seriell) dann kann er eins von diesen Displays haben... Natürlich nur mit einer Kostenverrechnung... Ich sag nur, die Displays waren sehr billig... und somit bekommt der Löter von mir das Geld zurück... bis denne Björn
@Björn Was sind das für Displays ? Die von Pollin ? Hintergrundbeleuchtung ?
Ich bestitze die SHARP LM641541 Dinger. leider sind es nur die displays, ohne hintergrundbeleuchtung, etc. also die reinen displays wie auch noch weiter oben abgebildet sind (einfahc mal nach LM641514 suchen) da sind sie abgebildet... bis denne Björn
@Florian Bratschi Ich habe die Sharp LM641542, also auch ohne Beleuchtung. Wäre damit einverstanden. Kannst du USB-Bauen ?
Also, ich bräuchte eine funktionierende serielle ansteuerung für die 641541er... wer mir so ein ding bauen kann, der kann von mir auch ein display haben... bzw. ich kann auch welche verkaufen, wenn jemand interesse daran hat. ich selber bin, obwohl prozeßleitelektroniker gelernt, nicht in der lage, das bauen zu übernehmen, programmieren leider auch net, hab halt net das zeug dazu. interesse??? info@r-byte.de bis denne Björn
Ist denn das LM641541 kompatibel zu der Schaltung? Wenn ja wäre ich bereit die Schaltung aufzubauen.
Das LM641541 funktioniert mit der Schaltung, (hier auf dem Bild sieht man es http://www.mikrocontroller.net/attachment.php/216186/lcdhype.jpg ) Demnächst werde ich mal den FT232 durch den FT245 ersetzen. Damit sollte eine höhere Datenrate mglich sein (theoretisch bis zu 200kByte/s.)
sobald hier jemand eine fertige Platine oder ein fertiges Modul verkauft, möchte ich schon mal bedarf anmelden für mich. Gruss, Ralf
Hi, Benedikt: Sehe ich das richtig, dass man das LCD Zeilenweise direkt und Spaltenweise alle 8 Pixel mit dem Cursor ansprechen kann? Gruss Tobias
Ja, theoretisch wäre es sogar möglich Spaltenweise alle 4 Pixel zu adressieren, aber dazu sehe ich keinen Bedarf.
Hi, jo das waere wohl auch bissel unoetig :) Nochwas: Write: in regsave, sreg sbrc NextOp, CD ;Befehl oder Daten ? (Bit gesetzt für Com, d.h. vorhergehendes Byte war Escape) rjmp Comm cpi temp, Escape ;Akteller Wert = Escape ? brne Daten ;Wenn nein, dann Bilddaten sbr NextOp, 1<<CD ;Wenn ja, dann ist nächster Wert ein Befehl -> NextOp.Escape setzen. out sreg, regsave reti Daten: cpi NextOp, 0 ;Paramter oder Daten ? brne Next Wenn man den Check auf Parameter vor die Erkennung eines Escapes setzten wuerde, dann muesste man doch auch bei den Paramtetern nicht staendig ein doppletes Escape schicken, wenn der Paramter eins ist. Waere zwar nur ne kleine Verbesserung, aber das ist mir gerade aufgefallen. Gruss Tobias
Ich bins nochmal :) Wei sjemdn was das LM641541 fuer einen Stecker benoetigt, und wo man den organisieren kann? Ich eis, dass es ein 15 poliger Folienstecker ist, mehr aber auch nicht. Gruss Tobias
Das mit dem Kabel bei den LCDs löse ich ganz einfach: Meist ist es ein Folienkabel mit 1,27mm Raster. Das einfach auslöten und stattdesse ein normales Flachbandkabel dran, das auf der anderen Seite einen 14 oder 16 poligen Stecker aufgequetscht bekommt. Das mit dem Escape bei den Parametern verstehe ich nicht so ganz... Escape -> nächstes Byte ein Befehl Escape, Escape -> Datenwert/Parameter mit dem Wert Escape Doppeltes Escape wird nur gesendet, wenn der Datenwert den Wert Escape hat.
Hi, jo das mit dem Flachband ist ne gute Idee. Zu dem Escape: Wenn der Paramter den Wert Escape hat wird ja zuerst in die Comm Routine und dann in die Datenroutine gesprungen. Danach wird dann nochmal ueberprueft, ob es sich um einen Paramter handelt. Wenn man einfach gleich, noch vor der Escape abfrage, ueebrpruft, ob es sich um einen Paramter handelt kann mal ja gleich in die next Routine springen und erspaart sich die zwei anderen Spruenge und Vergliche. Praktisch also das: Write: in regsave, sreg sbrc NextOp, CD ;Befehl oder Daten ? (Bit gesetzt für Com, d.h. vorhergehendes Byte war Escape) rjmp Comm cpi NextOp, 0 ;Paramter oder Daten ? brne Next cpi temp, Escape ;Akteller Wert = Escape ? brne Daten ;Wenn nein, dann Bilddaten sbr NextOp, 1<<CD ;Wenn ja, dann ist nächster Wert ein Befehl -> NextOp.Escape setzen. out sreg, regsave reti ;*** Bearbeitung der Daten *** Daten: sbi portd, XSCL ;Datenverbindung zum LCD unterbrechen Jezt kann man einen Paramter, der den Wert Escape hat auch direkt als Escape senden. Bitte sag mir, wenn ich einen Denkfehler hab :) Gruss Tobias
OK, jetzt habe ich das verstanden. Wäre machbar, würde vermutlich so ca. 1us sparen, aber das würde insgesamt nicht viel beschleunigen, denn es bringt nur was wenn der Wert Escape als Parameter gesendet wird, und das passiert im Vergleich zu den Daten relativ selten. Ich könnte es ändern, aber es würde eben nicht viel bringen. So gilt für alles (ohne Ausnahme): Escape=Beginn eines Befehls, 2x Escape=Wert Escape. Viel mehr Geschwindigkeit könnte man über eine ordentliche Windows USB Programmierung rausholen. Da im parallelen Modus über 150kByte/s möglich sind, über USB aber nur etwa 60-70kByte, liegt es nicht am AVR, dass die Daten so langsam übertragen werden. Ich habe das ganze mal von seriell mittels FT232 auf FT245 umgeschrieben. Dies hat den Vorteil, dass der uC selbst bestimmen kann wann er Daten bekommen möchte. Deshalb ist das ganze etwas schneller, verursacht weniger Fehler und liefert absolut kein Flimmern mehr auf dem LCD, da nun keine Interrupts mehr verwendet werden. Von der Windows Softwar her ist das ganze kompatibel zur seriellen FT232 Version.
Hi, Benedikt: Interpretiere ich deine Schaltung so korrekt: D7 = LD0 ... D4 = LD3 D3 = UD0 ... D0 = UD3 Wie werden denn S,CP1 und CP2 des LM641541 auf XSCL,FLM und LP deiner Schaltung abgebildet? Kann man als Diode D1 am MC34063 eine Standarddiode einsetzen? Schonmal vielen Dank :) Gruss Tobias
PA0=LD0 PA1=LD1 PA2=LD2 PA3=LD3 PA4=UD0 PA5=UD1 PA6=UD2 PA7=UD3 Wenn eine dieser Leitungen verdreht ist, sieht das Bild etwas zerstückelt aus... XSCL=CP2 LP=CP1 FLM=S Die Diode D1 sollte schnell sein, also keine 1N400x usw. sondern eine Fast/Ultra Fast Switching Diode oder nahezu jede beliebige (kleine) Schottky Diode wie BATxx
Hi, @Benedikt: Ich habe jetzt alles so weit laufen (ich meine meine Hardware). Ein Problem habe ich trotzdem noch: Das Display SP10Q003 hat ein Signal M (Switch signal to convert liquid). Ist das das invertierte FLM? Ich habe die Hardware erstmal ohne die Optimierung von 8 Bits auf 4 Bits, d.h. ich habe den 7474 und 74157 nicht in die Schaltung genommen, sondern nur die oberen 4 Datenbits angeschlossen. Momentan versuche ich durch Deinen Code zu steigen (ueber die parallele Schnittstelle). Ganz so ist mit das nicht klar ;-(( Alex
M oder auch AC Drive genannt ist einfach eine Rechteckspannung im Bereich von 50-500Hz (hier am besten so um die 100Hz nehmen) mit exakt (und ich meine wirklich exakt) 50% Tastverhältnis. Entweder schreibst du den PWM Ausgang für die Kontrastregelung auf den CTC Modus mit Toogle Pin at TC um, damit an dem Pin eine entsprechende Frequenz ausgegeben wird, oder du nimmt einem 4060 und benutzt einen der Teilerausgänge, denn hier hat man immer genau 50% Tastverhältnis. Die Software ist ziemlich stark kaputt optimiert, vor allem da von UART mit 9bit auf parallel mit 9bit (LPT), von parallel auf UART mit 8bit (FT232) und von UART mit 8bit auf parallel mit 8bit (FT245) umgestellt wurde... Wenn du den Code nicht verstehst, beschreib mal genau die Stelle an der es hängt.
@Benedikt: Danke fuer die Infos. Es ist lange her, dass ich Assembler gemacht habe, d.h. ich brauche auch etwas laenger um wieder reinzukommen. Ich werde mich dann melden. Danke. Alex
@Benedikt: Zuerst Gratualtion zu diesem Projekt und der Umsetzung!!! Und hier schon meine Fragen: ist es möglich den Source von lcdcon_ft245.asm so zu ändern um damit ein 640*400 Pixel Display ansteuern zu können? Und kann man lcdhype auch an 640*400 anpassen? mfg Michi
Zu beiden Fragen: Ja. Beim uC Code braucht man ganz am Anfang bei den Definitionen nur die Zeilenanzahl von 240 auf 200 zu reduzieren.
Endlich kam ich mal dazu, das zu machen, was ich schon von Anfang an vor hatte: Ein 640x480 Farb LCD anzusteuern. Die Schaltung ist etwas aufwendiger (insgesamt 2x 64kB SRAM notwendig), und die Ladezeiten für die Bilder sind etwas höher, aber es funktioniert...
hehe cool Aber ich werd jetzt erst mal die OLEDs testen, mal schaun, was die so draufhaben :)
Hi, kennt jemand eine website, wo mal displays güstigst erstehen kann??? mich persönlich interessieren die farbdisplays extrem, sieht halt besser aus, wenn man die lastanzeige des servers farbig gestallten kann... und welche displays funzen allgemein an der ansteuerung??? gruß Björn
Hallo, ich wollte mal fragen wo man schnelle RAM-Bausteine für die Schaltung herbekommt. Reichelt hat nur 70ns Bausteine im Programm und Benedikt schrieb am 3.3. dass es mit 55ns schon eng würde. Hat jemand eine Bezugsquelle oder klappt es auch mit den 70ns-Bausteinen. Und wenn möglich sollte es nur ein Baustein sein, also >=64kB. Für eine Info wäre ich dankbar. mfg. Joachim
@Hauke Radtki Falls wir die OLEDs jemals bekommen... Verdammt billig sind die auf jedenfall. Ich kenne Preise von anderen OLEDs, und die liegen deutlich über den normalen Ladenpreisen von LCDs (und ich meine nicht jetzt die von Ebay und Co). Ich bin gerade mal am Anfragen, ob LCDHype auch Farbdisplays unterstützt. @Björn Cremer Alte (486er, P1) Notebooks oder Ebay. Aber erst Datenblatt suchen, dann kaufen... @Joachim Reiter Getestet habe ich den Controller mit 25ns RAMs und HCMOS ICs. Verwendet man ACMOS fürs Latch und den HC02, dann kann das RAM etwas langsamer sein. Wenn man Waitstates einfügt, dann sollte auch ein 70ns RAM funktionieren. Ich werde das alles nochmal genau durchrechnen, aber sollte gehen.
So, hab das SRAM Timing mal durchgerechnet: Bei 18,432MHz ohne Waitstate muss das SRAM eine Zugriffszeit von maximal 35ns haben. Die Zeit zwischen OE\ auf Low bis zu den gültigen Daten muss bei 0ns liegen (aber auch wenn das SRAM 10ns hat, funktioniert es normalerweise noch, die Angaben sind eben alle Worst Case und theoretisch). Wenn die Leitungskapazitäten der RD\ und WR\ Leitungen klein sein, dann sollte es keine Probleme geben. Mit einem Waitstate muss das SRAM schneller als 90ns sein, die OE\ Low bis gültige Daten Zeit muss bei <55ns liegen. Das sollte eigentlich jedes normale 70ns SRAM schaffen.
Hmmm, das heisst, wenn ich ohne Waitstates arbeiten will, muss ich sehen dass ich alte PC-Boards mit Cache-RAM finde und ausschlachte. Oder gibts die irgendwo noch zu humanen Preisen zu kaufen? Ansonsten werde ich mir wohl bei Segor ein 128k 55ns-RAM besorgen. Dann bin ich auch für die Farbversion gerüstet. Bei meinen guten Verbindungen zu Murphy wird das bei 70ns bei mir eh nix :-). Danke schonmal für die Info, wenns dann nicht klappt hab ich wenigstens jemandem über den ich fluchen kann bis ich meinen Fehler gefunden habe ;-). mfg. Joachim
>Ansonsten werde ich mir wohl bei Segor ein 128k 55ns-RAM besorgen. >Dann bin ich auch für die Farbversion gerüstet. Leider nein. Die Schaltung der Farbversion ist leicht anderst aufgebaut, da ein Farb LCD mit 640x480 nicht 2x 4bit sondern 2x8bit braucht. Das müsste dann schon ein 64kx16bit SRAM sein. Falls nur 32kB SRAMs vorhanden sind, kann man zwei Stück aufeinander löten, nur der CE\ Pin wird bei beiden getrennt angeschlossen. Das erspart viele Lötarbeiten. Bis die Farb Version fertig ist, wird es noch eine Weile dauern. Auch die Ladezeiten sind etwas höher als bei der SW Version, da immerhin die 3 fache Datenmenge benötigt wird. Außerdem ist der Controller stärker ausgelastet, da mehr Daten zum LCD übertragen werden müssen (rund 7MByte/s) In meinem Testaufbau befinden sich im Moment 512kByte RAM, damit sind theoretisch 4096 Farben möglich, aber das schafft ein AVR nicht, daher lasse ich das Display im nur mit 64 Farben laufen. Ist aber nur eine Spielerei und nicht praxistauglich. Die fertige Version wird nur 8 Farben haben.
@Benedikt: Was für ein Farbdisplay ist das genau, das Du angesteuert hast und wo hast Du das gekauft? Gruß Michael
Das LCD ist ein LM-CA22-NSK "Gekauft" habe ich es aus einem 486er Notebook... Theoretisch sind aber alle passiven (kein TFT) Farb LCDs mit 640x480 kompatibel. Ein Datenblatt zu dem Ding habe ich nicht, nur die Anschlussbelegung und die Spannunsgwandlerplatine, aber das reicht auch aus.
Gestern Abend habe ich mir Zeit genommen und meinen ersten Entwurf des Farb LCD Controllers (mit 4x32kB SRAM) aufgebaut. So kurz nach Mitternach war ich dann endlich fertig. Ein 16bit SRAM würde eine Menge Adressleitungen sparen. Bisher erste Messergebnisse: Bei 60Hz Displayfrequenz benötigt die Ausgabe etwa 75% Rechenleistung (im Vergleich dazu waren es etwa 55% bei dem SW LCD). Die Schaltung ist noch nicht entgültig, und soll nur zeigen, dass die Ansteuerung um einiges aufwendiger ist als bei einem SW LCD.
Also nur mal als tip. Bei Conrad haben die 15ms SRAMs.
Der Farb LCD Controller funktioniert besser als ich gedacht hätte (ich hatte nur einen kleinen Fehler im Schaltplan). In den nächsten Tagen werde ich dann die erste Testversion des Schaltplans und der Software fertig haben. PS: Hat jemand ein komplettes Datenblatt eines 640x480 passiven Farb LCDs (kein TFT) ? Vor allem das Ansteuertiming ist wichtig. Mein LCD scheint ein ziemlich langsames Timing zu benötigen, damit es läuft. Leider habe ich kein einziges wirklich brauchbares Datenblatt zu einem 640x480 Farb LCD.
Ich hab auch noch nen Display aus nem alten laptop ... nur leider find ich wirklich nichts mehr als irgendwelche Firmen, die die dinger verscheuern (second hand) und ich hab auch keine belegung dazu :( aber ich bin mir nich ma sihcer obs passiv ist.
> PS: Hat jemand ein komplettes Datenblatt eines 640x480 passiven Farb > LCDs (kein TFT) ? Vor allem das Ansteuertiming ist wichtig. Hier gibt's ein Datenblatt des LM64C12 von Sharp, 640x480 passiv RGB: http://www.woe.onlinehome.de/lcddata.htm Gruß Michael
@ Michael Danke. Da finden sich ja einige Daten. Mein LCD scheint also wirklich ein Exot zu sein: Das LP (=CP1) Signal muss bei diesem mindestens 1000ns breit sein damit überhaupt ein Bild kommt, bei allen anderen die ich kenne reichen 100-300ns.
Hat einer von euch mal einen Tipp welches Ebay Schläpptop sich eignet.
@Benedikt, danke für deine Info bezüglich 640x400!! Ich habe mir mal ein Print gefräst und bestückt(passend zu lcdcon_ft245.asm) und dein Assemblerfile kompiliert und hinein gespielt. Dabei ist mir aufgefallen dass .equ YScan= YMin+YSize+YOScan zu einem Zeitpunkt definiert wird an dem Ymin noch nicht bekannt ist. Meine Tool Chain hat das gar nicht gerne!! Nun gut das habe ich umgestellt damit es passt. Danach stimmt aber die Framerate nicht mehr. Zumindestens flackert das Display und das sollte bei 60HZ nicht mehr sein. - Als SRAM verwende ich ein W24512AK-15 leider habe ich aber kein 74AC02 sondern nur ein 74LS02 bekommen, kann es sein das es zu langasm ist denn am Display tauchen hin und wieder einzelen Punkte auf? - Hättest du die Möglichkeit den LCD Hype Treiber auch auf 640x400 anzupassen oder ist der Aufwand zu hoch? - kannst du bitte ein Bild von dem Startup Logo posten (beim mir sieht das (c) by Benedikt verstümmelt aus als ob Teile davon um 1 Pixel nach oben verschoben sind) lg Michi
Das mit dem YScan ist mir auch aufgefallen, als ich die Software aufs Farb LCD umgeschrieben habe. Komisch, dass der Assembler da nicht gemeckert hat. Hier die Werte für 640x400: .equ XSize =160 ;Bildgröße in X Richtung in Nibbles .equ YSize =200 ;Bildgröße in Y Richtung pro Halbbild .equ XOScan =0 ;Anzahl der zusätzlich auszugebenden Nibbles in X Richtung .equ YOScan =2 ;Anzahl der zusätzlich auszugebenden Zielen in Y Richtung (muss >=2 sein, sonst geht z.B. das Pollin LCD kaputt !) .equ XMax =250 ;Maximale Speicheradresse in XRichtung .equ YMin =4 ;Minimale Speicheradresse in Y Richtung .equ YMax =YMin+YSize ;Maximale Speicheradresse in Y Richtung .equ YScan =YMin+YSize+YOScan ;Endadresse bei der Bildausgabe in Y Richtung Den W24512 benutze ich auch, zusammen mit 74HC02 und 74HC573. Läuft problemlos. Wenn das Logo zerstückelt ist, Teile doppelt sind oder fehlen, dann sind Daten/Adressleitungen vertauscht oder kurzgeschlossen. Den LCDHype Treiber werde ich umschreiben.
@Michi Was brauchst du für eine Version des LCDHype Treibers ? FT232 oder FT245 ?
@Benedikt danke für deine rasche Antwort ich habs mit dem FT245 aufgebaut. Mir ist soeben aufgefallen dass das Startuplogo in der zweite Hälfte also 201-400 nichts abbildet (wenn YPos=190 sehe ich nur den obersten Tei der Grafik bei YPos=90 sehe ich alles). 1-200 geht Problemlos (Pins LD0-LD3 auf +5V gehängt untere Displayhälfte wird angesteuert also am Display liegt es mal nicht) Beim SRAm habe ich CS1/ auf Masse und CS2 auf +5V gehängt das sollte doch laut Datenblatt ok sein. mfg Michi
Hier der LCDHype Treiber für 640x480. Es ist merkwürdig, wenn die obere Displayhälfte funktioniert, nicht aber die untere, da ja beide Daten aus demselben Speicher kommen. Ich habe das Programm nochmal durchgeschaut, aber eigentlich nichts gefunden das für ein 640x400 LCD außer dem YSize geändert werden müsste.
@Benedikt Danke für den LCDHype Treiber!!!!!!!! Ich habe mir mal den code von lcdcon_ft245.asm durchgesehen und wenn ich alles richtig verstanden habe ist es gar nicht möglich das Startuplogo in der unteren Bildschirmhälfte anzuzeigen oder habe ich etwas nicht korrekt verstanden!!! Den Fehler warum das Logo bei mir verstümmelt war habe ich gefunden! Da ich den Print Doppelseitig gefräst habe mußte ich Durchkontaktierungen machen dummer weise habe ich eine bei A8 vom SRAM übersehen (na ja kann mal passieren, sollte aber nicht). Nun sieht alles perfekt aus. Leider habe ich das mit LCDHype noch nicht hinbekommen. welche Windowsporteinstellungen benötigt die Serielle (bei mir COM5). Das Skript habe ich auf 640x200 angepasst. mfg Michi
>wenn ich alles richtig verstanden habe ist es gar nicht möglich das
Startuplogo in der unteren Bildschirmhälfte anzuzeigen
Wiso sollte das nicht möglich sein ?
(Es kann auch gut sein, dass ich meine eigene Software nicht mehr
verstehe, daher beschreib das bitte mal.)
Eigentlich braucht man in Windows nichts zu verstellen.
Passiert den irgendwas auf dem LCD, wenn LCDHype läuft ?
Erscheint das Bild korrekt in der Vorschau von LCD Hype (in der
Titelleiste das Symbol rechts neben dem Fragezeichen) ?
Öffne mal den COM Port mit irgendeinem anderen Programm. Das sollte
gehen. Schließe ihn dann, starte LCDHype und öffne den COM Port erneut.
Jetzt sollte ein Fehler kommen.
Hallo Tolle Beiträge!! Ev. kann mir jemand helfen?? Habe ein Sharp lm64p701 finde aber keine Pinbelegung im WEB und dabei war eine Beschreibung vom lm64p70( hier ist nur von 14 Pin's die Rede ich habe am LCD aber 20 Pin's) Danke Mario
Einige werden beim nachbauen der Schaltung warscheinlich auf das Problem stoßen, dass der Spannungswandler nicht die gewünschten -20V liefert, bzw. das nur mit einem sehr schlechten Wirkungsgrad macht. Der Fehler liegt fast immer in der Wahl der Spule. Leider gibt es bei Reichelt, Conrad usw. keine passenden Spulen. Wenn man die Werte für den MC34063 nachrechnet (und auch die ganzen Verluste am Schalttransistor, Spule, Diode usw. berücksichtigt), dann kommt man schnell auf ein ton/(ton + toff) Verhältnis von >0,8. Laut Datenblatt darf der Wert bei max. 0,857 liegen. Um -20V aus 5V zu erzeugen, muss das IC daher ziemlich an der Grenze des möglichen arbeiten, weshalb die Bauteile nicht unkritisch sind. Der Wert der Spule sollte zwischen 330uH und 1mH liegen, der Widerstand sollte nicht größer als 1 Ohm sein. Damit fallen schonmal die meisten Spulen weg, und es bleiben nur wenige übrig. Der Aufdruck für 330uH lautet 331, der für 1mH 102. Hier mal ein paar Spulen: 1 und 4: Meist als LC Tiefpass Filter einem Schaltnetzteil nachgeschaltet. Wenn entsprechende Induktivitätswerte verfügbar sind, können diese geeignet sein. 2: Meist in Schwingkreisen oder auch als Filter für Schaltnetzteile verwendet. Wenn die Induktivität und der Widerstand passen, ist das eine gute Wahl. 3 "Stehende Festinduktivität" von Reichelt. Getestet habe ich 330uH, 470uH und 1mH. Der Wirkungsgrad ist schlechter als bei Spule 4 mit 330uH. Die 1mH Version hat einen viel zu hohen Widerstand, weshalb nur die 330uH Spule übrig bleibt. Diese Spule nur zur Not verwenden, wenn sonst wirklich nichts da ist. 5: Miniatur Festinduktivitäten: Vergesst die Idee sofort wieder. Die Spulen sind zwar klein und billig, aber das waren auch schon die Vorteile. Für Spannungswandler höchsten bis -5V (z.B. 128x64 LCDs) einsetzbar.
@Benedikt sorry!!!!! ich wollte dir nicht zu nahe treten. Leider habe ich nicht viel Erfahrung mit dem ATMega Befehlssatz: Ich schreibe mal wie ich das verstehe: ;**************Hier wird das Logo geladen ldi ZL, low(2*BMP) ldi ZH, high(2*BMP) clr Flags ldi r22, 48 ;Logo laden (Größe 240*48 = 30*48Bytes) ldi XH, ZStart+YPos-1 ;**************und ab hier in einer Schleife ins SRAM geschrieben YLoop: ldi r23, 30 ldi XL, XPos/4 inc XH XLoop: lpm temp, Z+ ;**************Writebyte übernimmt das schreiben ins SRAM und ob die Pixel oben oder unten stehen entscheidet doch das Flag ZeileH das bleibt hier aber immer gelöscht rcall Writebyte dec r23 brne XLoop dec r22 brne YLoop Füge ich vor rcall Writebyte, sbr Flags, (1<<ZeileH) ein wird das Bild wie erwartet in der unteren Bildschirmhälfte angezeigt. LCDHype bringt leider nur wirre Muster auf das Display die sich ca. alle Sekunden von oben nach unten etwas anders aufbauen. Dürfte ich dir mein Projekt zusenden eventuell habe ich einen Fehler im Schaltplan mfG Michi
>sorry!!!!! ich wollte dir nicht zu nahe treten.
Bist du auch nicht, daher schrieb ich ja, du sollst das etwas genauer
erklären, denn mein Code ist mittlerweile so unübersichtlich geworden,
dass ich selbst auf meine Kommentare angewiesen bin.
Und natürlich hast du auch gleich noch einen Fehler in meinem Programm
gefunden. Mist.
Die Routine zum Logo laden ist leicht vereinfacht, und berücksichtigt
nicht den Übergang von oberer auf untere Bildhälfte.
Daher sollte man das Logo so platzieren, dass es nicht genau in der
Mitte ist.
>Daher sollte man das Logo so platzieren, dass es nicht genau in der
Mitte ist.
besser nur in der oberen Hälfte (YPos<=Ysize-LYSize) ;-)
So da die Displayansteuerung jetzt zu funktionieren scheint muß ich nur
noch den Fehler beim FT245 finden. Wenn ich das richtig verstehe muß ich
über die serielle nur dezimal 14 und dezimal 11 senden dann sollte dein
Program das Display löschen. Oder habe ich das Protokoll falsch
verstanden?
mfG
Michi
Mit 14, 11 sollte das LCD gelöscht werden: 14 ist der Escape Code der den Beginn eines Befehls einleitet, und 11 löscht das LCD dann.
So nun geht bei mir auch alles. War ein timing Problem mit dem FT245BM nach dem ich noch ein NOP in die Write Funktion eingefügt habe funktionierte alles auf anhieb :-) Write: cbi portd, RD ;Byte lesen nop nop ;zusätliches warten danke für deine Unterstützung und Geduld!!!!!!! mfG Michi
Es freud mich, dass es geht. Das ist die erste Rückmeldung, von jemandem der die Schaltung nachgebaut hat. Das zusätzliche nop werde ich gleich mal einfügen. Ich habe leider noch keinen FT245, sondern habe es nur mit einem FT232 + AVR der einen FT245 emuliert ausprobiert. Laut Datenblatt hätte vom Timing her ein nop ausreichen müssen, aber ein zusätzliches nop beeinflusst die Geschwindigkeit kaum, daher stört ein weiterer Takt auch nicht, solange es hilft die Stabilität derr Software zu verbessern.
ich werde mein eagle file noch etwas nachfeilen und dann morgen posten mfg michi
Hier mal die bereinigte Version für FT245: - Ein weiteres nop wurde eingefügt, damit es keine Timingprobleme mit dem FT245 mehr gibt. - Beim Laden des Logos wurde ein Überlauf über die Bildhälfte berücksichtigt. Das Logo kann jetzt überall positioniert werden und wird korrekt dargestellt. Demnächst stelle ich hier noch ein Programm rein, das aus einer BMP Datei die Hex Daten für das Logo erzeugt, damit jeder sein eigenes Startlogo einbauen kann.
Wie versprochen hier die Eaglefiles und Datenblätter. Nochmals Danke an Benedikt!!!! mfG Michi
hoppala.. Dateianhang war größer als 1MB aber jetzt sollte es funktionieren
mir ist ein kleines hoppala passiert. Die Spule L1 muß 470µH haben sonst wird der TL497 ausserhalb seiner Spec betrieben 100µH hatte ich da und deshalb habe ich den Wert dummer weise in die Eaglefiles eingetragen und dann auch noch falsch im Textfile erklärt. panik :-( Also bitte berücksichtigen 470µH für L1 oder hier AVR_LCDv2.zip runterladen. mfg michi
Eine kleine Frage hätte ich mal wegen der Erzeugung der negativen Hilfsspannung. Ich habe hier noch DC/DC-Wandler von Reichelt mit 5V bzw. 12V auf 24V liegen. Da die Ausgänge imho galvanisch getrennt sind, müssten sich die doch einsetzen lassen und würden das Layout erheblich vereinfachen mit Ihren 4 Pins. Und mit 5,10Euronen sind die ja nicht allzu teuer. mfg. Joachim
Das sollte funktionieren. Ich habe ein LCD-Display mit T6963C Controller, welches ca. -15V Kontrastspannung braucht. Dafür hab ich 2 DC-Wandler 5V -> 9V, welche auf alten BNC-Netzwerkkarten zu finden sind in reihe geschaltet. So hab ich 18V, + an Masse geklemmt und fertig waren -18V Gruß David
wenn man nur 100µH für L1 hat, kann man den C13 820pF groß machen dann passt wieder alles. Natürlich kann man alle benötigten Spannungen mit galvanisch getrennten Reglern realisieren. (hatte ich nur leider nicht! wodurch das Layout wirklich nicht vereinfacht wurde). mfG Gerald
Hallo... @Benedikt: Jetzt bin ich so weit, und brauche Hilfe. Ich habe jetzt ein bischen rumgebastelt und komme nicht zum Ziehl. Angehaengt habe ich meine Datei. Geaendert habe ich nur im Prinzip die DataOut-"Routine". Koenntest Du Dir das mal anschauen? Alle anderen natuerlich auch. Mein Display ist das SP10Q003. Das Datenblatt ist weiter oben angehaengt. Ich habe die oberen 4 Datenbits des RAMs an die DatenLeitung des Displays angeschlossen, deswegen wird "nur" 60* gelesen. Danke Alex
Hallo zusammen, ich habe ein echtes Problem die richtigen Spulen zu bekommen. Wer liefert den sowas ? Reichelt hat nur die Spulen mit 1,2 Ohm Widerstand. Danke uk PS. Ist der Tl947 die bessere Wahl ?
>Ist der Tl947 die bessere Wahl ?
Vermutlich ja, der soll nicht so kritisch bei der Wahl der Spule sein
(kleiner Spulen möglich -> niedrigerer Widerstand)
>Ist der Tl947 die bessere Wahl ? ich schließe mich Benedikts Meinung absolut an der TL497 ist wirklich nur eine Notlösung da ich nichts anderes hatte. Das Ding hat auch, in dieser Konfiguration, einen sehr bescheidenen Wirkungsgrad und dient hier schon fast als Heizung. Die Idee von Granate2000 (etwas weiter oben) ist wohl die beste wenn man zwei alte Netzwerkkarten hat. Mein Display benötigt zwar laut Datenblatt -22.5V aber es geht auch mit -18V wenn man die Kontrastspannung anpasst. mfg Michi
@Alex1 Ich habe mal versucht deine Änderungen nachzuvollziehen, bin aber nicht besonders weit gekommen. So wie du die Datenausgabe umgeschrieben hast, sieht es aber nicht so aus, als wenn die funktionieren würde. Wie hast du den Speicher angeordnet ? Packst du 2 LCD Zeilen in ein 256Byte RAM Zeile ? Welche Bedeutung haben folgende Variablen ? .def L_COL = r21 .def H_COL = r22 .def COL = r23 .def TmpCount = r24
@Benedikt: Der Speicher kann ruhig linear hintereinander lieden, d.h. ich dachte mir das so, dass die ersten 60 Bytes eine Spalte sind (immer die oberen 4 Bits), direkt danach liegen dann die naechsten 60 Bytes (Spalte 2), usw.. - L_COL soll das lower byte der Spaltenanzahl sein. - H_COL das higher. - COL ist eine temp variable, die dazu benutzt wird, eine "1" auf L_COL zu addieren. Nach dieser Addition wird COL= 0 und danach ein adc H_COL, COL gemacht. Das haette die auswirkung, dass wenn nach einer Addition von L_COL mit "1" ein Carry gesetzt wird, dieser Uebertrag nach H_COL geht. Somit ensteht ein "16 bit register". Wenn das ganze jetzt den Wert 320 erreicht hat, wird alles wieder zurueckgesetzt (inc. Addressen) und es kann ein neuer Bildschirmaufbau beginnen. - TmpCount dient nur dazu, bis 60 zu zaehlen um dann das Load Signal zu generieren. Alex
@Alex1 Möchtest du die LPT Version, oder die FT245 Version ? Dann schreibe ich eine von den beiden neueren Versionen um, denn die besitzen Scrolling was sich bei diesem Display auch lohnt (4 Bilder nbeneinander darstellbar).
Hallo... @Benedikt: ich brauche eigentlich die LPT Version. Die Andere wuerde ich versuchen selbst zu durchschauen. Ich weiss auch nicht wie aktuell die oben angehaengten Versionen sind. Ich habe noch ein anderes Display. Ich wollte auch noch die aktuellen Versionen der 8 Bit Loesungen (lpt und ft). Koenntest Du mir diese auch zusenden? alexander(dot)hordt(at)arcor(dot)de Danke. PS: Ich habe gestern auch noch ein bischen herumgebastelt. habe die routine wieder komplett umgeschrieben, da ich gemerkt hatte, dass einiges nicht stimmte. Irgendwie werde ich das Gefuehl nicht los, dass das alles viel schneller gehen muss. Korrigiere mich wenn ich falsch liege: wenn mann 26 µs als Zeile annimmt-> 26µs/60 ein Takt (4 Bit). Das waeren dann etwa 2,3 MHz. Hat man jetzt fuer die ganze Ausgabe nur etwa 8 Zyklen? Oder wie rechnet man? Alex
Ich schreibe gerade die FT245 Version (da dies die aktuellste ist, bei der ich alles allgemein gehalten habe mit Angabe der ganzen Parameter wie Auflösung am Anfang des Programms mit .equ) auf 4bit um, um ein singlescan LCD mit bis zu 1000x250 Pixeln ansteuern zu können. Dazu passe ich gerade meine Hardware an. Irgendwann heute Nachmittag wird diese Version dann fertig sein. Dann werde ich diese noch auf dein eigenartiges LCD anpassen, indem ich jede Spalte in der Mitte teile um LCDs mit bis zu 500x500 Pixeln ansteuern zu können. Wenn die bei dir läuft, kann ich auch noch die LPT Version schreiben. Zum Timing: Sagen wir mal du möchtest das LCD mit 75Hz ansteuern (so wie es auch im Datenblatt empfohlen wird), dann müssen 75*322=24150 Zeilen/s übertragen werden. Das macht 41,4us pro Zeile. Pro Zeile müssen 60-64Nibbles übertragen werden. Das macht insgesamt etwa 1,5MHz. Möglich sind rund 4MHz bei >16Mhz Taktfrequenz.
Hier ist die erste Version für Singlescan LCDs. Mit meinem 320x240 LCD lief die wunderbar.
Hier die Schaltung dafür. Es wird immer abwechselnd das High/Low Nibble ausgegeben, was die ganze Datenübertragung vereinfacht, da man die 8bit Werte nun einfach so ins SRAM schreiben kann. In der Schaltung ist der Anschluss eines 32kB SRAMs gezeigt. Bei einem 64kB SRAM wird A7 (Q8 des 74x573) zusätzlich noch angeschlossen. Theoretisch lassen sich problemlos 25fps erreichen, wenn der FT245 das mitmacht. Außerdem könnte man auch Graustufen einbauen, da nun genügend Speicher zur Verfügung steht.
Der Graustufenmodus war einfacher als ich dachte. Per Befehl kann man zwischen SW mit einer virtuellen Bildgröße von 1000*250 Pixeln auf 4 Graustufen mit einer virtuellen Bildgröße von 500*250 Pixeln umschalten. Die beiden Helligkeitsstufen müssen wie beim SED1330 in zwei getrennte Adressbereiche geladen werden. Es ist eben nur ein nettes Zusatzfeature...
@Alex1 Hier gibt es mal die 240x320 Version (allerdings mit FT245 Interface) für dich. Das ganze ist im Prinzip die Graustufenversion (bei der zwei Bilder abwechselnd dargestellt werden) so umgebaut, dass die beiden Bilder aneinander hängen, so dass sich 500x500 Pixel darstellen lassen. Leider konnte ich das nicht wirklich testen, bei meinem 320x240 LCD kommt ein Bild mit schlechtem Kontrast, und die Frequenz passen auch, so dass es eigentlich funktionieren müsste.
Hallo Benedikt, Danke. Wird den beim Start ohne etwas am ft245 dran etwas angezeigt? das Logo? Wenn nicht, dann muss ich mir erstmal einen ft245 besorgen. Bis heute abend Alex
Ja, das Logo sollte erscheinen. Ich werde zukünftig nur noch die FT245 Versionen aktualisieren, da alles andere zu viel Arbeit macht. Mit einem 74HC574 und einem 74HC74 kann man diese Version aber auch für den LPT auslegen. Der HC574 dient dann zusammen mit dem HC74 als 1 Byte FIFO Puffer.
Hallo... @Benedikt: Nein, bei mit macht es nichts ;-(( Ich habe in Prinzip diese Schaltung aufgebaut: http://www.mikrocontroller.net/attachment.php/160855/LCD.gif ausser, dass bei mir an PORTB der Parallele Port dran ist und anstatt dem 7432 ein 7402 drin ist. Die Daten sind bei mir nur LD0-3. Ich habe die anpassungen mit den signalen in der Software vorgenommen und M definiert. aber ich sehe nur die erste oder zweite (bin mir nicht ganz sicher) Spalte. Alex
Macht es nichts, oder siehst du nur die erste Spalte ? Wenn du nur die erste Spalte siehst ist alles OK, denn die 4bit Version benötigt noch den Nibble Multiplexer wie hier: http://www.mikrocontroller.net/attachment.php/227763/schaltung.gif
Versuchs mal damit. Getestet habe ich es nicht, es müsste aber funktionieren. Das müsste jetzt auch mit deiner Schaltung funktionieren, denn es werden nur D0-D3 des SRAMs verwendet.
Hallo Benedikt, es funktioniert noch nicht :-((. Jetzt wird scheinbar alles geschrieben, ausser 2 Spalten.Koennten die um die 60 herum liegen. Dabei "knattert" das Display und wenn dieses "knattern" weg ist, ist das "M" signal weg. Diese Zwei Spalten werden nicht komplett "nicht beschrieben" sondern ueber eine Zeile. Alex
Ach so! Bei mir sind es "natuerlich"(hatte mich vertan) die oberen 4 Bits. Sorry. Alex
hi benedikt, in diesem thread hab ich gemerkt, dass du ziemlich viel ahnung in der ansteurung von lcds hast. ich habe hier ein solches liegen, das keinen controller on board hat und 240x64 pixel besitzt. es handelt sich um das DMF-633 von Optrex. Ich würde gerne testen, ob es noch funktioniert und es deshalb an meinen atmega8 anschließen möchte. jetzt meine bitte: es wäre total nett, wenn du ein kurzes prog schreiben könntest in dem beispielsweise ein pixel oder eine linie gesetzt wird. datenblatt des displays befindet sich im anhang. achja: es wurde früher von einem hd61830 getrieben. falls dieser beitrag zu OT is, bitte per mail antworten. VIELEN DANK, schwerminator
Ja, kann ich machen. Ich habe deinen anderen Thread auch schon gesehen, und auch deine Probleme mit LCDHype... Die einfachste Lösung um das LCD anzusteuern, wäre vermutlich ein T6963. Das LCD ist ein etwas merkwürdiges Dualscan Display, was bei einer so kleine Auflösung eigentlich eher unüblich ist
das ist ja wohl extrem nett, danke!!! kannst du was mit dem datenblatt anfangen?
@schwerminator Probier das Programm mal aus, es sollte eigentlich funktionieren (auch wenn ich es nicht getestete habe). Starte das Programm, leg dann erst die negative LCD Spannung an. Abschalten umgekehrt: Erst negative Spannung abschalten, dann 5V. Normalerweise sollte dann ein feines Schachbrettmuster erscheinen.
@Udo Kühnemund Läuft der Spannunsgwandler jetzt schon ? Ich habe hier nochmal eine von mir mehrfach verwendete Schaltung angehängt, die mit Bauteilen von Reichelt auskommt. Die Schaltung ist nicht die beste (der Wirkungsgrad liegt bei etwa 40-60%)), aber es geht. Wenn die Schaltung genauso nachgebaut wird, dann muss sie funktionieren. PS: Die Schaltung niemals ohne uC oder zumindest an Masse gelegten PWM Eingang verwenden, sonst raucht es !
@benedikt: danke! aber ich hab meine testplatine mit 4MHz laufen, was muss ich dann ändern?
@schwerminator Ändern kann man da nicht viel. OK, das Timing ist etwas übertrieben langsam, aber viel schneller kann man da nichts hinbekommen (außer man macht alles in Assembler.) Es sollte aber auch mit 4MHz laufen, dann flimmert es eben etwas.
Siehst du oben und unten jeweils abwechseln ein Pixel an/aus ?
jo es ist nach folgendem schema: 101010101010 010101010101 101010101010 usw.
Gut so, da habe ich ja richtig programmiert. Wie willst du das LCD eigentlich ansteuern ? Was war doch irgendein HDxxxx Controller, oder ? Wiso nimmst du nicht einen T6963 ?
es war der hd61830. ich habe keinen T6963 habe und weiß auch nicht, wo man sie bekommen kann.
Was ist denn dein momentanes Problem mit dem 61830 ? Gibt es dafür keine Ansteuersoftware, oder geht es einfach nicht ? Wenn du doch einen T6963 brauchst: www.lc-design.de, da solltest du welche bekommen.
ich habe keinen passenden quarzoscillator. der hd61830B hab eine tolleranz von 100kHz-2,4MHz. naja bei der nächsten reichelt bestellung werde ich einen mitbestellen. naja und im internet gibts keine codebeispiele vom hd61830!
Hallo ihr! Ich hab den Thread jetzt erst richtig wahrgenommen, ich kannte das Projekt von Benedikt bisher nur von seiner Website, dachte aber das sei schon eine weile her und wusste gar nicht das der Controller laufend optimiert wird ;-) Ich bin auch gerade dabei einen LCD Controller zu programmieren, bin aber noch längst nicht so weit wie Benedikt. Ich plane einen Controller zu schreiben der mit möglichst vielen verschiedenen LCD's funktioniert und möglist einfach umzuschreiben ist. Hauptsächlich mach ich das aber aus Spaß an der Technik und um mal zu wissen wie denn so ein Display richtig funktioniert. Außerdem kahm ich sehr günstig an 640x400dot Grafik Displays (4,50 Euro das Stück, neu). Schade das ich den Thread nich schon voher gesehen hab sonst hätte ich euch informiert. :-( Da scheinen wohl die zwei Display-Projekte parallel zu laufen ;-) http://svenlissel.sv.funpic.de/phpkit/include.php?path=content/articles.php&contentid=8 http://www.roboternetz.de/phpBB2/viewtopic.php?t=11047 http://www.roboternetz.de/phpBB2/viewtopic.php?t=11564 Gruß, Sven Lissel
@Sven Lissel Erzeugst du die Pixeldaten in Echtzeit während der Ausgabe aus den Textdaten ? Wie sieht dazu dein Timing aus, schafft das der uC überhaupt ? Du musst ja zwei Zeichen gleichzeitig erzeugen, wegen dem Dualscan...
Der Controller ist bis jetzt noch nicht besonderst weit, die Pixel-Ausgabe und der Character Generator funktionieren aber. Allerdings werden bis jetzt nur beim Programmstart die Zeichen generiert und in den Ram geladen und gut ist es. ;-) Bis jetzt läuft auch noch alles über den internen Ram von 2KB. Ein Portlatch für den Externen Ram (32KB, 20ns aus 486er Board :-)) ist schon längst bestellt (vor über einer Woche), aber Reichelt scheint sich da wohl zeit zu lassen ... Sobald dann die Ausgabe über den gesammten Bildschirm funktioniert gehts mit der Datenübertragung weiter. Gruß, Sven
Du hast Glück, dass dein LCD nur 640x480 =32000*8 Pixel hat, so dass du mit einem 32kB SRAM auskommst. Bei 640x480 reicht es leider nicht mehr. Wenn du den Grafikmodus am Laufen hast, kannst du dann deinen Code mal irgendwo posten ? Es würde mich mal interessieren wie andere das Displaytiming, Speicherorganisation, Datenübertragung zum uC usw. lösen...
Hä? Du meinst wohl 640x400. Gelle, da hab ich Glück gehabt ;-) Wo ist das Problem bei 64KB Ram? Der Preis? Bei der Ansteuerung ändert sich doch nicht mehr, oder? Sobald der Grafikmodus funktioniert werd ich meinen Code veröffentlichen. Gruß, Sven
Ja, ich meine 640x400 (ich hätte eben fast schon wieder 480 geschrieben...) Bei 64kB SRAMs ist das Problem, dass es eben fast kein 64kB SRAMs gibt, sondern immer nur 8, 32, 128, 512 usw. Die einzigen SRAMs mit 64kB die ich kenne sind welche aus Pentium Mainboards und die sind nicht allzu häufig. 32kB SRAMs sind viel leichter zu bekommen. Aber man kann zur Not ja 2 32kB SRAMs stapeln um 64KB zu bekommen. Davon abgesehen: Wo bekommt man eigentlich so schnelle SRAM zu guten Preisen ?
Bei Ebay auf alten Mainboards ;-) (teilwiese bis 486er Board in Sockeln) Bei mir waren ganze neun Stück drauf, wie oben geschrieben 32KB, 20ns. :-) Ist mir irgendwie noch gar nicht aufgefallen das es 64KB Sram's kaum gibt. Reichelt hat ja kaum etwas gescheites, entweder zu klein, zu groß oder zu langsam... :-( 80ns sind ja ein Witz, das sind ja schon Simm-Module schneller, das die noch hergestellt werden... Gruß, Sven
Hallo Benedikt, ich wollte mich mal wieder kurz melden (status): Das display funktioniert immer noch nicht. ;-(( Trotzdem Danke. Irgendwie werde ich es doch schaffen ;-(). Alex
@ Hannibal.exe Hallo, du meinst doch sicher ATMEGA 8535 ? oder gibt es nen 8538 wirklich ? Der ATMEGA 8535 hat leider soweit ich weiss keinen externen Adressbuss . Bei Reichelt giebt es den 8515 für 3,45 . grüsse
Hallo Benedikt, ich verzweifle noch mit der Spannungsversorgung. Ich habe deine Schaltung aufgebaut. (Mehrfach kontrolliert) Allerdings erst einmal auf einer eigenen Platine. Ich glaub fast ich mach einen Fehler bei meinen Messungen. Gib mir mal nen Tip wie ich die Funktionsgähigkeit testen kann ohne die Schaltung an den Controler anzuschließen. bis denn uk
@Udo Kühnemund Die einzelne Spannungswandlerschaltung die ich zulest gepostete hatte, hat einen PWM Eingang. Diese aus Masse oder 5V legen. Dann sollten am Ausgang -22V bzw. -17V anliegen. Mess mal die Stromaufnahme des Wandlers ohne Last am Ausgang und die anliegende Ausgangsspannung.
Ich meinte den 8535. Bei pollin wollt ich sowieso bestellen und da hab ich gedacht, ich könnte mir ja das Porto sparen. Aber naja. Reichelt ich komme :-(
@Benedikt, jetzt funzt es. Die Spannung liegt zwischen 18,1 und 23,2 Volt. Jetzt muss ich es nur noch vom Steckboard auf die Platine krigen :-) Danke uk
Ich hab ein S/W Display aus nem alten Laptop, mit folgender Anschlußbelegung, liesse sich das auch mit der Schaltung verwenden oder funktioniert das nur mit den Teilen von Polin? Und wenn ja welche Siganlleitungen am Display ensprechen welchen im Schaltplan??
Das Display sollte der Anschlussbelegung nach funktionieren. Da es aus einem Laptop ist, hat höchst warscheinlich auch 640x480 Pixel.
Hallo.. @Benedikt: DANKE! Jetzt funktioniert auch mein Display. Nachdem ich einen Kurzschluss gefunden habe und auch deswegen meinen Atmega austauschen musste funktioniert mein Display auch. Ich vermute aber, dass ich nicht alles auf dem Display sehe, da da wahrscheinlich "LCD Controller steht..." (dlaube ich), bei mir aber "nur" "LCD Co" steht (im Vergleich zu vorher ist es trotzdem super). Danke. Alex
Überprüf nochmal die Verdrahtung. Auf meinem 320x240 LCD erschien das Logo komplett.
Hallo.. @Benedikt: ich habe mal jetzt den ganzen Thread noch mal durchforstet: Kann das sein, dass von einem 64k SRAM ausgegangen wird? Ich habe naehmlich nur ein 32k drin. Alex
Am besten geht es mit einem 64kB SRAM, ein 32KB SRAM funktioniert aber auch, dazu muss aber die 7. Adressleitung (A6) am uC frei gelassen werden und stattdessen mit A15 verbunden werden.
Hallo Benedikt, ich habe jetzt A6 vom Prozessor frei gelassen (die Datenleitung ist aber noch angeschlossen D6). Ich habe eine Aenderung: Das Logo wird immer noch unvollstaendig, jetzt aber in der Mitte des Displays ausgegeben. Weiter unten (etwa zeile 300) wird eine unterbrochene Linie (pixel an pixel aus) angezeigt, aber auch nur so weit, wie das Display. Hast du noch einen Rat? Ich habe schon alle leitungen durchgemessen aber ohne erfolg ;-((. Was habe ich noch falsch gemacht?! Alex
Hallo Benedikt, ich habe mal jetzt ein bischen mit dem Programm herumgespielt. Jetzt wird das Logo komplett angezeigt, aber unten geht eine Linie (ich schaetze mal Zeile 300, ein Pixel an, ein aus) und unten rechts in der Ecke sind linien nach unten (ich schaetze mal ab Spalte 130). Ich verstehe hier diesen Code nicht richtig: SkipFLM: sbrs Flags, AdresseX cpi AdresseHigh, YMax ;Adresszähler Reset (Sprung in 2. Bildhälfte ?) sbrc Flags, AdresseX cpi AdresseHigh, YScan-(YMax-YMin+1);Adresszähler Reset (Sprung in 1. Bildhälfte ?) brne Mainloop ldi AdresseHigh, YMin-1 ;Adresszähler Reset sbrc Flags, AdresseX rjmp untereha sbr Flags, 1<<AdresseX sbr XStart, 128 sbr XScan, 128 rjmp Mainloop untereha: wdr ;Watchdog Reset cbr Flags, 1<<AdresseX cbr XStart, 128 cbr XScan, 128 sbr Flags, 1<<doFLM ;Markierung für FLM setzen rjmp Mainloop Was sind das fuer feste Werte? Kann das sein, das irgendwie ein display-auschnitt nur angezeigt wird? Danke! Alex
Im Orginalcode verwende ich das Highbyte der 16bit Adresse als Zeilenzähler, und das Lowbyte als Spaltenzähler. Das geht sowohl beim 640x480 als auch beim 320x240 LCD, da diese weniger als 256 Zeilen haben. Bei deinem LCD benötigt man für den Bereich >255 einen zusätzlichen Speicherbereich. Das sind nicht benötigte Spalten, die nach unten "gezogen" werden. Im Bereich Zeile 1-255 wird ab Spaltenadresse 0 wiedergegeben. Im Bereich 256-320 die Zeilenadresse ab 128.
Hallo Benedikt, ich schon wieder: ich habe den Code jetzt wie unten geaendert und es tut's: ;-))) SkipFLM: sbrs Flags, AdresseX cpi AdresseHigh, YMax ;Adresszähler Reset (Sprung in 2. Bildhälfte ?) sbrc Flags, AdresseX cpi AdresseHigh, YScan - (YMax - YMin + 1);Adresszähler Reset (Sprung in 1. Bildhälfte ?) brne Mainloop ldi AdresseHigh, YMin-1 ;Adresszähler Reset sbrc Flags, AdresseX rjmp untereha sbr Flags, 1<<AdresseX sbr XStart, 128 sbr XScan, YScan - 128 - YMin - YOScan rjmp Mainloop untereha: wdr ;Watchdog Reset cbr Flags, 1<<AdresseX cbr XStart, 128 cbr XScan, YMin + YOScan ;128 sbr Flags, 1<<doFLM ;Markierung für FLM setzen rjmp Mainloop Allerdings habe ich noch eine Frage: Der obere Bereich des Bildes ist dunkler als der untere. Ich sage mal "als waeren die pixel zu 1/5 an" oder so. Das ist ab Zeile ~255. Was koennte das denn noch sein? Alex
Hallo ich habe hier ein LC Display von FINLUX EL Typ: MD640,400-52 5/12V Hat jemand eine idee, wie man dieses ansteuern kann oder hat Datenblätter dazu?? Gruss Jens
http://www.quantum.com.pl/pliki/el8358hr.pdf Das sollte zumindest vom Anschluss her kompatibel sein. Aber schlag mich nicht, wenn es nicht stimmt... Ansteuerung per SPI, oder aber an einem normalen VGA (bzw. VESA) Anschluss mit 640x480.
@Alex1 Mich wundert es, dass die alte Version bei dir nicht läuft. Bei mir kommt auf einem 320x240 LCD das komplette Logo. Was mich noch mehr wundert: Dass die geänderte Version überhaupt funktioniert... Denn eigentlich ist die total falsch: Du veränderst (bitweise !!!) die X Grenzen mit Y Werten.
Da die neusten Versionen des LCD Controllers nur für den FT245 ausgelegt sind, kann man den Controller nicht so einfach an einen Datenbus hängen, denn er liest selber Daten. Mit dieser Schaltung kann man den Controller an einem Datenbus, oder auch am LPT betreiben. Das ganze ist im Prinzip ein FIFO mit einer Speicherkapazität von 1 Byte. Alternativ kann man auch jedes andere FIFO verwenden.
Ich habe das display von Sharp http://sharp-world.com/products/device/lin...19T_LC96Y14.pdf Ist es möglich dieses S/W display auch mit deiner Farb-LCD steuerung anzusteuern, damit ich es später gegen ein rgb-lcd austauschen könnte?? MFG NickJag
Mit der 320x240 Version kann man es problemlos ansteuern. Die Farbversion ist noch nicht fertig, und funktioniert etwas anderst als die SW Version, beide sind also nicht kompatibel.
Welche schaltung meinst du denn jetzt genau? es sind mitlerweile sofiele in diesem tread das man schon nicht mehr nach kommt was noch paralel ist und was an ust geschweige für S/W und RGB Ist die S/W version für 320X240 auch mit usb? Gruß NickJag
Die Software für das 320x240 SW LCD benötigt diese Schaltung: http://www.mikrocontroller.net/attachment.php/227763/schaltung.gif Um diese per USB betreiben zu können, benötigt man noch einen FT245.
Hallo Benedikt, Ich habe es so verstanden (ich meine das Programm), dass die fuer 240 Zeilen und 320 spalten sind. Bei mir ist es ja anders herum (320 Zeilen und 240 spalten). Deswegen setze ich auch die X-Werte mit den Y-Werten (Du weisst was ich meine?). Jedenfalls habe ich immer noch das Problem mit dem Kontrast (es scheint so zu sein, dass 240 Spalten mehr Konstast haben, als die restlichen 80). Momentan habe ich noch keine Idee. Du vielleicht???? Ich habe ja noch den gesammten PortB frei (da noch kein FTDI245) und noch 5 Pins. Drei davon sollen noch Kontrollbitts fuer den LPT sein, einer schalten die 26V fuer das Display und der 5te Pin ist die PWM. Was ich brauche ist aber noch folgendes: 1. AC-Drive -> werde ich wohl mit einem NE555 machen 2. PWM fuer Konstast -> passt 3. Display ON/Off -> noch nichts 4. 3 Pins fuer Kontrollbits fuer LPT. Eine Address - Leitung ist noch frei Ich brauche noch einen demuxer (oder so etwas), vielleicht auch ein adressierbares Latch, damit ich noch das Display ON/OFF schalten koennte. Ich habe dafuer noch keine Loesung. Hmmm...??? Ich wollte noch schauen, ob man die Adressleitung noch missbrauchen kann.....??????? Alex
achso: hab noch etwas vergessen: dieses Latch, dass ich noch brauche, muss so klein wie moeglich sein (am liebsten ein 8-Beiner. Ich werde wahrscheinlich meinen 7402 wegoptimieren. Da wird ja bei mir ein XSCL Enable Pin benutzt. Da faellt mir gerade ein, dass das nicht geht, da der Empfang sollte in den Interrupt verlegt werden (oder vielleicht in der Art), dann muss ich das XSCL Enable drin lassen.;-(( Was machen? Hmmm...!? Alex
Also bräuchte ich hinter den datenbus nur den ft245 hängen und eeprom, elko's usw??? Und wie sieht das denn mit dem treiber und die software aus, kann ich da was dan ändern???
@NickJag: am 25.08.2005 13:56 hat Michi ein zip-File reingehaengt. Da ist alles drin (so weit ich weiss). Oder?? Alex
@Alex1 Auch wenn dein veränderter Code läuft, dann ist das reiner Zufall, versuch nochmal den orginalen Code. Spätestens wenn du damit versuchst was sinnvolles anzuzeigen wird nur Müll rauskommen. Hast du die Schaltung mit dem HC74 und HC157 aufgebaut ? Mit der erscheint auf meinem 320x240 LCD das Logo komplett etwas nach links gerückt (da ja nur 240 Spalten übertragen werden) und der Kontrast ist niedriger (da mehr Zeilen übertragen werden, jede also kürzer an ist). Daher sollte bei deinem 240x320 LCD das Logo zumindest mal komplett und oberhalb der Mitte erscheinen. Zu den Pins: AC-Drive -> Nimm den PWM Ausgang und stell ihn in der Software auf M um. Ein 555 hat kein ausreichent genaues Tastverhältnis -> LCD geht kaputt. PWM -> Nimm ein Poti zur Kontrasteinstellung Display ON/Off -> PE0 3 Pins fuer Kontrollbits fuer LPT -> Für was ? Versuch mal die Schaltung die ich gestern gepostet habe, mit dem 1 Byte FIFO bzw. nimm ein größeres für schnellere Datenübertragung. Die Verlagerung der Empfangsroutine in den Interrupt bringt bei hohen Datenraten eine Verschlechterung der Bildqualität.
Leute kann nicht mal jemand nen howTo für doofe schreiben (wie mich) =)) Ich habe zwaar schon nen 8085 proggrammiert, aber das ist ewigkeiten her, ich interessiere mich für sehr für diese schaltung und habe auch schon mal rumgeschaut, ich weiß aber noch net wirklich mit welcher software und welchen isp oder ob ich ein STK500 brauche.. und der tread wird langsam auch total unübersichtlich, weswegen ich meine das es an der zeit wäre ihn langsam aufzusplitten oder??? MFG NickJag P.S Bin zwaar nen Elektrotechniker und Student, aber leider noch net schlau genug, deswegen währen so nen paar hilfestellungen gut, damit ich mich einlesen und einarbeiten kann, aber dafür brächte ich erstmal son überblick um bei reichelt zu bestellen und mit dem basteln zu beginnen, denn dann könnte ich mich auch erst richtig zu dem tread eusern, denn außer dem lcd hab ich ja noch nix =))
Hallo Benedikt, Du hattest recht, das war nur eine Scheinfunktionalitaet. :-(( Nachdem ich etwas herunterladen wollte (bzw. etwas auf das Display schreiben), kam nur Schrott dabei rum. Mit Deiner "originalsoftware" wird aber nur die HAelfte des Displays beschrieben. Kann das sein, dass fuer die X-Richtung, der wert XSize nur durch vier geteilt werden muss? Ich habe ja eine 4-Bit Ansteuerung? Wenn ich den Wert durch 4 Teile, wird zumindest die X-Richtung korrekt beschrieben. Die Y-Richtung funktioniert immer noch nicht. :-(( Alex
Bei dem mit dem durch 4 teilen ist ein kleiner Fehler drin: Es muss so heißen: Xshift: ld temp, Y ld temp, Y+ ld temp, Y ld temp, Y+ cp AdresseLow, XScan brlo XShift Das mit dem Teilen muss auf /4 bleiben. Ansonsten sollte es aber funktionieren, mit den 320 Zeilen.
Hallo, heute habe ich ein LCD gefunden, Es ist von Sharp und hört auf den Namen LQ080Y5DR01. Nach dem auseinander-nehmen kam eine Platine mit der Aufschrift CPWBX0016TPZZ zum Vorschein, auf welcher sich ein Chip von Sharp, ein Flachbadkabel-Anschluss und ein dreipoliger Stecker zu Stromversorgung befindet. Nun würde ich dieses gerne ansteuern habe aber das Problem dass ich kein Datenblatt zur Belegeung habe... Kann mit jemand helfen? Danke Christopher
Genaue Daten habe ich zwar auch nicht, aber vermutlich ist das ein TFT. Mit viel Glück hat es einen parallelen Anschluss (mehr als etwa 20-30 Anschlusspins), ansonsten hat es LVDS wie fast alle heutigen TFTs.
Hallo Benedikt, Danke für Deine schnelle Antwort. Mittlerweile weiß ich noch mehr. Es ist ein 640x480 Pixel LCD (Graustufen) Die Anschlussleiste hat so an die 30 Pins... Falls es sich um LVD handelt habe ich Pech gehabt, oder? Christopher
Wenn es Graustufen hat, ist es kein LCD: LCDs können nur Schwarz oder weiß, bzw. rot/grün/blau + Kombinationen davon bei einem Farbdisplay, macht 8 Fargen. Die Garustufen davon muss die Ansteuerung machen. Wenn es ein SW Display ist, dann ist es kein TFT und du kannst es mit großer Warscheinlichkeit mit der Schaltung betreiben. 30Pins kommen mir für ein SW Display eigentlich etwas viel vor, eigentlich reichen 14 aus.
Es gab tatsächlich auch schwarz-weiß-TFT-Displays, die wurden in einigen Apple-Notebooks wie dem Mac Portable verbaut. Sind allerdings wohl sehr selten; ich hab' schon sehr lange keines mehr gesehen.
Hallo, habe mittlerweile auch ein Sharp LM641542 und möchte dieses natürlich jetzt betreiben. Allerdings nicht am PC, sondern als autarkes Stück dass nur vom uC gesteuert wird. In wieweit kann man da die Schaltung vereinfachen? Was ich wissen will: Wieviele Pins brauche ich minimal um das LCD ausschließlich SW zu betreiben? Ich benötige nämlich noch einige Pins für Benutzereingaben... BTW: Wie stark ist der uC (8515) eigentlich ausgelastet von der Rechenkapazität? Grüße Christopher
Heureka, nach einer Zwangspause bin ich heute dazu gekommen mein LM... in Betrieb zu nehmen. Es lebt!! @Benedikt, Danke... Natürlich habe ich trotzdem noch ein paar Probleme. 1. Das Logo wird bei mir am unteren Rand angezeigt. Einen Teil kann man aber am unteren Rand der oberen Displayhälfte erkennen. Ich vermute einen Fehler in den Adressleitungen. Allerdings hab ich laut Plan verkabelt und kontroliert Hat jemand einen Tip ? 2. Der Kontrast ist unter aller Sau. wie kann ich das verbessern ? Danke uk
Frei sind noch PortB und ein paar PortD Pins. Ausgelastet wird der uC bei 16Mhz und 60Hz Displayfrequenz zu etwa 65%, hat also noch viel Rechenleistung übrig. Allerdings sollte man berücksichtigen, dass mindestens 15000x pro Sekunde Daten ans LCD ausgegeben werden. Man könnte das in den Interrupt packen, hätte dann aber nette Interrupt Response Zeiten bei einem anderen Interrupt...
@Udo Kühnemujnd zu 1: UD und LD vertauschen. Da hatte ich ein paar Probleme mit dem Schaltplan, da Eagle sich nicht überreden lässt den Text um 180° zu drehen. zu 2: Wenn du die Spannung höher drehst, wird es dann besser ? Das LCD ist schon verdammt alt, und hat daher nicht unbedingt den besten Kontrast. Vor allem ohne Hinterleuchtung ist es etwas schwer abzulesen, oder es spiegelt ziemlich, wenn direkt Licht drauffällt.
@Benedikt Der UD LD Tausch erklärt aber noch nicht warum ich zwei Teile sehe. Oder verstehe ich was falsch ? Danke uk
Wenn du obere und untere Bildhälfte vertauschst (über die Leitungen), dann erscheint der Teil der unten erscheint in der Mitte, und der Teil der oben erscheint in der Mitte darunter -> Das Bild ist vollständig in der Mitte.
Hallo, an alle die langsam auch den Überblick verlieren hier die Webseite. Sehr übersichtlich und auch mit den Sourcen und Schaltplänen zu den einzelnen Versionen. http://mitglied.lycos.de/bk4/vram.htm Schönen abend Christopher
Ich glaube der Link ist besser: http://mitglied.lycos.de/bk4/lcdcon.htm Hier noch ein paar Grundlagen: http://mitglied.lycos.de/bk4/lcds.htm Allerdings werde ich da keinen Source Code veröffentlichen, sondern nur die fertige Software. Die Source gibt es hier im Forum.
Hallo Benedikt, LCD Läuft. Da ich kein USB Interface gebaut habe, sende ich die Daten seriell mit 57600 Bits. Ist ein wenig lahm aber funktioniert. Allerdings scheint das Display während der Übertragung eine Reset zu erzeugen. Hast du einen Tip ? Danke uk
Was meinst du genau mit Reset ? Welche Software hast du verwendet, wie hast du die Serielle Schnittstelle eingebunden ?
Hi Benedikt, ich nehme die lcdcon_USB.asm Diese Version arbeitet mit RX Interrupt und benutzt das Busy Bit als CTS Signal. Die Übertragenen Daten werden auch sauber dargestellt. In unregelmäßigen Abstände schein aber ein Reset ausgelöst zu werden. Das LCD wird gelöscht und es erscheint wieder das Logo. Dann geht der Transfer einfach weiter. Ich Geschwindigkeit jetzt bis auf 9600 runter um den Effekt genauer zu beobachten. Keine Änderung. Hier die von mir geänderte Stellen. Write: in regsave, sreg wdr ; hab ich eingefügt um eine WD Reset zu verhindern sbrc NextOp, CD ;B bin mit der Und hier noch der Teil der die Baudrate festlegt. ; uk .equ clock = 16000000 .equ baudrate = 9600; 57600 ;baudrate .equ baudconstant = (clock/(16*baudrate))-1 ldi temp,baudconstant out ubrrl,temp ;load baudrate ldi temp, (1<<RXEN)|(1<<RXCIE) ;RX aktivieren out UCSRB, temp
Hi Benedikt, jetzt wird es mystisch. Wenn ich ein komplett weißes Bild übertrage dann tritt der Effekt nicht auf. Hab ich jetzt mehrfach getestet. Hmmmm?
Kommt mir irgenendwie bekannt vor... Ich hatte genau dasselbe Problem, hat mich auch Tage gekostet bis es lief. Ist das CKOPT Fuse Bit gesetzt ? Bei mir lag es daran. Dann hatte ich noch einen neuen, aber anscheined leicht defekten AVR, der ab und zu Müll anzeigte. Ein anderer lief dagegen.
Hallo Benedikt, es wahl wirklich CKOPT. Ich hab das jetzt gesetzt und die Resets sind weg. Es flackert zwar manchmal etwas .... Ich komme allerdings nicht über 57kbs. Das wird aber wohl an meinem Versuchsaufbau liegen. Möglicheweise ist aber auch meine Uart init falsch. Wie setzt du das Ding auf 115200 ? PS: Ich hab mir bei dem Versuch mit dem Fuses wohl zwei 8515 zerrödelt. Jetzt sagt Poniyprog dass er das Device nicht kennt. Komm ich da irgendwie wieder raus ? Danke uk
Hallo an alle, ist es eigentlich möglich mit der Schaltung gLCD's mit eigenem Controller zu betreiben? Ich benötige eine möglichkeit ein gLCD per USB zu steuern. Leider bin ich mit AVR's nicht vertraut und habe keine wirklich mir hilfreichen Seiten im Netz gefunden. Ich weiß das es per FT245 und AVR möglich sein sollte aber wie gesagt AVR war bisher für mich kein Thema. Vielen Dank Gerry
115200Baud bekommt man nur mit 18,432MHz Quarzfrequenz. @Gerry GLCDs mit Controller kann man nicht anschließen, der AVR selbst schon der Controller ist. Theoretisch ist es aber kein Problem, es muss nur die entsprechende Software geschrieben werden.
Danke für die schnelle Info, Ich versteh leider nicht wie man denn per PC -> AVR -> gLCD die Daten durchschleift. Wie gesagt AVR ist absolut neu für mich. Die befehle PC -> gLCD sind für mich nicht das Problem nur leider halt der AVR. Gibst es denn irgendwo ein paar vernünftige Einstiegsseiten dazu. Gerry
Hallo Benedikt, ich spiele gerade mit LCDHype. Dein Treiber wird wahrscheinlich eine Baudrate über 115200 einstellen. Kann ich das irgendwie ändern ? Nett wäre es auch wenn du den Treibercode posten könntest. Ich hab mir zwar das SDK gelande bin aber wie üblich zu faul. :-) Danke uk
Hallo Benedikt, Hallo Gerry, "115200Baud bekommt man nur mit 18,432MHz Quarzfrequenz." Nööö. Ich habs anders gemacht. Baudrate auf 57600 und den Uart verdoppeln lassen. Dann geht es. @Benedikt: Du hattest diese Verdopplung doch bereits vorgesehen. Der geänderte Code sieht so aus. .equ clock = 16000000 ;clock frequency .equ baudrate = 57600 ;choose a baudrate .equ baudconstant = (clock/(16*baudrate))-1 ldi temp,baudconstant out ubrrl,temp ;load baudrate ;uk ldi temp, (1<<RXEN)| (1<<TXEN) ;RX aktivieren ;uk out UCSRB, temp ldi temp, (1<<RXEN)|(1<<RXCIE) ;RX aktivieren out UCSRB, temp ldi temp, (1<<U2X) out UCSRA, temp ;verdoppeln bis denn uk
Ich hab die Teile bestellt. Warte nur noch auf die Streifenraster. Dann gehts los.
Hab die Teile. Nur eins hab ich vergessen. Das 18Mhz Quarz. Geht das auch mit 20?
Ja, nimm irgendwas im Bereich 14-20MHz. Bei 20MHz kann es eventuell Timingprobleme geben.
Es ist etwas dumm, dass das LCD kein wirkliches Interface für einen uC bietet, um es PC unabhängig als Anzeige einsetzen zu können. Das habe ich jetzt geändert: Ich habe ein SPI Interface eingebaut, und eine kleine Lib in C geschrieben, damit man das LCD einfach mit einem AVR ansteuern kann. Um Kurvenverläufe darstellen zu können, habe ich eine "Pixel setzen" Funktion eingebaut. Mit den Low Level Funktionen in C kann man somit leicht weitere Funktionen wie große Schriftarten oder ähnliches bauen.
Hallo, mir ist grad aufgefallen das du in deinem main.c Pi mit 3.1415916 definierst. Muss aber 3.1415927 sein. Ist also nur die vorletzte und letzte Stelle. Nicht das dadurch irgendwann mal ein fehler auftritt und man sich tot sucht. mfg Stefan
@Benedikt Hallo, hattest du meine Frage nach dem LCD Hype Treiber weiter oben gelesen ? Ich versuche mich gerade an einem Smooth Scrolling. Dazi habe ich die Bildschirmspeicherorganistaion etwas abgeändert. Ich setll das Ergebnis rein wenn es Vorführbereit ist. bis denn uk
Smooth Scrolling klingt interessant. Ich bin schon gespannt... Die Frage habe ich wirklich überlesen. Hier der aktuelle Source Code (hat auch schon eine Multithread Routine drin, die aber zu unsicher ware, daher habe ich sie wieder rausgenommen)
Hier mal ein kleines Update für die LCD Controller Lib. Jetzt ist auch eine Linien Routine drin. Ich habe auch mal ein sinnvolles Beispiel programmiert, für was man das LCD einsetzen kann: Der ADC Wert wird angezeigt und im Sekundentakt nach links gescrollt. Dazu wird im Sekundentakt das LCD gelöscht und neu aufgebaut. Das ganze muss aber so schnell gehen, dass man das Flackern nicht sieht. Mit einem kleinen Trick geht das wunderbar. Bei sowas merkt man schnell, dass ein AVR einfach zuwenig Rechenleistung und Speicher hat. Er benötigt bei 16MHz fast eine Sekunde um das Bild aufzubauen. Eigentlich wollte ich mehrere Kurven anzeigen, aber da jede Kurve 640Bytes an Speicher braucht muss man schon einen größeren AVR, oder gleich irgendwas schneller wie ARM oder M16 nehmen.
Hallo zusammen, anbei meine LCD Controller Version mit vertikal Smooth Scrolling. ACHTUNG: Die Bildschirmspeicherorganisation ist geändert. Der Controller bschäftigt sich in dieser Version mit sich selbst. Die Empfangsroutinen sind zwar alle aktiv aber... Diese Version arbeitet an einer RS232 mit 115200 Baud ! (Ich hab immer noch keinen FT.. Chip :-() Nach Anpassung der Werte für XSIZE,YSIZE und der Logoposition sollte das Programm auch an anderen LCD laufen. Nähres siehe Quelltext Als nächstes werde ich die Point und Line Funktionen von Benedikt entwenden und adaptieren. Mal sehen was mir für den freien Speicher meines 64K RAMS einfällt. bis denn uk
Hallo zusammen, ich hab hier einen merkwürdigen Effekt. Ich schraube an einer Routine zur vergrößerten Zeichendarstellung. Dabei werden die Pixel eines Zeichens um das Achtfache vergößert. Wenn ich aus einer 1 also ein FF bilde und es anzeigen lasse, werden nachfolgenden 0 Pixel ebenfalls in Schwarz dargestellt. Ändere ich das FF in ein 7f oder f7 dann ensteht zwischen den vergrößerten Pixeln ein Freiraum und das Zeichen wird sauber aber eben mit diesem Zwischenraum dargestellt. Ich vermute es liegt am LCD Timing. Hat jemand eine Idee. @Bendikt: Kannst du diesen Effekt nachvollziehen wenn du eine Linie zeichnest. bis denn uk
Ich kann das eigentlich nicht nachvollziehen. Wenn das Kabel zwischen Platine und LCD nicht allzulang ist (max. 50cm), dann sollte es eigentlich keine Probleme geben. Vor allem das beeinflussen von einem Bit auf ein anderes liegt wohl eher an der Software.
Ich habe gerade mal deine Software ausprobiert: Bei mir tut sich garnichts. Nichtmal die LCD Spannung wird eingeschaltet.
@Benedikt Hmmm. Bei mir funktioniert es mit dieser Version. Da läßt mich grübeln. Ich hab inzwischen eine schnellers RAM eingesetzt. (15ns) Der oben beschrieben Effekt bleibt aber. Ich muss noch mal in mich gehen. bis denn uk
hallo, für die CCFL Röhren, gehen da die Inverter von Pollin ? die kosten dort 1,95 pro Stück mfg Kay
Ja, davon habe ich mir auch eine Kiste voll bestellt. Das was da für 1,95 verkauft wird, kostet normalerweise mehr als das 10fache. Die Inverter haben eine ordentliche Ansteuerung und eine Regelung, sind also keine billigen wie die üblichen, die man sonst so bekommt.
ja dann werde ich mir davon ein paar bestellen. vielleicht stell ich mich zu blöd an, aber ich hab noch ne frage: Ich will über einen vorhandenen AVR eins dieser Displays ansteuern. mein AVR hat noch 8 Pins frei und eine Serielle. Ich müsste eigentlich nur einzelne Pixel setzen. Da wäre doch die erste serielle Version am besten oder ? mfg Kay
Nimm die letzte Version: http://www.mikrocontroller.net/attachment.php/249929/setPixel.zip und http://www.mikrocontroller.net/attachment.php/250174/LCDconoszi.zip Da brauchst du nur den SPI Port. Außerdem gibt es schon fertige Routinen in C, um Pixel zu setzen, Linien zu zeichnen usw.
das problem ist, das ich nicht in C programmieren kann. ich kann nur Bascom. und mein Projekt läuft auf Bascom. Mit Bascom kann ich Soft SPI machen. das heißt dann ja, das mein AVR per SPI mit dem AVR auf dem LCD Controller verbunden ist. Und welche Hardware Version brauche ich dann ? mfg Kay
Vom Hardware Aufbau sind alle Versionen gleich. Nur die Belegung von PortB und PortD 0-2 ist unterschiedlich.
aja ok. dann werde ich mich mal in das thema SPI einarbeiten. danke mfg Kay
achja, habe hier noch ne alte grafikkarte. da sind 8x CMOS DRAM 64Kx4 DIP-18 drauf. aber mit dram kann ich bei dem lcd nichts anfangen oder ? mfg Kay
Habt ihr schonmal nen SRAM von Reichelt für den Controller verwendet ? mfg Kay
Hallo Kay, "Habt ihr schonmal nen SRAM von Reichelt für den Controller verwendet ? " Ja. Ich hab eine 512er SRAM von Reichelt mit 55ns eingesetzt. Hat funktioniert. bis denn uk
Hallo Benedikt, kannst du mal kurz beschreiben wie die AVR's per SPI verbunden werden. Ich hab zwar bereits intensiv gegoogelt aber .... Danke uk
Also hardwaremäßig werden beide SPI Ports (MOSI, SCK, SS) 1:1 verbunden. Softwaremäßig sendet der Bildgenerator uC ein Byte, das vom LCD Controller empfangen wird. Sofort wird das Busy gesetzt und erst wieder gelöscht wenn die Daten verarbeitet wurden. Der Bildgenerator uC überprüft vor dem Senden eines Bytes das Busy.
Hallo Benedikt, ich hab die Busy Leitung vergessen :-( jetzt klappt es. Danke uk
@Benedikt habe jetzt die Inverter bekommen. Beschaltest du den Inverter so wie angegeben ? Oder schließt du nur Vin und GND an ? ( Sleep natürlich an Vin )
Ich habe es so beschaltet wie in dem Beispiel (mit dem Poti um die Helligkeit einzustellen)
@Benedikt ich versuche schon einige zeit, mit dem AVR Studio4 die basiclcdcon.asm in eine Hex zu wandeln. Wenn ich versuche die hex zu erzeugen, dann kommt eine Fehlermeldung und einige Warnings : Building project... AVRASM: AVR macro assembler 2.0.28 (build 121 Jan 11 2005 10:28:51) Copyright (C) 1995-2005 ATMEL Corporation C:\Dokumente und Einstellungen\Kay Pohl\640480\640480.asm(2): Including file 'C:\Programme\Atmel\AVR Tools\AvrAssembler2\Appnotes\m8515def.inc' C:\Dokumente und Einstellungen\Kay Pohl\640480\640480.asm(17): warning: Register r26 already defined by the .DEF directive C:\Dokumente und Einstellungen\Kay Pohl\640480\640480.asm(18): warning: Register r27 already defined by the .DEF directive C:\Dokumente und Einstellungen\Kay Pohl\640480\640480.asm(20): warning: Register r30 already defined by the .DEF directive C:\Dokumente und Einstellungen\Kay Pohl\640480\640480.asm(21): warning: Register r31 already defined by the .DEF directive C:\Dokumente und Einstellungen\Kay Pohl\640480\640480.asm(97): error: Undefined symbol: UBRR Assembly failed, 1 errors, 4 warnings ich kenne mich in ASM leider nicht aus. kannst du mir sagen, warum diese Fehlermeldung kommt und wie ich das hinbekomme ? mfg Kay
Die Warnings kann man ignorieren, anstatt UBRR muss es UBRRL heißen. Mit einem alten AVR Studio ging es auch mit UBRR. Wiso nimmst du so eine alte Version der LCD Software ? Die ist sowohl vom Timing als auch von den Funktionen her nicht die beste.
Hallo, hat schon jemand ein fertiges Layout für den Controller und stellt es zur Verfügung ? LG, Ralf
@Benedikt ich habe die Teile schon hier und will jetzt nicht noch nen FT245 bestellen. will halt erstmal probieren, obs seriell so funktioniert wie es soll. dann werde ich, wenn ich einiges zusammen habe, wieder bestellen und versuchen per usb das ganze laufen zu lassen. noch ne frage: Kann man mit lcdhype auch den SpectrumAnalyzer von Winamp anzeigen lassen ? wenn ja, ist das display schnell genug, diesen anzeigen zu können ?
Ja, das geht mit LCDHype. Von der Geschwindigkeit her geht es, zumindest theoretisch. Ich erreiche Geschwindigkeiten von über 300kB/s, was bei 320x240 Pixeln über 25fps entspricht. Mit dem 640x480 Treiber, der auf 640x480 eingstellt ist, ist nur ein viertel möglich, da ja 4 Bilder übertragen werden.
Benutzt du nun auch einen FT245, oder emulierst du einen ? Wenn ich alles zusammengebaut habe und es seriell funktioniert, dann benötige ich doch nur noch nen FT245 den ich dann parallel an den mega8515 anschließe oder ? mfg Kay
Ich verwende den FT245, da es damit am einfachsten geht: Der AVR liest die Daten, wenn er Zeit hat direkt parallel ein. Vom Aufbau sind alle Softwareversionen gleich, nur die Belegung vin PortB und PortD ist teilweise unterschiedlich. Der FT245 kommt dann an PortB und PortD0 und 1
ok. sobald ich das display am laufen habe, werde ich mich dann an den FT245 machen.
Hallo da hatte also noch jemand dieselbe Idee, die SPI-Schnittstelle für LCD-Pixeldaten zu benutzen. Ich habe meine Schaltung gerade im "Funkamateur" 11-12/2005 veröffentlicht, die Assemblerfiles liegen auf funkamateur.de als ZIP. 73 de DB1UQ Christoph
Übrigens gibts schnelle S-Rams mit 256k*16 oder 512k*8 bei www.kessler-electronic.de (die sind mit mir nicht verwandt, hießen früher Simons-Elektronik, Aufmachung der Webseite ähnkich Reichelt, der Download-Katalog von 40 MByte muss schon drei Jahre alt sein) Meine synchrone serielle Schnittstelle als LCD-Pixeldatenausgang scheint doch neu zu sein, Benedikt benutzt eine parallele 2*4Bit. Ich habe mit dem alten 8MHz-8515 auch etwa 50% Rechenzeit, alle 4usec muß ein Interrupt die Schnittstelle bedienen, leider hat Atmel keinen Sendepuffer, das verringert die Datenrate von nominell 2 auf etwa 1 MBit/sec. Im 32k-SRAM habe ich für ein seriell angesteuertes 240*128 Display 7 Bildspeicher und einen Hardcopy-Speicher für eine Druckausgabe aufgeteilt, ein Bild enthält die Skalenbeschriftung, die anderen 6 die Oszilloskop-Kurven, die dann langsam im Hauptprogramm während der seriellen AD-Wandlung gelöschtwerden, das ergibt ein Oszilloskop mit verblassendem Schreibstrahl. Skala und je einer der 6 Kurvenspeicher werden abwechselnd dargestellt Download wie gesagt auf funkamateur.de DB1UQ....zip. Die veröffentlichte Platine ist ein 8515 mit SED1374 am QVGA-Display
Hier mal eine wirklich sinnvolle Aufgabe für den LCD Controller: Ein grafisches Innen/Außen Thermometer mit Anzeige der Temperaturkurve in den letzen 30 Stunden (kann auch geändert werden.) Und man kann sogar auch Screenshots vom LCD machen. Das ganze sieht dann so aus wie auf dem Bild.
Kann mir jemand sagen, ob man das oben erwähnte display Sharp LM641542 über den Parallelport ansteuern kann, oder ist der zu langsam. Oder kann ich das LCD mit meiner C-Control M-Unit 2.0 von Conrad ansteuern? Um das ganze einfacher zu halten, nur als Textdisplay. Habe noch nicht so viel Ahnung von Elektronik und qP, wäre daher froh, wenn mir jemand ein bisschen helfen könnte.
Beidesmal nein. Ein Betrieb am LPT wäre theoretisch möglich, aber nur unter DOS und nur mit einer Menge Programmieraufwand. Die C Control ist vieeeeeeeel zu langsam. Von der Geschwindigkeit her macht diese nichtmal 50000 Befehle pro Sekunde aufgrund der Interpretersprache. Der AVR ist da rund 100 mal schneller.
Hallo Benedikt, blicke leider in diesem Thread und den vielen Versinonen nicht mehr komplett durch. Welche Datei ist die aktuelle Software für normale serielle Ansteuerung? (möglichst Quelltext) Welcher Schaltplan ist dann hierfür gültig? Im vorraus schonmal vielen Dank für Deine Mühe. Karl-Walter
Hier der aktuellste Quellcode. Allerdings ist dieser schon alt und nicht auf dem neuesten Stand, da ich nur noch den FT245 Code aktualisiere. Alle anderen Übertragungen (LPT, seriell usw.) sind um einiges langsamer und fehleranfälliger.
Hallo Benedikt, habe ein kleines Problem, egal welche Software ich in den 8515 lade, habe ich immer die im Bild zusehenden senkrechten Streifen, die zum Teil das Logo verdecken. Als Speicherchip verwende ich den UM61512AK-15. Die Pinbelegung habe ich angepasst, A15 + A16 + CS2 liegen auf +5V. Kann keine Fehler auf dem Board finden (Kurzschlüsse etc.), gehe aber davon aus das es ein Boardproblem ist, da es ja bei jeder Softwareversion (par, ser, spi und FT245) auftritt. Kann Du dir da einen Reim draufmachen??????? Gruß Karl-Walter
Wieso hat ein 64kB SRAM eine A16 Leitung ? Hast du A15 vom AVR an CS gehängt ? Vermutlich ja. Es werden 64kB benötigt. A15 vom SRAM muss an A15 vom AVR. In den meisten Schaltplänen hängt A15 nur deshalb an CS\ weil 64kB relativ selten sind, und ich daher meist 2x 32kB verwende.
Hallo Benedikt, sorry, da hab ich mich etwas verhauen, A15 und CS2 vom Speicherchip habe ich an +5V gelegt. Die A16 war von einem 128KB Chip im Schaltplan übrig geblieben. Wohin legst Du dann den /CS vom Speicherchip einfach auf GND? Gruß Karl-Walter
Ja. A15 muss angeschlossen werden. CS\ an GND, CS2 an 5V
Hallo Benedikt, ersteinmal vielen Dank für Deine Hilfe am Samstag. Das Display scheint nun zu funktionieren. Habe den Escapewert auf 27 umgestellt. Display- und Zeilenlöschen funktionieren. Arbeite nun an einem Programm, das mir Daten auf das Display ausgibt. Ist es richtig, wenn ich folgende Hexwerte 1B C0 D2 an das Display sende, das dann, wie hier im Beispiel der Charakter 210 ausgegeben würde, oder verstehe ich das falsch, da auf dem Display nichts angezeigt wird. Viele Grüße Karl-Walter
So sollte es eigentlich funktionieren. Ich habe mir ein kleines C++ Programm geschrieben, mit dem ich das LCD ansteuern kann. Dieses kann man leicht in andere Programme einbinden. Wenn ich dazu komme, dann werde ich das mal etwas kommentieren und dann zusammen mit einer neuen Version der LCD Software hier reinstellen. Damit kann man dann u.a. Screenshots vom LCD machen.
Ich habe euer Projekt halbwegs verfolgt und wollte mal fragen ob man das Sharp lm641541 auch ohne meg8515 betreiben kann da ich nich die möglichkeit habe ihn zu programmieren. Wenn ja dann wär es freundlich von euch wenn ihr den schaltplan und n treiber am besten für lcdHype hinterlasst #Danke
Ohne mega8515 geht es nur mit einem LCD Controller wie z.B. der Epson S1D13704/5/6, aber der kostet einen Kleinigkeit mehr und ist nur im kleinen SMD Gehäuse erhältlich.
Hallo, ich bin durch Zufall auf diesen Thread gestoßen, worin auch die Rede vom MD640.400-52 von Finnlux ist.... ich habe auch solch ein Display, hat mir mal nen Freund geschenkt, weil er nichts mit anzufabgen wusste.... öhm nun meine Frage kann man das irgendwie an den PC anschließen, oder sonstwie verwenden? Hab da schon allerhand über ISA AGP-Karten usw. gelesen aber recht schlau bin ich nie geworden....ich weiß gant einfach nicht wie man das anschließen könnte :-( kann mir einer von euch vlt. auch für nen Eletronoob das erläutern ob das möglich wäre?? Danke für jede Antwort:-) gruß master
Da ich leider das Display nicht kenne, und ich mit solchen Displays noch nie was zu tun hatte, kann ich es nicht mit Sicherheit sagen, aber man sollte es an einen PC anschließen können, wenn man eine Grafikkarte mit VESA Anschluss hat. Alternativ müsste man aus den RGB Signalen ein entsprechendes Signal erzeugt. Das Display kann nämlich nur SW. Einfach wird es nicht, es müsste aber möglich sein.
Hallo Leute, als neuling und interessent habe ich diesen Thread und manch anderes über Google gelesen um LCD´s anzusteuern... Ich bin mir aber sehr unschlüssig und traue mir die Umsetzung so nicht zu ganz zu schweigen von den nicht vorhandenen Programmiermöglichkeiten bzw. Unkenntnis von AVR´s. Mein Anliegen ist folgendes: Ich habe einen noch funktionierenden Laptop 486DX66 mit nem schönen Display Sanyo LM-CA53-22NSZ gesteuert von einem CHIPS 65535 Controller. Dieses möchte ich gerne als Kontroll-LCD an meinem Pentiumrechner anbinden und auch als kleinen Bildschirmersatz(der Pentium macht im prinzip nix anderes als USV´s überwachen und im Netzwerk kommunizieren) Und dann habe ich noch aus einen 286er Schlapptop einen schönen 640x400 Monochrom(Blau/Weiß) LCD Sharp LM64035 mit 8bit ISA-Graka Hercules/CGA mit Yamaha V6366 Controller,welche ich leider nicht unter Windows98/ME zum laufen bekomme. Somit möchte ich dieses Display ebenfalls separat nutzen. Eigentlich alles schön komplett, da ich die Negativspannung/Inverter einmal in PC-Netzteil(286/Monochrom) und zum anderen auf ner kleinen Zusatzplatine des 486/Farb-LCD mit Negativ/Inverter habe. Anschlussbelegungen habe ich von beiden nicht, lässt sich aber rausfinden habe ich durch einen anderen Link mitbekommen. Der Sanyo hat einen 30pol. Stecker der aber nur mit 27 Belegt ist und der Monochrom hat nur 15kabel von dem 20pol. Stecker belegt. Wichtiger wäre mir eigentlich der VGA-LCD zu betreiben, da ich noch für kein LCD-Modul eine Datenausgabe für meine USV-Software(APC PowerChute Buissness Edition) gefunden habe. Wer von Euch hat eine Idee oder gar Lösung parat und könnte diese Umsetzen? Programmieren kann ich garnicht, nur etwas Basic(C64 rules :) ) und dann verliess es mich... Löten ist kein Problem, ausser SMD, das ist neuland für mich. Aber wenn es da sowas wie enen Bausatz gibt wäre es toll... Gruß Swen
Eins ist mir nicht ganz klar geworden: Kann die MCA-25 die 640x480 NUR als JPEG ausgeben oder geht das auch irgendwie als Rohformat ? Ich würde das Bild gerne in einem Mega128 weiterverarbeiten, aber als JPEG müsste es immer erst aufwändig decodiert werden. Gäbe es für die JPEG-Decodierung irgendwo fertigen Sourcecode ? Und noch etwas: kann man in die Belichtungssteuerung der Kamera eingreifen ? Gruß Erik
Hi, es gibt bei Pollin momentan ein 320*240 LCD Batron EG32F10BCW ( http://www.pollin.de/shop/detail.php?pg=OA==&a=MjI2OTc4OTk=&w=Nzk4OTk4&ts=0 ) Waere das mit der Software kompatibel? Gruss Tobias
Es wäre kompatibel, wenn es das noch geben würde. Vermutlich taucht es in ein paar Wochen für 20 bei Ebay auf...
Geiler währe das LC-Display Sharp LQ035Q2DD56 mit Touchfolie. 240x320Px und Tochscreen
Das habe ich mir gerade bestellt. Für 5 kann man nicht viel falsch machen. Wenn es garnicht geht, kann ich immer noch den Touchscreen abbauen. Da viele TFTs von Sharp 50Pins haben, und ich eine fertige Ansteuerung (und auch das TFT) des Nachfolgetyps für das von Pollin angebotene TFT habe, werde ich es einfach mal ausprobieren. Wenn ich Glück habe, habe ich ein paar geile Farb TFTs für 5/Stück, ansonsten habe ich ein paar 10 in den Sand gesetzt... Falls die Ansteuerung funktioniert, werde ich mir mit einem M16C62 einen Controller dafür basteln, da dieser über DMA verfügt.
Kann es sein, dass es das Display plötzlich nicht mehr gibt??? Das Farbdisplay von Sharp ist natürlich super nice und für 5 Euro sensationell günstig. Aber ohne Datenblatt (Anschlussbelegung!) keinen Cent wert! :-( Da ist selbst mit ausprobieren nichts (50 Pins!) Und selbst mit Datenblatt kann man das Display leider nicht so einfach ansteuern, dafür müsste man dan nochmal einen neuen Controller programmieren (ein AVR dürfte dann endgültig zu langsamm sein) :-( Aber ohne Datenblatt kann man das Display schlichtweg vergessen (menno)
@Benedikt Was hast du denn für eine Ansteuerung für das Display? Sebstgebaut?
Die Ansteuerung besteht aus einem Epson Controller und einer Adapterplatine mit FPGA und den ganzen Spannungswandlern von DataModul.
teil uns dann bitte mal mit ob das geklappt hat ;-) du sagst du baust dann event. das toucheinheit ab, kann man die so leicht abbauen und anderweitig benutzen?? wie wird die denn angesteuert??
Hallo Benedikt, kann ich vieleicht das Datenblatt vom Nachfolger modell haben? (oder die bezeichnung) Ich würd nämlich gerne wissen wie denn die 50Pins belegt sind, kommen mir irgendwie ziemlich viel vor :-(
ich glaub das 6pins für 6 farbbits sind. ______________________________________ Wie immer, alle Angaben ohne Gewehr!
Die Bezeichnung des Nachfolgers ist: LQ035Q7DB03 google liefert verschiedenste Datenblätter und Infos
Ich koennte mir in den Arsch treten, weil ich erst gefragt hab und nicht gleich gekauft :) Gruss Tobias
Aber wiso haben die die S/W Displays wieder so schnell rausgenommen? Schon ausverkauft?
Die Farb Displays sind auch weg. Mal schauen ob ich da noch welche bekommen habe... Ich vermute, dass da jemand im Ladengeschäft vorbeikam und die Palettenweise mitgenommen hat.
Verdammt, die sind wirklich schon weg... Für mich gibt es zwei erklärungen: 1.:Pollin hatte nur sehr wenige auf Lager (50 Stück?) und durch den Antrang durch das Forum hier und der sehr günstigen Preis von 5 Euro gab den Rest. 2.: Irgendein egoistischer Shopbesitzer hat alle eingekauft und gemeint er kann die mit guten Aufschlag wieder verkaufen sobald der erste es geschaft hat das Display anzusteuern... :-( Ich konnte mir leider nur zwei Stück ergattern (wollte heute oder morgen nochmal 5 Stück holen), dadurch lohnt es sich aber für mich schonmal nicht einen Controller selber zu entwerfen :-( Sollte jemand noch Interesse an dem Display haben, und sobald die bei mir angekommen sind werd ich eventuell eines abgeben können :-) Wer Interesse hat kann sich ja mal hier im Forum melden. Ansonsten werd ich warten was sich Benedikt da ausdenkt und die Displays dann doch selber nutzen.
@Markus Sicher das du die Displays hast ? Ich habe mir auch welche bestellt, aber heute beim Bestellstatus gesehen, dass diese anscheinend nicht lieferbar sind... Falls du welche bekommst, ich hätte eventuell interesse an dem einen.
Sicher leider nicht :-( bangel Hab noch anderes Zeug bestellt und bis jetzt noch keine Antwort von Versandbestätigung oder anderem bekommen. Aber da ich glaub sogar nach dir Bestellt habe dürfte es schlecht aussehen :-(
Hi, die Pollin Bestellung ist grad eben völlig überrascht angekommen. Hab gar keine Versandbestätigung bekommen, ist das normal? Zei von den Displays sind zum Glück auch dabei :-) Mit Hintergrundbeleuchtun und Touchpad, wie beschrieben. Das Display ist wirklich sehr schön und kompakt. Das Teil würde sich sogar herforagend für den Beamerbau (Volksbeamer) eignen. Eines würde ich jetzt abgeben, wer hätte denn jaetzt alles interesse?
sorry für die Rechtschreibfehler, hab wohl doch ein wenig zu schnell getippt... Wer interesse hat kannn sich entwedder hier, oder per mail melden: mailmex@will-hier-weg.de Bei einem guten Angebot würde ich auch beide abgeben.... @Benedikt, melde dich wenn du es sicher weißt das du eines haben wilst, wenn sonst niemand Interesse haben sollte kanst du es haben.
Hmm, schade... es wäre schön gewesen, wenn mir jemand hätte helfen können. Leider habe ich aber kein Ebay oder Pollin-Display sondern nur die o.g. Teile...
@Swen1977 Der LM-CA53-22NSZ ist ein Dualscan Farb LCD, dafür habe ich eine halbfertige Anteuerung. Ein C/C++ Programm zur Anstuerung über USB für das Display könnte ich dir auch geben, den Rest musst du aber selber screiben. Zu dem LM64035 habe ich leider keine Daten.
@Markus Ich brauche das Display nicht, habe gerade ein paar davon bekommen (trotz Nachricht von Pollin, die seien ausverkauft...)
ok, auch gut. Dann kann sie jemand anderes haben der sie braucht. Wenn nicht gehen sie zu Ebay oder ich versuch sie halt doch mal ein wenig anzusteuern soibald ich zeit habe... Wie viele Displays hast du denn bestellt?
Ich bestelle immer mindestens 3, egal von was: Eines geht meist beim Entwickeln einer Ansteuerung kaputt, eines kann ich dann verwenden und habe noch eines als Ersatz.
Hmmm, was heisst "halbfertig"? Habe natürlich interesse ;-) Nur, was muss dann noch geschrieben werden? Das LM64035 ist ein Monochromdisplay,vermutlich standard...
Halbfertig heißt: Bei mir läuft es auf meinem einzigen Farbdisplay. Man kann nur BMPs laden, mehr nicht. Die Übertragung der Daten ist sehr langsam (>1s pro Bild). Für die 640x480 USB Schwarzweiß Version habe ich mal die aktuellste Version samt C/C++ Demoprogramm angehängt.
Hi Benedikt hab bei ein Sharp LM038QB1R10 und wollte das mal mit deiner Schaltung ansteuern. Allerdings komm ich mit der Belegung der Anschlüsse nicht so ganz zurecht. Bei meinem Display gibt es noch die Bezeichungen: Disp, XCK, M und YD. Wäre super, wenn du mir da weiterhelfen könntest.
Könntest du mal das Datenblatt davon reinstellen ? Ich habe auch ein paar von diesen LCDs, aber noch kein Datenblatt. XCK=XSCL M=AC Drive YD=LP DISP kommt über einen Inverter an den Pin, an dem der Transistor hgängt, der die negative Spannung einschaltet. Wie erzeugst du Vc, Vbl, Vbh, Vsh, Vsl ?
Hier erst einmal das Datenblatt vom Display Ehrlich gesagt hab ich mir über die Spannungsversorgung noch keine großen Gedanken gemacht, aber wenn du eine gute Idee hast kannst du sie mir ja schreiben.
Das Display läuft mit 3,3V, d.h. man muss einen Levelshifter einbauen um es an der Schaltung zu betreiben. Die ganzen Spannungen sollte man mit dieser Schaltung erzeugen können. Ich habe es noch nicht ausprobiert, aber in der Simulation sah es gut aus.
Schaut mal hier. http://www.elektor.de/Default.aspx?tabid=1&mid=386&ctl=Details&newsletter=1&ItemID=464 Wär es damit möglich ein LCD ans Netzwerk zu klemmen ? Gruß David
@Benedikt Danke für die Schaltung, Ich habe sie gerade aufgebaut und es sieht bis jetzt gut aus. Ich habe vor, die erste Schaltung mit der ersten Version von diesem Forum aufzubauen, denkst du, dass ich mit dieser Version mein Display ansteuern kann?? Außerdem wären da noch die Datenleitung..... mein Display hat die Anschlüsse D0-D3 kann ich da die UD oder die LD Leitungen nehmen???
Für ein 320x240 Display gibt es eine leicht abgeänderte Schaltung: http://www.mikrocontroller.net/attachment.php/227763/schaltung.gif und die passende Software: http://www.mikrocontroller.net/attachment.php/227836/lcdcon_ft245_4bit.asm
Ich habe gerade mal die Schaltung für das LM038QB1R10 aufgebaut und ausprobiert: Läuft wunderbar. Der Kontrast von dem LCD ist echt super !
hi Benedikt welches war nochmal das LM038QB1R10?? Das ist aber nicht das von Pollin für 5,-?? Das hierß doch --> Sharp LQ035Q2DD56 hast du dir da über die Ansteuerung schon Gedanken gemacht? Gruß master
LM038QB1R10 gibts (oder gabs, keine Ahnung ob es noch vorhanden ist) auch bei Pollin für 7,95 aber nur in der Lagerliste. Es ist ein passives (d.h. SW) LCD mit 320x240, das auch für PDAs gebaut wurde. Für das LQ035Q2DD56 habe ich eigentlich fast alles fertig geplant, aber das ganze ist ziemlich aufwendig und mit einem AVR kaum zu schaffen. Selbst bei 256 Farben (also 8 statt 18bit) braucht man immer noch 76,8kByte RAM und man muss >5MByte/s übertragen. Da ist der AVR schon nahezu voll ausgelastet. Im Anhang "nur" mal die analoge Beschaltung des Displays. Den Touchscreen kann man aber ganz einfach auslesen.
@Benedikt nicht schlecht ;-) du schaffst das schon, wobei mir 256 auch schon reichen würden... kannst du das mit dem Auslesen des Touchscreens mal näher erläutern, würde sich bei meinem PC-Mod gut machen... In der Hoffung einer Erläuchtung oder einer einfachen Schaltung lol Gruß Master
Soviel schon mal jetzt: Die Schaltung ist einfach: 1x ATmega8, ein paar Zeilen Software, fertig. Der Rest kommt morgen.
Hi Benedikt! Erstmal Hut ab für das was du inzwischen erreicht und geschafft hast!!! Ist die Version auf dieser Seite: http://mitglied.lycos.de/bk4/lcdcon.htm noch die aktuellste (Schaltplan- und Software-mäßig)? Könntest du ansonsten vielleicht mal je ein ZIP-File mit allen Sachen (Schaltplan, ASM-File, LCDHype-Treiber und was man sonst noch benötigt) für die FT245-4bit- und die FT245-8bit-Version machen und online stellen? Das wäre prima! Kennst du LCDInfo? Was denkst du wie aufwendig es ist dafür einen Treiber zu schreiben?
und der nächste macht die 400 voll! der Faden ist ein echter Dauerbrenner, das sollte allmählich zum "Projekt" mutieren
Dann mach ich selber mal die 400 voll: Für die 8bit Version gibt es hier die neueste Software: http://www.mikrocontroller.net/attachment.php/302835/LCD_USB_Demo.zip Mit LCDHype habe ich seit Ewigkeiten nichts mehr gemacht, da das ganze zu langsam ist. Die 4bit Version müsste ich auch mal wieder aktualisieren, da gibt es noch keine Änderungen gegenüber der letzten, da ich hauptsächlich die 8bit Version verwende.
401: ;) Danke für die neuen (aktuellen) Daten! Bist du egtl. noch am weiterentwickeln und verbessern? Was denkst du: ist's mit LCDInfo gleich langsam? Ich habe den Eindruck, dass das ein bisschen ressourcenschonender ist... Kannst ja vielleicht bei Gelegenheit mal schauen...
Ich hab mit LCDInfo mal angeshen. Es scheint dafür keinen Beispielcode zu geben, wie man einen Treiber dafür schreibt. Für LCDHype gibt es einen leeren Quellcode, in dem man nur die LCD Funktionen einbauen muss, und fertig ist der Treiber.
Hmm - hab mal n bisschen rumgesucht - leider weiß ich aber auch nicht, was genau du benötigen würdest... Also hier gibt's ein Plugin-SDK: http://forum.lcdinfo.com/viewtopic.php?t=384 und hier ein paar Plugin- und Treiber-Sourcen: http://forum.lcdinfo.com/viewtopic.php?t=855 Vielleicht ist da ja was dabei... Wäre auf jeden Fall cool wenns so wäre...
Nachtrag: Henri (der Author von LCDInfo) ist meistens auch sehr hilfsbereit, halt in Englisch, aber immerhin...
@Benedikt: Kannst/Konntest du mit den Links was anfangen? Also ließe sich damit n Treiber für LCDInfo machen?
Ich habe mir die Links mal angesehen. Es sollte möglich sein einen Treiber zu schreiben, aber leider habe ich im Moment nicht die Zeit dazu.
Hallo zusammen ich hab da mal ein paar fragen zu dem USB Controller. 1. Kann ich diesen SRAM benutzen? AS7C256-PC 20 2. Gibts vieleicht eine Komplette Teileliste für den Controller und Schaltplan und Layout. 3. Ich bin nicht so der Fan von SMD da man sie leider nicht auf Lochraster aufbauen kann, ... einen ersatz für den FT245 gibt es nicht zufällig oder ? mfg Sebastian
1) Ja, der SRAM passt 2) http://www.mikrocontroller.net/attachment.php/224711/AVR_LCDv2.zip 3) Es gibt fertige Module mit FT245 und Pins im 2,54mm Raster von FTDI, aber keine Ahnung wo man die beommt.
Hallo zusammen ist der Controller für das LCD von Sanyo LCM 5483-24NTK geeignet und wo kann man Datenblätter bekommen? Ist es ein TFT oder DST? MfG Peter
Ich habe leider keine Infos zu dem LCD, aber den Kurzinfos die google liefert nach, ist es ein 640x480 DST (müsste also Schwarz/weis sein). Es sollte also mit dem Controller ansteuerbar sein, wenn man die Anschlussbelegung hat.
Danke für die Antwort , ... was den FT245 angeht hab ich schon eine lösung , was ich aber noch nicht verstehe ist , ich brauch ja 2 SRAM Bausteine da meiner ja nur 32k is und nicht wie ihr den benutzt 64k wie werden in die Schaltung 2 SRam Bausteine gebunden ? gruss Sebastian
Schau dir mal diese Schaltung an: http://www.mikrocontroller.net/attachment.php/280824/lcdcon_seriell.gif Über den CE\ Pin werden die beiden SRAMs abwechselnd angesteuert.
Ah , hab ich ganz übersehen , ... Danke schön noch mal
Hallo Benedikt, Danke für deine Antwort. Kannst du mir Infos zur Pin-belegung des VRAM KM424C257z-6 geben und ist dieser für die Ansteuerung geeignet?
Der KM424C257 ist dafür geeignet, allerdings hatte ich diesen nur testweise verwendet, daher gibt es keine fertige Software und Schaltung dafür. Infos dazu findet man auf meiner Seite: http://mitglied.lycos.de/bk4/vram.htm Ein Datenblatt zum KM424C257 habe ich da auch mal hochgeladen: http://mitglied.lycos.de/bk4/zeug/KM424C257.pdf
Hi, @Benedikt: Ich hab eine Frage zu deinem Character Generator. Werden die Zeichen bei der Übertragung zum sram generiert und dann als grafik dort abgelegt, oder werden die Zeichen bei der übertragung zum LCD generiert? Ich habe hier noch so ein Epson Display liegen und würde dieses gerne als ersatzt für ein 240x128 sed1330 benutzen. Worauf ich eigentlich hinaus will.... :) Textscrolling. Also wenn die letzte Zeile voll ist, alles eine Zeile nach oben um unten wieder eine freie Zeile zu haben. Bei dem sed1330 laesst sich das recht komfortabel durch das setzen der Startadresse des angezeigten bereichs im Ram und doppeltes schreiben der empfangenden Zeichen (einmal im sichtbaren, einmal im nicht sichtbaren Bereich) loesen. Wenn die Character allerdings als gfx im ram liegen muesste mann den kompletten Bildschirm aufwendig auslesen und wieder zurückschreiben, was von der Performance nich so doll sein sollte.
Da der Controller für Grafik ausgelegt ist, werden die Textdaten als Bilder in den Grafikram kopiert. Nur so ist überhaupt die Ansteuerung eines so großen LCDs mit einem AVR möglich. Es ist zwar nicht optimal, funktioniert aber.
Hallo, ich hab ein Sharp lm641542 mit der Schaltung von Benedikt und der Unterstützung von Udo zum laufen bekommen ... Leider ist es aber defekt, die Kontakte der oberen / unteren Leiste sind fehlerhaft, es fehlen ca. 90% der senkrechten Linien. Mit etwas drücken bekommt man das Logo noch zu sehen. Meine Frage, hat jemand noch so ein Teil über bzw. was ähnliches in 640x480, so dass ich nicht alles in die Tonne werfen muß ? Holger
@Holger W. Ich habe Mehrere dieser LCD's nagelneu zu liegen, ohne HG-Beleuchtung. Leider fehlt mir im moment noch das Wissen und die Zeit diese schaltung aufzubauen. Wenn du mir bei dem Aufbau helfen würdest, wär ich gerne bereit dir eins zu überlassen. Gruß David
Hallo David, klar helfe ich dir. Hab eine Leiterplatte dafür gemacht. Mail mir mal: howl(at)gmx.de Gruß Holger
Hello, is there a possibility to put a tutorial in english? Thank you very very much in advance... Theodoros
Hat schon jemand eine Lauffähige Version hinbekommen, bzw. muss man da auf was achten beim nachbau? gruss Sebastian
An sich völlig problemlos. Beim Brennen auf die Fuses achten. http://howl.gmxhome.de/Decoder/images/LCD01.jpg Holger
das sieht ja echt gut aus , welche variante benutzt du , die USB ? das einzigste problem was ich immoment haben is das Platine Ätzen, da ich das noch nie gemacht hab. und ich weiß nicht genau was wo an das Disply angeschlossen werden muss Auszug aus dem Datenlatt: 1 RFLS Line Frame Start 2 RLLCLK Line Latch Clock 3 RVDCLK Video DATA Clock 4 LC PWR +5 VDC Logic und LCD Power 5 GND 6 VBAIS contrast Voltage -5 bis - 26V 7-14 DATA Was mus nun wo dran ? gruss Sebastian
Ich verwende die serielle Variante mit 115200 Baud, die seriellen Daten kommen wiederum aus einem PIC, der über I2C angesteuert wird. Da ich nur wenige Änderungen im Screen habe, ist das von der Geschwindigkein her ausreichend. Der PIC liest auch noch die Daten vom Touch aus (der auf dem Bild nicht zu sehen ist) Ich stelle nur ASCII Zeichen dar, die ich selbst definiert habe. Was muss wo ran. Wenn du hier den Thread aufmerksam liest, findest du es heraus. Ansonsten muß ich heute abend mal nachsehen, hab die Daten nicht hier. Holger
1 RFLS Line Frame Start ist FLM 2 RLLCLK Line Latch Clock ist LP 3 RVDCLK Video DATA Clock ist XSCL 6 VBAIS contrast Voltage -5 bis - 26V ist VLCD Data kommt an die 8 Ausgänge UD0-3 und LD0-3 Ob erst UD0-3 oder erst LD0-3 kommen muss man meist ausprobieren.
@Benedikt nachdem es diese Displays ja nicht mehr einfach zu kaufen gibt, was hälst Du von diesen hier : Pollin Bestnr. 120 319 oder 120 320. Wäre es noch möglich das ganze mit einem ATMEL zu lösen ? Oder wäre es nur noch möglich das Bild immer von einem CPLD zu erzeugen und dann mit einem ATMEL die Bildänderungen an den CPLD zu senden; und wenn diese gesendet wurden- diese dann wiederum an das Display zu schicken ?? Gruß Sven
Die Displays sind halt nochmal eine Nummer größer und dazu noch in Farbe. Irgendwo weiter oben habe ich mal eine Testschaltung gepostet um ein Farb LCD mit 640x480 mit einem AVR anzusteuern, aber die Schaltung war schon recht aufwendig und noch dazu sehr langsam. Die Pollin Schaltung habe ich mir auch schon angeschaut, eigentlich eine schöne Idee. Den CPLD gibts bei Pollin, aber wo bekommt man den Rest der Schaltung und vor allem die Software dazu ??? Ansteuerschaltungen mit CPLDs lohnen sich nicht wirklich, denn ein fertiger LCD Controller (z.B. von Epson) kostet nur etwa 10-20, genausoviel wie ein ausreichend großer CPLD. Und der Controller bietet dann noch weitere Features. Allerdings hat man bei beiden das Problem mit dem Gehäuse: 0,4mm Raster, 80-144Pins (z.B. S1D13xxxx Controller von Epson)...
Das mit dem Farbdisplay von Pollin würde mich aber auch interessieren, ob man das zum Laufen bekommt. Dann mit "einfacher" Schnittstelle (seriell, parallel, USB) und, wenn möglich mit Zeichensatz. Holger
Hallo alle zusammen!!!! habe ein 9" Sharp LM64P701 Display. Und wollte mal fragen ob es dafür einen Plan gibt um dieses display über eine S-Video schnitstelle laufen zu lassen?? mfg Andy
S-Video heißt Fernsehsignal, keine Computernorm. Es gibt Displays speziell für TV, ist dieses Sharp-Display dafür gebaut? Sonst hilft nur ein Normwandler "TV auf VGA" für ca 50 Euro z.B. von ELV.de und eine VGA-Controllerkarte.
Das display ist aus einem altenNotebook! und ich habe 0 ahnung von sowas! und wollte es über s vido halt nun so betreiben! es hat zwei drähte für die Gasentladungslampe an der seite und einen 20 poligen daten anschluss! mfg andy
Wenn du wirklich Null Ahnung hast, dann vergiss es am besten ganz schnell. Fertige TFT Monitore mit Video Eingang sind nicht mehr teuer. Und der Aufwand Video->VGA->TFT/LCD ist nicht so ganz ohne (AD Wandler->Videodekoder->Framerateconverter/TFT Controller). In Monitoren werden Spezial ICs verwendet, ohne die hat man kaum eine Chance.
da sind ja schon einige IC´s drann! Oben 8 mit steuerleitungen zum Panel Rechts 5 mit Steuerleitungen zum Panel Unten 8 mit steuerleitungen zum Panel und es sind dann 20 daten anschlüsse sprich Flachbandkabel und 2 zur Kaltkathoden Leuchte! mehr weis ich nicht von dem ding! und Vergessen werde ich es nicht denn ich will mir ja es aneignen (das wissen um sowas zu basteln!). mfg andy
Das sind üblicherweise je 6-8 Datenbits für rot/grün/blau, dazu Pixeltakt, Horizontal- und Vertikalimpuls und die Betriebsspannungen. So kommen schnell über 20 Leitungen zusammen.
die Daten pinns sind mit 1- 20 beschriftet und mit "FFC" unbd geheb dann noch auf 2-3 andere IC´s (so ne art verteiler) mfg andy
FFC heißt nur Folienverbinder, hat also nichs mit dem Display zu tun. Versuch mal ein Datenblatt zu finden. Ohne hast du höchstens mit funktonierender Ansteuerung eine Chance.
Schau mal nach, wie die ICs heißen, Datenblätter sind oft hier zu finden: http://www.alldatasheet.com/ http://www.datasheetarchive.com/ und so kann man die Anschlußbelegung mit einem Ohmmeter suchen.
Mal ne Frage an die "Experten" seht ihr ne Chance das ganze auf nen AVR Mega16 zu Portieren? der kann ja maximal 16Mhz, sind die 18,... mhz zwingend erforderlich? (Vieleicht für das Timing?)
Nein, 16MHz reichen auch. Theoretisch kommt man mit etwa 10MHz aus, aber das Laden neuer Daten wird dann sehr langsam. Ein mega16 geht nicht, da der keinen externen Bus hat. Wiso auch ? mega8515 ist billiger als der mega16.
Ups... hast recht. Hm, okay :D jezt msus ich noch ne passendes SRAM suchen, hab bei mir leider nurnoch 256k x8 gefunden, ich seh doch richtig das 512k x8 mindestens benötigt werden oder?
Nein, 64kx8 reichen. Aber der RAM muss maximal 55ns Zugriffszeit haben (besser <30ns)
Hab hier noch nen Stapel UM61256 rumliegen, aber nur nen Datenblatt für die UM61512 gefunden dort wird 15/20/25ns maximale Zugriffszeit angegeben, ich fürchte nur das die 256 für 32k x8 stehen sollen :( Kann man zwei solcher Chips zusammenschalten um auf 64k x8 zu kommen??
Ja, genauso habe ich das auch gemacht. Alle Pins direkt verbinden, nur die CS\ Pins getrennt anschließen (wie im Schaltplan angegeben)
Hallo hab gesehen, dass ihr hier auch von einem Sanyo LM-CA53-22NSZ Display schreibt. Nun ich bin seit heute auch stolzer Besitzer eines solchen Displays, hab aber keine sonstigen Date dazu. Kann mir vieleicht jemand sagen, wo ich ein Datenblatt dazu finde? Danke für eure Hilfe mfg Philipp
Schau mal ob die Belegung passen könnte. Das ist das einigste was ich dazu habe.
Hallo Benedikt danke für die Pinbelegung, passt genau. Meine Frage nun, ist es ein grosser Aufwad, deine Software so umzuschreiben damit Sie zu diesem Display passt? Wenn nein, was muss ich alles ändern? Noch ne andere Frage, hat es einen speziellen Grund, warum du einen Atmega8515 nimmst, oder kann ich da auch einen Atmega16 mit 16 MHz nehmen? mfg Philipp
Der mega8515 kann einen SRAM direkt ansteuern, beim mega16 muss man das in Software machen, und dann wird alles zu langsam. Die Software für 640x480 Farbdisplay war eigentlich nur ein Versuch. Eine fertige Software gibt es dazu nicht. Wenn ich dazu komme, werde ich in den nächsten Tagen alles zusammensuchen, was ich an Software dazu habe.
Hallo, ich erfolge das Thema LCDController mit AVR schon seit langem und solche Ansätze schon mit Maxim DS89C420 (8051-Derivat) mit internem 1KB RAM am laufen gehabt. Leider fehlt mir immer mehr die Zeit für diese "Spielerein". Darum löse ich meine LCD-Sammlung auf. Ich möchte hiermit auf meinen LCD´s im Marktplatz (http://www.mikrocontroller.net/forum/read-3-430652.html) aufmerksam machen. Darunter befinden sich auch "Zuckerln" wie ein Touchscreen LCD. Viel Spaß und Erfolg Philipp P.S. ich hoffe diese "Werbung" ist erlaubt.
Hallo ich habe ein LM641542 von Sharp und möchte dieses gerne per FT232 ansteuern. Die Hardware habe ich auch schon aufgebaut (nach Bild im Anhang). Nun bin ich daran den mega8515 zu programmieren. Kann mir jemand die aktuelleste Version, die zu meinem Display passt hier posten. Wie muss ich die Fuses einstellen? (Ich benütze AVRProg vom AVRStudio) Mit welchem Programm kann ich die daten vom PC rüberschicken? Danke für eure Hilfe Philipp
Hi, hab hier ein LM641542 rumliegen und würde das gerne mit hype ansteuern. Könnte einer so nett sen und alles was ich dafür brauche posten. (schaltplan,hype treiber usw.,das was ich iregndwie in den 8515 proggen muss) Danke schonmal im voraus
Ich hab ma ne Frage zu dem usb Schaltplan für die Monocrom dinger... was ist dadrauf der ic2? wie muss ich diesen ft232 anschliessen? hänge ich da einfach TXD und CTS und nen usb kabel daran und das funktioniert? kann einer diesen ft232 bitte mal in den schaltplan itegrieren?
@ Absoluter Noob Hier findest du alles zusammengefasst: http://mitglied.lycos.de/bk4/lcdcon.htm @ tasse Ich habe mal den FT232RL mit der Schaltung verbunden. Mit den älteren FT232 geht es genauso, nur benötigen die noch Quarz, EEPROM usw. wie im Datenblatt unter "Bus Powered Configuration" angegeben.
gut danke das habe ich jetzt glaube ich begriffen. aber was ist der IC2 auf der schaltung? is das der sram? welchen brauche ich da?
Stimmt, in Benedikts Plan ist keine Bezeichnung an IC2, außerdem ist im oberen Schaltplan ein Pin nicht beschriftet, der mit A15 verbunden ist, das ist die Version mit 64k*8. Aber im Text steht ja dass es entweder, nach der unteren Schaltung, zwei aufeinandergelötete Cache-Rams (nur der Pin "CS" ist getrennt angeschlossen) oder schnelle normale CMOS-Rams mit 32k*8 sind, oder (nach der oberen Schaltung?) ein einzelnes 64k*8. Diese 32k*8 RAMs gibt es auf alten "486er" Motherboards im Schrott zu je 8 Stück. Die 64k*8 sind seltener.
Wenn gerade kein Schrott aufzureiben ist, Reichelt hat nicht mehr viel mit 55 nsec, nur noch das hier: DIL 32 512Kx8 55ns =K6T4008C1B-DB55 BestNr. 628512-55 3,70 Euro oder dasselbe in SMD nur 2,60 Euro BestNr. 628512-55 M da wären die Adressleitungen A16 -A18 auf GND zu legen, dann geht das auch. Datenblatt zum K6T4008C1B : http://pdf1.alldatasheet.com/datasheet-pdf/view/37102/SAMSUNG/K6T4008C1B.html
Hab mir die Schaltung mit dem FT232 aufgebaut. Kann mir jemand sagen wie man da ein Bild mit HTerm rüberbekommt. Weiss nicht, was ich da so einstellen muss. Kann vieleicht jemand ein Screenshot davon machen?
hi! habe ne frage und würd mich sehr freun wenn ihr mir helfen könnt! also.. hab aus meinen alten laptops die displays (sharp lm64p762 (s/w) und sharp lm-jk63-22ntr (farb)) ausgebaut und würde diese gerne mit meinen atmega16 oder wenn möglich atmega8 ansteuern. Leider habe ich weder ein datenblatt noch irgendwelche Ahnung wie die dinger beschalten werden und wie man einen µC so programmiert das die dinger laufen!! hoffentlich könnt ihr mir helfen. danke im voraus!! mosa
Wenn die Laptops noch funktionieren, kannst du versuchen die Timingsignale zu messen und so die Anschlussbelegung herauszufinden. Ansonsten wird es ohne Datenblatt schwer. Mit einem mega8 oder mega16 wird das aber nichts, da diese zu wenig RAM und kein Interface für ein externes RAM haben.
aha. naja die laptops waren mehr oder weniger kaputt!! sie liesen sich nicht mehr starten. aber könnten sie mal schaun ob sie ein datenblatt finden vll kennen sie eine bessere seite als ich wo man datenblätter her bekommt. für was braucht der so viel ram??
mosa wrote: > aber könnten sie mal schaun ob sie ein datenblatt finden vll kennen sie > eine bessere seite als ich wo man datenblätter her bekommt. Mehr als in google suchen kann ich auch nicht, das ist auch meine einzige Quelle. >für was braucht der so viel ram?? 640x480=307200 Pixel Soviele Bits an RAM braucht der uC. Man kann die LCDs zwar auch ohne RAM ansteuern, aber dann hat man halt nur ein schwarzes oder weißes Bild, oder ein paar einfache Karo oder Streifenmuster, aber das ist ja sinnlos.
naja kann man nix machn. muss ich mir was anderes suchen. trotzdem danke!!!
Schon gelesen: Elektor 12/2006 Seite 84-87, ähnlich einfach wie Benedikts Schaltung, aber mit einem DRAM und ATTiny2313. Webseite des Autors: http://sprite.student.utwente.nl/ aber dieses Projekt ist nur knapp mit zwei Dateien zu finden, der Rest nur über die Elektor-Seite http://sprite.student.utwente.nl/~jeroen/projects/lcdc-avr/
Besonders schön die Abbildung des Servers. Ein echter Profi "man sieht sofort dass hier Profis am Werk waren -- aber nein, Herr Kommissar, in dem Zimmer waren die Einbrecher garnicht"
Ich habe mir die Schaltung angesehen: Interessante Idee, daraus könnte man was machen. Die aktuelle Software ist aber eigentlich nur einfach: Das Timing ist so schnell wie möglich, bei kleinen LCDs zu schnell, bei großen zu langsam. Außerdem flackert das LCD jedesmal wenn man Daten sendet, da die gerade aktive Zeile dadurch länger eingeschaltet ist. Wenn ich das mal durchrechne: Bei 320x240 benötigt man 40 Transfers für eine Zeile, das macht 80x20Takte, also etwas über 80us bei 20MHz Taktfrequenz. Für 240Zeilen braucht die Software daher etwa 20ms. Somit sind 50Hz Framerate möglich. Das ist schon unterste Grenze. Für kleine LCDs ist die Software aber durchaus brauchbar.
Hallo Benedikt, ich habe auch das lm-ca53-22nsk und würde das ganz gern mal ansteuern, hast du mitlerweile ein Datenblatt? Währe toll, wenn du mir mal die Pinbelegung des lm-ca53-22nsk Posten könntest. Grüße earlyperl
Bin ich froh diesen Link gefunden zu haben! Ich wollte schon immer mein Farb LCD aus einem 486 benutzen, und jetzt habe ich, hoffentlich, all die Information um anzufangen. An dich Benedikt wollte ich wirklich sagen BRAVO! du hast ja wunderbare Arbeit geleistet. Nun wollte ich was ueber die Farben fragen: man steuert jedes Pixel mit drei Bit (RGB). Wie schafft man es dann Farben mit 8 oder mehr bit anzusteuern? Ist das so wie mit den "greyscales" auf einem SW Display? Wenn ja, muss man die Frequenz erhoehen (statt 60Hz, 120Hz fuer 6 Bit Farben)? Ich hab fuer dieses Thema herumgesucht und nichts gefunden. Es gab dann auch die rede von Speciellen ICs die all die Arbeit machen. Was gibts denn da fuer so ein 486 Display dass nicht teuer oder zu kompliziert ist? Danke im voraus! Josef
@chnaideur Graustufen/Farbstufen: Mehrer Bits pro Farbe werden dadurch relalisiert, dass man z.B. den Pixel nur jedes 2. Bild einschaltet. Schon hat man 3 Farbwerte: Aus, 50% an, 100% an. So kann man noch weitere Stufen einführen, aber spätestens bei 16 Stufen ist Schluß, da die dunkelste Zeile in diesem Fall nur 1/16 der Zeit an ist, und selbst bei 200Hz Bildfrequenz die dunkelsten Pixel nur 12,5x pro Sekunde kurz an sind. Das führt vor allem bei großen Flächen zu einem Flackern. Außerdem hat ein LCD eine gewisse (nichtlineare) Kennline. Die 16 Graustufen sind also nicht gleichmäßig verteilt, und daher machen mehr als 16 Stufen keinen Sinn. Gute LCD verteilen die ein und ausgeschalteten Pixel gleichmäßig über die gesamte Fläche, so dass man das Flackern nicht so deutlich warnimmt. Controller sind z.B. die S1D13xxx Reihe von Epson. Controller die allerdings Farbdisplays mit 640x480 und größer ansteuern können, sind aber meist nur im >100 poligen Gehäuse mit 0,5 oder 0,4mm Pinabstand erhältlich. @ earlyperl Die Belegung muss ich mal nachmessen, da ich das Datenblatt nichtmehr finde. Es kann daher noch ein paar Tage dauern.
Herzlichenn Dank fuer die schnelle Antwort. Jetzt muss ich nur noch das ganze entwerfen und bauen, und dann zu testen anfangen! Ach ja, und spezielle Chips hab ich mir angeschaut, da verkauft jemand fuenf SED1353F auf ebay ziehmlich billig. Nun gut, ich werd schon sehen. Gruss, Josef
Ich versuche gerade, das LM038QB1R10 ans laufen zu bekommen. Hat jemand eine Bezugsmöglichkeit für das Flabandkabel (24 pol. x 0.5mm) und einen passenden Gegenstecker gefunden? Danke schon mal, Udo
Hallo Suche dringend dieses Display. lm-jk63-22ntr Kann mir jemand helfen Mfg
Hallo Bin neu hier im Forum. Ich suche eine Möglichkeit, um das LCD Display mit einem Videosignal ansteuern zu können (siehe Bild). Das Display inkl. Elektronik stammt aus einem defekten Camcorder. Nun möchte ich dieses Display extern als kleinen Monitor benutzen. Am besten wäre es, ich könnte es mit einem Cinch Kabel verbinden. Das Display hat 24 Kanäle auf dem Flachbandkabel, welche zu der Platine führen. Von dort aus führen dann weitere Kabel weg. Welche Kabel muss ich mit welchem Videosignal verbinden, dass ich ein Bild auf dem Display bekomme? Habe leider nicht viel Ahnung von Elektronik. Ein Schaltplan würde mir aber viel weiter helfen. Gruss Dennis Marton
dear sir i have a sharp LCD LM64035 . and i dont have any information about it (no datasheet & pinout). thanks if you can help me . with best regards Mehdi Alavi
Dear Sirs, Please help me how interfacing CFAG320x240 with atmega128. Best regards, Ivica Lacmanovic
Habe da ein Problem. In meinem Datenblatt sind die Signale mit CP1 - Input Data Latch Signal CP2 - Data Input Clock Signal S - Scan Start-up Signal bezeichnet... welche der Bezeichnung gehört nun zu welcher im Schaltplan??? Ein ratloser Läubi
Ich hab mich dieses Wochende mit der LCD/Thematik beschäftigt und bin dabei nen eigenen Adapter zu basteln. Sollte eigentlich auch auf nem 8515'er basieren, aber ich hab' Massive Probleme mit dem Timing. Um ein vernünftiges Bild hinzubekommen, brauch ich ja nen sehr hohen Pixeltakt, da Line und Frame darauf basieren. Bei 40Hz Wdh mach das 9,6Khz Line und ca 1,5 Mhz Pixel. So. Das würde aber heißen, dass ich mit nem 10MHz 8515 (mehr macht der laut datenblatt und eigenen versuchen auch nicht) maximal 6Zyklen habe, um ein Byte ins Display zu schreiben. Wie geht das dann aber mit dem Speicherauslesen/etc? Womit wird das Display in der zwischenzeit beschäftigt? Bei mir hatte ich mir das jetzt so gedacht, dass ich das Display übern Latch direkt an den Ram hänge und den Ram mit nem Zähler (74XX4040) adressiere, der von nem Oszillator getaktet wird, der auch das display versorgt. Deweiteren gibt's n paar kleine probleme mit dem zeilensprung, ich wollte das mittels eines &-Gatters lösen, dass dan bei 160 also 00000101 LP taktet und den Zähler zurücksetzt. Dann gibt's noch nen kleinen 2313, der die Wiederholrate generiert (funktioniert noch nicht ganz) und später dazu da sein soll, die Verfügbarkeit vom RAM zu steuern. Ich hab's bis jetzt nur bis zu nem Testmuster ohne RAM geschafft, mangels passender Gatter muss das ganze noch ein wenig warten. Der Vorteil ist aber, dass der RAM ähnlich wie Vesaram funktioniert und daher vllt auch so verwendbar wird. Kann mich trotzdem mal jemand aufklären, wie das Timing beim 8515 gelöst wurde? Hab' mir da gestern fast die zähne dran ausgebissen. der Vinc
Peter_G wrote: > So. Das würde aber heißen, dass ich mit nem 10MHz 8515 > (mehr macht der laut datenblatt und eigenen versuchen auch nicht) Quatsch. Der macht 16MHz laut Datenblatt, und lässt sich meist auch noch ein wenig übertakten. > maximal 6Zyklen habe, um ein Byte ins Display zu schreiben. Der AVR benötigt 3 Takte für einen externen Zugriff, man hat also noch etwas Zeit um neue Daten zu laden. > Bei mir hatte ich mir das jetzt so gedacht, > dass ich das Display übern Latch direkt an den Ram hänge und den Ram mit > nem Zähler (74XX4040) adressiere, der von nem Oszillator getaktet wird, > der auch das display versorgt. Das funktioniert, ich mache ja im Prinzip nichts anderes, nur eben per Software. Nur, wie willst du neue Bilddaten in das RAM bekommen ?
Ist es eigentlich absicht das auf deiner Page mal nen 18,.... irgenwas QUarz und einmal nen 16Mhz quarz verwendet wird?
Jain, ich verwende meist 18,432MHz, da dies 115,2kBaud ergibt, wenn ich den UART verwende. Für ein Display das im Dauerbetrieb läuft habe ich 16MHz verwendet, um auf der sicheren Seite zu sein, auch wenn das LCD dann eventuell etwas flimmert.
Hallo Benedikt, hab mit Intresse diesen Thread gelesen und mich entschlossen Deinen Controller nachzubauen. Leider hab ich auf dem Gebiet keinerlei Erfahrung, aber irgentwo/wann muss ma mal anfangen. Eine Frage wie krieg ich denn die die zwei 32k SRAM Steine zu einem 64k, ich nenns mal Array, zusammengeschlossen? Du benützt ja in deinem Beispiel einen 64k Stein. Und gleich noch was. Was ich noch nicht kapiert hab, wie wird der FT245 angeschlossen? Ich mein Ground, 5V, USBDM, USBDP sind ja klar, aber die restlichen PINs des FT245? Werd wohl noch öfter Fragen haben, also sorry wenns noch unübersichtlicher wird. Grüße, Norbert
Siehe hier, da werden auch 2x 32kB und ein FT245 verwendet: http://mitglied.lycos.de/bk4/dl/8bit/lcdcon_FT245_2.gif
Hmm, also in der Schaltung kommt CS von SRAM 2 über des NOR-Gatter, ok. Aber wo kriegt der zweite RAM die Daten her, kann ich den einfach parallel zum ersten RAM schalten? Also an den ATMEGA und an das Latch?
Hi Benedikt, Erst mal WOW was ein Mega Threat! ;) Wie auch schon ein paar andere in diesem Threat habe ich ein MD640.400-(54) Jedoch MIT Datenblatt, meine Frage währe, ist es möglich es mit deinem Controller anzusteuern? Schön wär wenn es mit LCDHype Zusammenarbeitern würde. Zu mir ich bin Elektroniker... leider noch kein Programmierer aber ich bin auf dem besten Weg dazu ;) Grüße aus Stuttgart
Dieses Display lässt sich prinzipiell ansteuern, allerdings nur mit etwas zusätzlichem Aufwand. Man müsste die Software, und die Hardware so anpassen, dass sie die Daten Pixel für Pixel anstelle von 8 Pixel auf einmal ausgibt. Das Problem ist: Man muss irgendwie einen Takt erzeugen, der 8x so hoch ist und einen Schaltungsteil der 8bit annimmt, und die Daten Bit für Bit ausgibt, daber 8x so schnell. Wie man das ohne viel Aufwand machen kann, dafür fällt mir spontan keine gute Lösung ein.
Tiny15 mit PLL und Parallel zu Seriell Wandeler IC ?? ;)
So ganz wird das nicht gehen: Dann hat man einen freilaufenden Takt mit 25,6MHz, der einem nicht viel bringt. So einfach ist das leider nicht, da die Datenrate von meiner Software nicht konstant ist: Die Daten kommen mit etwa 16MHz/3 in 8bit Packeten raus, aber nur 4x, danach ist erstmal eine 16MHz/2 Pause, ehe die nächsten Blöcke kommen.
Danke Benedikt für deine Antwort sieht wohl etwas komplexer aus aber ich dachte, aber dann hab ich schon mal ne Übung, vielen Dank.
Help to find the datasheet or pinout LCD LM-CA53-22NSZ. Thanks!
Hallo, erstmall.....WOOWWW, ein tolles project. ich habe hier ein LM215 rumliegen. Das datenblatt ist angehängt. Meine frage ist ob sich das ding mir der schaltung hier auch betreiben lässt? p.s. hat jemand eine ahnung wo ich ein (oder 2) hd61830b bekommen könte (ob der preiss immenoch so hardcore ist)? mfg.
gregor wrote: > Hallo, > erstmall.....WOOWWW, ein tolles project. > ich habe hier ein LM215 rumliegen. Das datenblatt ist angehängt. Meine > frage ist ob sich das ding mir der schaltung hier auch betreiben lässt? > > p.s. hat jemand eine ahnung wo ich ein (oder 2) hd61830b bekommen könte > (ob der preiss immenoch so hardcore ist)? > > mfg. Im Prinzip müßte das gehen, ABER du mußt ggf anpassungen vornehmen weil dein Display aus 4 Teilen besteht, Benedikts code aber für 2 "Teile" ausgelegt ist.
Ja, da wird eine wilde Bitschieberei, beim Erstellen eines Bytes. Wenn man die Software für das 320x240 Display benutzt, dann würde ein Byte für 2 Takte ausreichen. Ein Byte wäre dann folgendermaßen aufgebaut: Oben Links 1, Oben Rechts 1, Unten Links 1, Unten Rechts 1, Oben Links 2, Oben Rechts 2, Unten Links 2, Unten Rechts 2 bzw. wenn man das ganze ein wenig intelligenter verdrahtet, so dass das erste Nibble geraden Bits verwenden, und das zweite die ungeraden, könnte man es auch so machen: Oben Links 1, Oben Links 2, Oben Rechts 1, Oben Rechts 2, Unten Links 1, Unten Links 2, Unten Rechts 1, Unten Rechts 2 Wobei der Geschwindigkeitsvorteil vermutlich nur minimal wäre. Auf jedenfall muss die Software vor allem in dem Teil, der die Daten ins RAM schreibt angepasst werden.
ahaha....eigentlich habe ich gehofft, dass ich die 4 teile separat, also mit eigenen controller, betreiben kann, leider geht das nicht... Was mich am meisten interresiert hat ist, ob man das Ding auch ohne den hd61830 betreiben kann, wie schnell die seite aufgebaut wird ist mehr oder weniger egall....sollte aber nicht 1s. überschreiten. Ich probiere jetzt die Soft von Benedikt umzufummeln (c währe mir lieber). P.S. ist das auch unter C machbar? hat das schon jemand.
Hallo Erstmal allen ein gutes neues Jahr! Ich habe bei mir noch ein LM-35CA-22 Farb-LCD rumligen, ich habe gesehen, dass Benedikt das auch schon benutzt hat. Hat jemand noch ein Programm, welches mit diesem LCD funktioniert. Falls nicht, kann man das LCD auch als SW-LCD mit der Schaltung und dem Programm einse SW LCD's missbrauchen? mfg Philipp
Hallo Habe mal das Project verfolgt Einfach klasse. Ich suche eine Lösung für eine Anzeige von Sensordaten Wind /Druck Temp. Ich habe ein S/W Display von Sharp LM64P723 baugleich mit 723. Kann ich das ganze mit einen Mega 128 machen??? gibt es den Quellcode auch in c kann kein Assembler. Wieviel SRAM benötige ich und wo kann ich ihn ausbauen oder bestellen habe noch alte PC Hardware ist da vieleicht einer drin??? Hat jemand vesucht schon Fonts auf das Display zu laden??? z.B WIND 203 / 10kt (ca 2cm hoch die Schrift)??? Danke
micha wrote: > Kann ich das ganze mit einen Mega 128 machen??? Ja, es ist aber ein paar kleinere Anpassungen des Quellcodes notwendig (Register, Pins, Speicherbereiche usw.) > gibt es den Quellcode auch in c kann kein Assembler. Nein. C ist dazu zu langsam. > Wieviel SRAM benötige ich und wo kann ich ihn ausbauen oder bestellen > habe noch alte PC Hardware ist da vieleicht einer drin??? Cache SRAMs aus 386er, 486er und die erste Generation Pentium Boards. Oder aber jeden anderen SRAM mit <35ns. Langsamere SRAMs funktionieren auch, wenn man den Code anpasst (Waitstate einfügen). Allerdings wird alles dabei ein wenig langsamer.
Hi, ich war hier schon einmal anwesend, musste aber aus Zeitgründen meinen Focus auf die Arbeit richten. Nun bin ich ja wieder etwas freier... Nun zu meinen Fragen: Ich benötige für einen Linux Server (3* Sun Cobalt Raq4i) ein Status-Display. Die Geschwindigkeit ist mir immo eigentlich egal, nur, es MUSS seriell sein, da ich keine Möglichkeit hab, USB oder Paralell nach zu rüsten. Ich bin im Besitz von 7* Sharp LM641542 (640x480px, s/w) neu, mit schutzfolie sowie einem Samsung LT150x3-126 (1024x768px Farbe) Wer kann mir eine bezahlte Schaltung bauen, seriell. Wer möchte, bekommt auch so ein Display von Sharp... und noch was: @Benedikt: Interesse an einem Forum, wo man die Schaltungen, etc unter verschiedenen Topics listen und besprechen kann??? ich bin im Besitz eines root-servers, wo ich relativ unabhängig bin... Gruß Björn
Noch eine Frage, ich lese, das Speicher-bausteine Rar sind. Kann man auch ehemaligen RAM von PCs, etc verwenden??? ich hätte da noch einen alten Laptop speicher: insgesamt 64MB - 8 IC mit der Aufschrift: Mitsubishi M2V64S40BTP TAIWAN00699F1E-8 sowie diverse SIM-Module - allerdings allesamt mit sowas um die 60-80ns... Gruß Björn
hast du dir mal überlegt, wegen dem seriellen display? ich würde es ja auch bezahlen, und nen display zum testen schicken... ich bräuchte auch nur wie bei: http://www.mikrocontroller.net/attachment/8473/lcdhype.jpg links oben, bzw. rechts unten diesen teil - Grafiken wären schön, aber nicht nötig... und das halt für verschiedene server unter linux... wieviel kostet so eine ansteuerung überhaupt... Gruß Björn
Björn Cremer wrote: > Die Geschwindigkeit ist mir immo eigentlich egal, nur, es MUSS seriell > sein, da ich keine Möglichkeit hab, USB oder Paralell nach zu rüsten. Seriell heißt maximal 115200Baud, also ca. 11kByte/s. Ein Vollbild (mit Grafik) benötigt fast 4s zum laden. Im Textmodus (80x60 Zeichen, 8x8 Schriftart) kommt man auf etwa 0,5s. Schrift und Text kann man auch beliebig mischen (also z.B. einmal den Hintergrund laden, danach nur noch Text.) > hast du dir mal überlegt, wegen dem seriellen display? ich würde es ja > auch bezahlen, und nen display zum testen schicken... Schreib mir mal eine email: benedikt83 äht gmx punkt net
Hallo, ich bin auf diesen Thread gestossen, da ich 8 dieser 640x480 LM 641541 Displays von Sharp bekommen habe. Habe versucht alles durchzulesen aber bin wohl etwas spät gekommen. Nur eine Frage zum Grundverständnis: Haben diese Displays einen internen Puffer, d.h. man schieb die Daten rein und sie bleiben sichtbar bis zum nächsten Datensatz, also so wie ein normales Characterdisplay auch funktioniert. Oder muss man dauernd Daten mit der Frequenz (ca 60 Hz) reinschieben?
Christian J. wrote: > Haben diese Displays einen internen Puffer, d.h. man schieb die Daten > rein und sie bleiben sichtbar bis zum nächsten Datensatz, also so wie > ein normales Characterdisplay auch funktioniert. Nein > Oder muss man dauernd Daten mit der Frequenz (ca 60 Hz) reinschieben? Ja. Genau das macht diese Schaltung.
Hallo, habe das grad mit einem Kollegen durchgekaut, wird ja etwas aufwendiger. 1 x Grafik-Refresh Controller 1 x Grafik-Engine Controller. 2 x 64hb RAM Baustein da der Zeilenaufbaucontroller eh voll ausgelastet ist und die Grafik Engine im einen Ram die Grafik vorbereitet während die andere schon geschrieben wird. Oder eben mit Dual-Port-Ram aber die werden teuer. Und das ganze mit einer SPI an einen Main Controller, der nur noch die High Level Befehle rausgeben muss.
Hallo nochmal, ich glaube, dass mein Display etwas anders ist als jene, die hier besprochen werden. Es hat ein 8 Bit Interface, davon je 4 Bit für die obere Bildschirmhälfte, die anderen 4 Bit für die untere. Ich überschlage grad die Datenrate für einen 18F PIC mit 10 Mhz internem Takt (40Mhz durch 4 = 100ns pro Befehl). Demzufolge müssten pro Sekunde 38400 x 60 Bytes übertragen werden, was 2.304.000 Bytes/s macht. D.h. er müsste alle 4 Zyklen ein Byte raushauen, was mit Latch und unter Annahme eines linearen Speichers der das Bild so gespeichert hat wie es wirklich ist, ja utopisch ist, die Rechnung kriege ich nie mit 4 Zyklen hin, eher mit 40. Und dann wäre überhaupt keine Zeit mehr, dass der Controller sich auch noch extern mit neuen Daten versorgt. Schade, aber für PICs scheint das ganze Vorhaben zum Scheitern verurteilt zu sein, sind einfach nicht schnell genug wegen der blöden 1/4 des Taktes intern.
Christian J. wrote: > ich glaube, dass mein Display etwas anders ist als jene, die hier > besprochen werden. Es hat ein 8 Bit Interface, davon je 4 Bit für die > obere Bildschirmhälfte, die anderen 4 Bit für die untere. Nein, genau für solche ist diese Software- > Ich > überschlage grad die Datenrate für einen 18F PIC mit 10 Mhz internem > Takt (40Mhz durch 4 = 100ns pro Befehl). Demzufolge müssten pro Sekunde > 38400 x 60 Bytes übertragen werden, was 2.304.000 Bytes/s macht. Richtig. > D.h. er > müsste alle 4 Zyklen ein Byte raushauen, was mit Latch und unter Annahme > eines linearen Speichers der das Bild so gespeichert hat wie es wirklich > ist, ja utopisch ist, die Rechnung kriege ich nie mit 4 Zyklen hin, eher > mit 40. Und dann wäre überhaupt keine Zeit mehr, dass der Controller > sich auch noch extern mit neuen Daten versorgt. Ein AVR benötigt für ein Byte 3 Takte. Bei 16MHz wird rund die Hälfte der Rechenleistung für die Ausgabe der Daten benötigt. Es bleibt also noch genügend Zeit um sich um neue Daten zu kümmern.
Hallo, AVR steht mir nich zur Verfügung, nur PIC's. Und von denen schafft nur die 32 Bit S-Klasse in smd Taktraten bis 80 Mhz. In wieweit sich die normalen übertakten lassen weiss ich nicht, manche Rev. A Chips schaffen nicht mal die 40 Mhz ohne nach einer Weile klanglos abzustürzen. Die Daten muss er ja nicht raushauen, sondern nur die richtigen Adressen anlegen damit diese aus dem Ram kommen. Leider ist es dann nur so, dass im Ram bereits die Daten so abgelegt sein müssen, wie sie später auf dem Bildschirm erscheinen und dann wird es sehr schwer Character Routinen etc zu programmieren, die das berücksichtigen, dass die Pixel nicht nacheinander im Ram liegen sondern je vier Bit für oben und für unten. Es würde zuviel Rechenzeit kosten einen linear angeordneten Ram Speicher für das Display aufzubereiten. Grafikroutinen etc erwarten ja, dass die Pixel wie ein Koordinatensystem angeordnet sind. Mir scheint, dass Prozessoren auch keine erste Wahl sind, diese sturen Aufgaben können CPLD's und FPGA's viel besser und schneller erledigen. Mit 100ns Befehlszeiten werde ich es wohl nicht schaffen einen Bildschirm in ca 14ms auszugeben, zudem ich noch den Datenbus vom zweiten Ram abtrennen muss, da der zweite Ram ja vom zweiten Controller gefüttert werden muss, während der erste Controller die Daten reinschaufelt. Da müssen also noch tri-state Buffer zwischen. Mir fällt einfach noch kein gescheites Konzept ein, wie ich mit diesen Kleincontrollern das Ding ordentlich ansteuern kann, so dass später eine komfortable Schnittstelle bereit steht für den Hautpprozessor.....
Ganz grobe Zusammenfassung: Benedikt, das Display funzt derzeit, auch wenn ich noch leichte Probleme mit dem Treiber hab. Der Treiber aktualisiert leider nur sich ändernde daten, ab und zu verschwinden ein paar Sachen, die aber statisch sind, und deswegen ganz wech sind... Aber sonst klappt es recht gut und schnell... Dein Fehler im Treiber waren simpel - irgendwie mag der Compiler keine anderen Zeichen als die Zahlen oben... ich hab dein 640x480 geändert in nur 640 - und siehe da, es ging... jetzt will ich nur noch das Update Prob beheben, mal sehen, ob des klappt... Gruß Björn
Hallo Benedikt, ich habe alles gelesen. Ich möchte ein Oszillograf bauen.Hardwahremäsig habe ich 3 Kanäle, 3 Amp, ein Multiplexer, ADC und alles funkzioniert seriel (Startbit,die Daten,Stopbit,9600 Bod ). Meine Frage: Wie kann ich alles zusammen mit deinem seriellen Controller communizieren. Ich habe SHARP LM32019P. Er hat 4 Datenleitungen. Die Shema bei dir habe ich gefunden, aber Soft, wahrscheinlich past nicht ganz, als Oszillograf. Du hast noch eine Bibliotheck für Oszi geschrieben, aber ich weiß nicht wo soll ich mit der Bibliotheck hin.Ich kann fast gar nicht programmieren,aber villeicht hilft mir jemand.Programmator und alle Programme dazu habe ich schon. Danke
Hallo Jens, Ich habe eben in dem alten Thread von Dir gelesen, daß Du ein MD640.400.52 hast, wenn dieses immer noch ohne Sinn rumliegt, habe ich die Frage: Kann ich es eventuell erwerben, denn ich benötige es für eine Reperatur. Und da wird es sofort eingestzt ! PS: Datenblatt bei Planar im Netz ! mfg R.Schmitt
dear sir : I have one of Sharp product on indices LM64035. But I don't have its manual or data sheet,and by no possibility detect for internet. Please send me its data sheet of this kind of LCD. Thanks... Stevan Pancic
MD 640.400 Hallo H.Schmitt, falls Sie ein MD640.400 noch benötigen, ich hätte noch eins übrig. Mail an schoko (ät) t (minus ) online ( pkt) de Viele Grüße Günther
hallo ich bin völliger neuling und bin auf der suche eines datentenblattes für meinen alten "Toshiba 9.6 STN Color LCD Screen Assy TLX-8062S-C3X" auf euen großartigen Threat gestoßen. jetzt hab ich die frage, ob ich das oben gennate LCD auch mit der stuereung betreiben kann und mir vll. jemend etwas behilflich sein könnte. ich möchte das LCD via USB an meinen PC betreiben und statusinfos und änliches anzeigen lassen. kann mir da jemand weiterhelfen? ein datenblatt zu diesem habe ich bis jetzt auch noch nicht ausfindigmachen können. es sind 2 Steckerleisten vorhenden einem aleine 4pol. für Stromversorgung und einmal eine 26pol. dann warsch. für den datenfluss. danke schon mal vg sebastian
Hi hast du ne Möglichkeit das MD640.400.52 anzusteuern wenn ja wie? Grüße
Hallo Sniper, ja ich habe mir eine Schaltung mit einen CPLD und einem Mikrocontroller gebaut, mit der ich das MD640 als Terminal im Text-Modus ansteuern kann. Bei Interresse kannst du mich unter schoko [ät] t minnnus online punkt de kontaktieren. Viele Grüße Günther
Hallo, ich habe hier schon lange ein Display aus einem Alten Notebook rumliegen, nun wollte ich es sinvoll nutzen. Ich wollte fragen ob ich dieses LCD mit der schaltung benutzen kann zb als statusanzeige? Das Datenblatt dazu habe ich auch gefunden und habe es mal hochgeladen http://www.black-monk.de/LCD/LM-CG53-22NDK/2014930.pdf Ich bin totaler anfänger in Display sachen aber werde mich in nächster zeit stark damit beschäftigen weil mich das sehr intressiert. Folgendes steht auf dem Display. LCD Module LM-CG53-22NDK MFG BlackMonk
Das Display ist leider nicht geeignet, da es sich um ein Farbdisplay mit 2x8bit handelt. Die SW Displays haben nur 2x4bit.
@ BlackMonk Ich möchte demnächst (dieses Wochenende) eine Sammelbestellung für eine "Grafikkarte" starten (eine etwas abgewandelte Form von Beitrag "VGA Grafikkarte mit AVR und 8MB SDRAM"). Du brauchst dann zwar noch einen zusätzlichen uC, aber der 13506 sollte mit deinem LCD umgehen können. Schau einfach die nächsten Tage mal im Markt vorbei.
Schade das es mit der nicht funktioniert, aber ich werde vielleicht an der graka sammelbestellung mitmachen. Gruß BlackMonk
Hi, der Tread ist zwr schon etwas älter aber könte einer für mich so einen LCD Controller bauen? Er müsste mir dann nur noch sagen, was für bauteile er für die schaltung benötigt, Ich werde ihm die Schen dann zuschicken und wenns fertig ist, schickt er das fertig aufgebaute Modul dann zu mir (Lötzinn und Lötkolben kann ich auch gleich Mitschicken). Als Gegenleistung Könnte er ein SHARP LM038QB1R10 LCD Neu von Pollin haben.
Hallo, ich habe mir von oben die LCDconoszi.zip heruntergeladen. Soweit ich das verstanden habe, wird das auf z.B. einen Mega8 ausgeführt und dann Befehle über SPI an den LCD-Controller geschickt, an dem auch das RAM und LCD hängt (Mega8515 oder?). Welche Software muss ich auf dem AVR flashen??? Reicht da die erste von ganz oben?? MFG Max
Max wrote: > ich habe mir von oben die LCDconoszi.zip heruntergeladen. > Soweit ich das verstanden habe, wird das auf z.B. einen Mega8 > ausgeführt und dann Befehle über SPI an den LCD-Controller geschickt, an > dem auch das RAM und LCD hängt (Mega8515 oder?). Ja, genau. > Welche Software muss ich auf dem AVR flashen??? Reicht da die erste von > ganz oben?? Die Software für den mega8515 findet sich hier (lcdcon_spi.hex): http://www.mikrocontroller.net/attachment/8498/setPixel.zip
Hallo Benedikt, ich habe bei mir keine brauchbaren SRAMs. Hast du für mich noch solch ein SRAM da? Wenn ja schreib mir mal ne Mail: RD80MX (äht) web (punkt) de MFG MAX
Hallo Benedikt, Sorry das ich den Fred nochmal rauskrame, aber ich habe eine Frage. Und zwar, ich habe 2 32k SRAMs daliegen, 25nS Typen. Auf deiner Internetseite steht nun das ich gleich 2 32k SRAMs verwenden muss. Stimmt das? Wenn ja wie wird das gemacht?? MFG M.Holder
M.Holder schrieb: > Hallo Benedikt, > > Sorry das ich den Fred nochmal rauskrame, aber ich habe eine Frage. > > Und zwar, ich habe 2 32k SRAMs daliegen, 25nS Typen. > > Auf deiner Internetseite steht nun das ich gleich 2 32k SRAMs verwenden > muss. Stimmt das? Wenn ja wie wird das gemacht?? > > MFG M.Holder Ja du brauchst 2 Stück die stapelst du einfach übereiander, bis auf den CS Pin, im Schaltplan (http://www.mikrocontroller.net/attachment/18601/LCD-CON-FT232RL.gif) gibt es einmal CS und einmal CS2 die kommen dann jemweils an den SRAM1 bzw 2.
FYI:Pollin hat gerade passende Displays, sogar mit Datenblatt. 120623
hallo, könnte mir denn jemand bitte sagen wo die signale am schaltplan (http://www.mikrocontroller.net/attachment/18601/LC...) CP1 - Input Data Latch Signal CP2 - Data Input Clock Signal S - Scan Start-up Signal drankommen danke mfg
hallo Benedikt, erstmal danke,ein frage noch um ein bmp zu laden ist diese befehlsfolge denn richtig 14 14 0 0 bildaten x y mfg kay
Alle Daten werden direkt als Bilddaten interpretiert. Nur wenn der Wert 14 (=Escape Zeichen) in den Bilddaten vorkommt, muss eine zweiten 14 folgen. Die Bildgröße ergibt sich dadurch, dass man einfach die gewünschte Anzahl an Daten pro Zeile schreibt, und dann den Cursor in die nächste Zeile setzt.
Hallo 'Benedikt.Deine Ansteuerung habe ich erst gestern gefunden und muss ehrlich sagen die ist voll geil.Also ich hab auch ein LCD und wollte das mal nachbauen.Also ich hab ein LCD mit dem Namen KCS6448HSTT-X21.Das ist glaub ich ein Farbdisplay(von dem alen Laptop).Das Teil hat ein Anschluss für die Leuchtstoffröhre....Auf jedenfall wollte ich fragen,ob man das irgendwie mit Bascom programmieren kann.Dann müsste man ja die Anschlüsse(D0-8 wie bei einem normalem Display )angeben.Oder wie kann man das so schicken.Ich hab erst angefangen mit AVR.Hab schon 3D cube und so was gebaut.Also kenn mich schon etwas aus.Kannst du mir bitte helfen.Oder kannst du mir eine E-mail schicken;währe besser: hv-labor@gmx.de Danke
Ah ja und noch das Datenblatt.Ich sehe da ein paar Sachen nicht.... Ah ja und noch mal zu programmieren.Sorry hab die Anschlüsse zum RS232 Anschluss übersehen.Aber trotzdem wie schick ich die dahin?
Hallo ich habe auch ein S/w Display von Sanyo das Lcm-5474 ich habe bis jetzt kein datenblat gefunden es hat lcd (A) 15 Pohl und lcd (B) 5 Pohl konnte man das auch an eure Schaltung anstöpseln (Bilder im Anhang) Die cfl würde ich gerne gegen farbige led’s austauschen Danke schon mal im voraus ;D
@Lars Poste mal Bezeichnung und Anzahl der verbauten ICs, wenn du kein Datenblatt findest.
Stani schrieb: > Also ich hab ein LCD mit dem Namen > KCS6448HSTT-X21.Das ist glaub ich ein Farbdisplay(von dem alen > Laptop). Das ist ein 640x480 Dualscan Farbdisplay. Lohnt sich heutzutage nicht wirklich das anzusteuern, denn die passiven Farbdisplays sind nicht wirklich gut was die Farben angeht. Die Ansteuerung mit einem AVR + Zusatzbeschaltung ist theoretisch möglich, lohnt sich praktisch aber nicht. Ein fertiger LCD Controller ist da eindeutig die einfachere Lösung. LARS schrieb: > Hallo ich habe auch ein S/w Display von Sanyo das Lcm-5474 ich habe bis > jetzt kein datenblat gefunden Das Display hat 2x 8 Spaltentreiber mit je 80 Ausgängen, und 4 Zeilentreiber mit je etwa 64 geschätzten Ausgängen. Also wird es ein Standard 640x480 Dualscan Display sein. Die Belegung sollte man relativ leicht herausfinden, indem man die Pins vom Stecker zu den ICs hin verfolgt. So wie das aussieht, gehen die Signale über ein Treiber IC (irgendein 74*24*). Die ersten und letzten 4 Leitungen dürften also die Daten sein. Die Leitungen dazwischen die Taktleitungen.
Kann ich das nicht irgendwie ohne Farben machen?Auch nur schwarzweiß? wehre schade das Teil wegzuschmeißen.Eigendlich will ich einfach nur irgendwas auf dem Teil sehen.z.B irgendwas geschriebenes also kein Bild. Das mit den PC Daten kenn ich auch mit den LCDs(die kleinen),die man an LPT anschließt.Aber währe schon cool so ein großes mit PC-daten zu haben.Ich hab jetzt an meinem Labor auch ein PC gebaut mit LCd aber das Teil ist ganz schön groß und daneben so ein kleines mit PC-Daten währe schon geil.Also kann man das nicht auch mit diesem Controller machen?Hab eh als nächstes Projekt nix im Sinne
Dieses Display benötigt eine kontinuierliche Datenrate von rund 7MByte/s. Das schafft der LPT nicht. Daher muss man das Bild irgendwo in einem Speicher ablegen und es aus diesem mit der entsprechenden Datenrate auslesen. Da das Display die Daten in 8bit Häppchen bekommt, RGB aber 3Bit sind und somit in einem 8bit Paket nur 2 2/3 RGB Pakete unterbringen lassen, wiederholt sich die Zuordnung RGB zu den Bits in den 8bit Paketen erst nach 3 Takten. Daher kann man das ganze nicht ohne weiteres auf Schwarzweiß verdrahten. Ich hatte das ganze mal ausprobiert (Beitrag "Re: LCD Controller für 640x480 LCD mit mega8515"), allerdings ist der Aufwand im Vergleich zu der Schwarzweiß Version erheblich höher, ebenso auch die Ladezeiten der Bilder. Wenn du das Display ohne viele Farben ansteuern willst, würde ich dir einen S1D13706 empfehlen: In diesem IC ist alles notwendige eingebaut, inkl. 80kByte Speicher. Damit sollten 2bpp, also 4 Farben möglich sein. Für mehr Farben benötigt man mehr Speicher. Dies geht z.B. mit einem S1D1350x.
@ Stani Ich hätte noch eine Platine für einen S1D13506 übrig (siehe Beitrag "[S] Leute die eine "Grafikkarte" für uC bauen wollen"). Ein passendes RAM müsste ich auch noch haben. Um die restlichen Teile müsstest du dich allerdings selbst kümmern...
Her ein scan darauf kann man die Verbindungen und Chips ablesen (es sind sehr viele von oki)
was würde das den kosten auf usb und könnte jemand einen schaltplan machen wehre ächt nett ((((( Schuldigung wegen des Doppel posts / O,O \ \ ___ / \ /
also du meintests ja ,dass man 8 bit pro bild braucht.Aber ich nur so schrift schreiben will.z.B irgendwie Hallo Welt oder sowas.Da braucht man doch mnicht so viele Daten um das hinzukriegen.Ich will das irgendwie machen.....
Stani schrieb: > also du meintests ja ,dass man 8 bit pro bild braucht. Pro Bild muss du 640x480xRGB also 900kBit senden und das 60 mal pro Sekunde. > Aber ich nur so > schrift schreiben will.z.B irgendwie Hallo Welt oder sowas.Da braucht > man doch mnicht so viele Daten um das hinzukriegen. Ob Text oder Grafik ist egal, die Daten müssen irgendwo herkommen. Du könntest eventuell versuchen mit einem dsPIC oder ähnlichem in Echtzeit aus Text die Grafikdaten zu erzeugen, dank den 40MIPS könnte das sogar gehen.
naja egal ich kenn mich nicht so gut aus mit Displays also werd ich das leiber nicht machen...... Aber danke auf jeden fall
Also die Chips sind:4;OKI m5299b 11300, 4;OKI m5299b 1152, 8; OKI m5299b 1163,2; OKI m5298a 1401, 2; 2; OKI m5298a 1341 das sind die 80poligen smd’s noch sieben andere ich denke das die 4 mittleren die Display Treiber sind
Die OKI-ICs sind alles Display-Treiber: die M5298 sind die Zeilen-Treiber und die M5299 sind die Spaltentreiber. Datenblätter dazu gibt's hier: http://www.alldatasheet.com/datasheet-pdf/pdf/11201/OKI/MSM5298A.html http://www.alldatasheet.com/datasheet-pdf/pdf/11203/OKI/MSM5299B.html Dort findest du auch eine Art Schaltplan. Anhand dieser Übersicht und der Pinouts müsstest du die Belegung des Steckers feststellen können.
@ all ich probier mahl ob ich es hin kriege aber ich glaube nicht kennt sich jemand damit aus und wo bekomme ich alle Bauteile her bei reichelt ???? . @kichi danke kichi
für eine Schaltung mit usb für mein lcd und was kostet das den???
Ich denke was du suchst gibt es nicht allzuoft. Ich kenne nur eine Lösung: http://www.lcdinfo.com/products/usbd480-lq043.html. Ansonsten bleibt nur der Selbstbau.
Also vielleicht ein usb zu lpt ic gibt es so was ??? oder wie kriege ich’s hin gibt es nicht schon eine Schaltung dafür in diesem thad ?? fragen uber fragen bitte helft mir :,(
hab die Schaltung gefunden tut mir leid aber wie stöpsle ich mein disp da an und wie fiel kostet das den insgesamt ???
Könnte jemand eine Bestell Lise für die USB Version machen z.b für reichelt.de
LARS schrieb: > Könnte jemand eine Bestell Lise für die USB Version machen z.b für > reichelt.de Wieso machst du das nicht selbst? Weiter oben und auf Benedikt's Seite gibt's die Schaltpläne, d.h. du hast dieselben Voraussetzungen wie jeder andere auch (außer vielleicht Benedikt als Entwickler). Sei mir nicht böse, aber wenn du es nicht schaffst aus dem Schaltplan die nötigen Teile herauszulesen wirst du es auch nicht schaffen das Teil zu bauen und zum Laufen zu kriegen.
hallo, habe mir den lcd-controller aufgebaut mit dem pollin display für9,95 ich habe aber probleme mit der anzeige, das logo wird nich richtig dargestellt, auch der befehl 11 display löschen zeigt keine reaktion und wenn ich zb hallo aufs display schreiben will werden nur schwarze pixel angezeigt. anbei bild mit dem nicht richtig dargestellten logo, den quelltext und die platiene. vielleicht könnte mir jemand weiterhelfen wo der fehler ligt danke mfg kay
Die Datenleitungen D0-3 bzw. D4-7 sind jeweils untereinander verdreht, also D0-3 -> D3-0, D4-7 -> D7-4.
also ja machich für reichelt.de vielleicht könne die ja jemand kontrollieren aber eine frage ich hab auf der Platine die Leiterbahnen nicht verfolgen können da die in so goldenden punkten enden aber Lötpunkte mit den Bezeichnungen VDD, VSS, VEE, M, Flm, V1, V2, V3, V4, V5, CL1, CL2, und eine menge Löt-Jumper sind die wichtig?? ich werde die pinn-outs mal mit einem Durchgangsprüfer messen die Lötpunkte sind aich besimt mit dem lcd A/B anschluss verbunden dazu gehen die ersten und letzten 4 pole von lcd a zu so einem kleinerem ic siehe (scann vom diplay bitte helft mir !!!!
hallo, <Die Datenleitungen D0-3 bzw. D4-7 sind jeweils untereinander verdreht, <also D0-3 -> D3-0, D4-7 -> D7-4. so ein kleiner Fehler ist mir da unterlaufen, habe ich jetzt korregiert jetzt wird das logo richtig dargestellt ,aber eine sache haut noch nicht richtig hin , wenn ich einen text darstellen will dann erscheinen nur schwarze pixel. als terminal verwende ich HTerm mfg kay
das mit der bestell-liste is so ein ding wenn auf dem Schaltplan nicht mal alle ic-Bezeichnungen aufgezeichnet sind ;-\ könnte mir jemand die posten bitte das wäre sehr nett
LARS schrieb: > das mit der bestell-liste is so ein ding wenn auf dem Schaltplan nicht > mal alle ic-Bezeichnungen aufgezeichnet sind ;-\ > > könnte mir jemand die posten bitte das wäre sehr nett Welcher Schaltplan? Was fehlt?
Eigentlich nur der Sram. Aber das Thema ist in den ersten 300 Beiträgen doch zu genüge breitgetreten worden.
Kay schrieb: > so ein kleiner Fehler ist mir da unterlaufen, habe ich jetzt korregiert > jetzt wird das logo richtig dargestellt ,aber eine sache haut noch nicht > richtig hin , wenn ich einen text darstellen will dann erscheinen nur > schwarze pixel. Das heißt die Software erkennt die Befehle nicht. Passt die Baudrate zu der in der Software eingestellten (Standardwert in der Software: 1MBaud)?
hallo Benedikt ich habe die bautrate auf 57600 geändert, bei 115200 läufts auch nich,ich sende nur 11 um das lcd zu löschen kommen nur 2schwarze pixel. den quelltext mit 57600 hatte ich weiter oben mit angehängt mfg kay
Ok, hatte ich übersehen vor lauter Bilder... Du musst vor den Befehlen das Escape Zeichen vor jedem Befehl senden, damit dieser als Befehl erkannt wird. Umgekehrt muss ein Datenwert der dem Escape Zeichen entspricht doppelt gesendet werden, um diesen als Datenwert zu kennzeichnen. Ist nicht schön, aber die einfachste Variante um Befehle und Daten zu unterscheiden.
so ich habs nochmal versucht ich sende 1411 lcd löschen einmal in ascii und einmal in dezimal aber nix passiert
Sendest du 1411 oder 14 11? Die Werte müssen einzeln als Byte übertragen werden (nicht als Text).
ich sende 14 11 und einmal 14 einzeln und 11 einzeln jeweils in ascii und einmal in dezimal und wenn ich zb. hallo eingebe und dann sende kommen wiegesagt nur schwarze pixel kay
Um Texte zu senden musst du vor jeden Buchstaben das Escape Zeichen sowie den Befehl zum Buchstaben schreiben setzen, also 14 192 'H' 14 192 'a' usw.
hallo, gibt es den eine möglichkeit um texte oder zahlen zu senden ohne das ich jetzt jedesmal vor dem zusenden zeichen zb 14 192 a senden muss,also zb. 14 15= für text 14 16= für zahlen wäre das den möglich mfg kay
Ich verstehe nicht was an 14 15 besser sein soll als an 14 192. Beides sind 2 Bytes die zu senden sind.
Ich habe noch etwas gefunden: Diese Version verstaubt schon eine Weile bei mir auf der Platte, es ist quasi die Nachfolger Version von der RS232 Variante. Der Befehlssatz ist dementsprechend etwas angepasst und auf Textausgabe optimiert. Diese könnte daher eventuell besser für dich geeignet sein. Die Belegung des Controllers ist aber glaube ich etwas verändert. Da alles (außer der LCD Ausgabe) in C geschrieben ist, sollte eine Erweiterung oder Anpassung auch etwas einfacher sein als bei dem alten Assembler Code.
hallo Benedikt, (soweit ich das sehe ist der schaltplan fast identisch,vlcd und lcd_on hab ich von hand geschaltet auch bei der anderen variante.) so ich habs mal ausprobiert (hab auch den 18,432Mhz quarz eingelötet) aber es flimmert nur an was könnte das denn liegen, von C hab ich nich soviel ahnung. vielleicht könntest du mir noch ein tipp geben mfg kay
Erscheint das bekannte Startbild? Sind eventuell Leitungen vertauscht? Die Software sollte eigentlich funktionieren, heute Mittag hat sie das bei mir zumindest getan.
ist alles schwarz, aber ich hab gerade gesehen das die daten leitungen DU0-3 und DL0-3 in der PDF anders beschaltet sind ist das richtig, kann ich auch einen 16MHz Quarz verwenden. kay
Falls du ein Oszilloskop, Frequenzzähler oder ähnliches hast, kontrollier mal ob an LP etwa 16kHz, an FRAME 65Hz und an XSCL etwa 2,5MHz anliegen. Ein komplett dunkles Display klingt nämlich nach einem fehlenden Signal oder einer zu hohen vlcd Spannung. Bei einem 16MHz Quarz muss die Software bzw. die Baudrate angepasst werden.
hallo,
das lcd bleibt schwarz in der obern und unteren hälfte ist ein weisser
strich
> Falls du ein Oszilloskop, Frequenzzähler oder ähnliches hast,
leider hab ich kein Oszilloskop,auch nichts ähnliches
ich habe nochmal die datenleitungen DU0-3 und DL0-3 getauscht,
die vlcd spannung haut hin.
die baudrate habe ich probehalber mal auf 57600 gesetzt aber der
kontroller reagiert auf keinerlei befehle.
bei mir funktioniert nur diese variante im anhang
mfg kay
Um rauszufinden ob die Baudrate passte, sende doch mal z.B. die Werte 0 (keine Pixel sollten erscheinen), 1, 2, 4, 8, 16, 32, 64 oder 128 (ein Pixel sollte erscheinen, 255 (8 Pixel sollten erscheinen), 85 oder 170 (4 Pixel mit je einem dazwischen frei sollten erscheinen). Funktioniert das, dann ist die Kommunikation an sich ok. Dann liegt es an den falschen Befehlen die gesendet werden. Funktioniert das aber schon nicht, passt irgendwas bei der Baudrate nicht.
hallo, so nun gehts vielen dank nochmals für die hilfe mfg kay
hallo Benedikt , um bildaten zusenden ist ja dieser befehl 16 da, 16 X Y Low Y High XS YS Low YS High Daten… Bild an Position (x,y) mit Auflösung (xs,ys) laden. Auf diesen Befehl folgen xs*ys Bytes mit Bilddaten. x zählt die Nibbles und hat daher den Bereich 0-159, xs zählt Bytes und hat daher den Bereich 1-80. ich habs so gemacht um ein bild mit 320x177Pixel Auflösung 320x177=56640 Byte 320:8=40 16 0xAA 0 0 0 40 177 0 die breite und höhe passen es wird nur ein wirres pixelgewirr angezeigt,wo mach ich da den fehler mfg kay
Die Werte sollten eigentlich passen. Prüf mal ob die Bilddaten korrekt sind (1bpp, also 8 Pixel pro Byte).
hallo, so meine bildaten passen sieht sogar gut aus auf den grossen lcd,hatte nur einen kleinen fehler im aufruf der bilddaten. wäre es noch möglich 2 Funktionen einzubauen zb.circel und rechteck, ansonsten probiere ich das selbst mal aus. mfg kay
Du könntest die Funktionen hieraus übernehmen: Beitrag "Grafikfähiger LCD Controller für 320x240 LCD mit 4 Graustufen" Da die setpixel Funktion schon existiert sollte es nicht viel mehr als copy&paste sein.
Thema Ram: Da ich bei den üblichen verdächtigen einfach kein 512x8 finden kann und gerne ein Sandwich bauen wollte habe ich mir folgenden Chip herausgesucht: http://www.farnell.com/datasheets/32792.pdf Sollte passen, oder? Btw.: dass PollinModul * LCD-Modul SHARP LM64K101 * Bestellnummer: 120 623 weiss jemand welche Stecker ich dafür einplanen muß? Gruß Anselm pp.S.:kann ich diesen Inverter verwenden? * CCFL-Röhre mit Inverter * Bestellnummer: 531 321 Betriebsspannung ist egal, ich werde eh von 30V per DC/DC herunterwandeln.
Anselm 68 schrieb: > Da ich bei den üblichen verdächtigen einfach kein 512x8 finden kann Reichelt hat einen 512kx8. Der ist zwar mit 55ns eigentlich zu langsam, funktioniert in der Praxis aber, wenn man nicht gerade die Grenzwerte wie Unterspannung und hohe Temperaturen ausnutzt. > gerne ein Sandwich bauen wollte habe ich mir folgenden Chip > herausgesucht: > http://www.farnell.com/datasheets/32792.pdf > > Sollte passen, oder? Ja. > pp.S.:kann ich diesen Inverter verwenden? > * CCFL-Röhre mit Inverter > * Bestellnummer: 531 321 Ja, sollte gehen. Die Leistung kann man notfalls über die Betriebsspannung reduzieren.
>weiss jemand welche Stecker ich dafür einplanen muß? laut DBL sollte der gehen http://de.farnell.com/molex/51021-1500/crimp-housing-1-25mm-15way/dp/1012242 Wigbert
Hab Dank, da war mein Finger schneller als mein Hirn. Im Datenblatt hab ich es dann auch gefunden ;)) Gruß Anselm
Benedikt, ich habe mich nun entschlossesn einfach ein 1MBit-Chip zu nehmen, kostet ja nicht mehr ;) Jedoch irritiert mich die Beschreibung der 2 CE-Anschlüsse des anderen Speichers: Allgemeines:
1 | Functional description |
2 | The AS7C1024B is a high performance CMOS 1,048,576-bit Static Random Access Memory (SRAM) device organized as 131,072 words x 8 |
3 | bits. It is designed for memory applications where fast data access, low power, and simple interfacing are desired. |
4 | Equal address access and cycle times (tAA, tRC, tWC) of 10/12/15/20 ns with output enable access times (tOE) of 5/6/7/8 ns are ideal for high |
5 | performance applications. |
CE + _CE
1 | Active high and low chip enables (CE1, CE2) permit easy memory expansion with multiple-bank systems. |
2 | When CE1 is high or CE2 is low, the devices enter standby mode. If inputs are still toggling, the device will consume ISB power. If the bus is |
3 | static, then full standby power is reached (ISB1). For example, the AS7C1024B is guaranteed not to exceed 55 mW under nominal full standby |
4 | conditions. |
Schreibzyklus:
1 | A write cycle is accomplished by asserting write enable (WE) and both chip enables (CE1, CE2). Data on the input pins I/O0 through I/O7 is |
2 | written on the rising edge of WE (write cycle 1) or the active-to-inactive edge of CE1 or CE2 (write cycle 2). To avoid bus contention, external |
3 | devices should drive I/O pins only after outputs have been disabled with output enable (OE) or write enable (WE). |
Reicht es wenn ich den nicht invertierten CE auf Low setze und nur den invertierten schalte? Oder muss ich beide toggeln? Gruß Anselm
Anselm 68 schrieb: > Reicht es wenn ich den nicht invertierten CE auf Low setze und nur den > invertierten schalte? > Oder muss ich beide toggeln? Bei dem RAM musst du garnichts toggeln. Du kannst beide CE Anschlüsse dauerhaft aktivieren, also CE1 auf low und CE2 auf high klemmen. Das Ansteuern von CE ist nur bei den 32kByte SRAMs notwendig, da immer einer von beiden inaktiv und der andere aktiv ist um so beide zu 64kx8 zu kombinieren. Ich habe mal noch eine neue Software angehängt. Diese wird über UART angesteuert, ist in C geschrieben und unterstützt bis zu 1MByte SRAM. Pro 64kByte steht eine Bildschirmseite zur Verfügung. So kann man in Ruhe das Bild aufbauen, während ein anderes angezeigt wird. Weiterhin hat sie noch ein paar nette Features wie zusätzliche Schriftarten in einem externen Speicher (noch nicht 100%ig getestet, aber das beigefügte Schriftartenpaket sollte funktionieren).
;) Hab Dank .... Leider dauerts noch einiges bis ich dass erste Muster testen kann. Ist ein kleines Nebenprojekt für meine Firma.
Hallo ich bin neu hier im Forum, ich habe eine Frage. Da ich mit dem ATMEGA keinerlei erfahrung und elektronisch nur einiges drauf habe ( zusammengeschuster ) frage ich hier einfach in die Runde. Kann ich von Pollin entweder dieses: http://www.pollin.de/shop/dt/NjczOTc4OTk-/Bauelemente/Aktiv/Displays/LCD_Modul_SHARP_LM64K101.html oder dieses: http://www.pollin.de/shop/dt/ODI1OTc4OTk-/Bauelemente/Aktiv/Displays/LCD_Modul_NAN_YA_LTBE9S159J1K.html verwenden? Könnte mir da einer helfen ? Ciao
Hi, das Sharp sollte mit dem Code gehen, das Nan-Ya mit Beitrag "Grafikfähiger LCD Controller für 320x240 LCD mit 4 Graustufen" Wigbert
Das haarige an diesen Displays ist oft der Anschluss. Folienkabel mit 0,5mm pitch sind eher unangenehm. Pollin hat(te) auch welche mit 1mm, da kriegt man zur Not auch 1,27mm Flachbandkabel rangelötet.
Das NAN Ya Display hat ein 1mm Folienkabel, man kann hier also recht gut 1,27mm Flachbandkabel anlöten. Aber wie schon geschrieben wurde: Es hat nur 320x240 Auflösung, passt also nicht zu dieser Software. Das LM64K101 hat einen Stecker mit 1,27mm Pinraster. Hier kann man auch gut ein Flachbandkabel anlöten. Dieses Display hat 640x480 Auflösung und nicht 640x400 wie auf der Pollin Seite steht. Dieses Display funktioniert also wunderbar mit dieser Software.
@benedikt du hast eine Nachricht bekommen, müsste bei dir angekommen sein. Weil ich ja noch keine erfahrung mit dem Proggen habe und es erstmal lernen müsste, kann man mit dem Evalustions-Board von Pollin http://www.pollin.de/shop/dt/MTY5OTgxOTk-/Bausaetze/Diverse/ATMEL_Evaluations_Board_Version_2_0_1_Bausatz.html mit dem Display üben, ich habe hier noch ein KS0108 was ich mit LCDHype bereibe? Gruß
Das Evaluation-Board ist nicht für diese Software geeignet, da der mega8515 nicht unterstützt wird. Wenn du aber nur einen Text darstellen willst, würde ich dir ein 320x240 Display und diese Software empfehlen: Beitrag "Einfacher Low Cost LCD Controller für 320x240 LCD im Textmodus" Die Schaltung dafür ist deutlich einfacher, denn es wird nur ein einziges IC benötigt. Ich habe es noch nicht ausprobiert, aber diese sollte auch auf dem Evaluation-Board laufen.
Benedikt K. schrieb: > Das Evaluation-Board ist nicht für diese Software geeignet, da der > mega8515 nicht unterstützt wird. > Wenn du aber nur einen Text darstellen willst, würde ich dir ein 320x240 > Display und diese Software empfehlen: > Beitrag "Einfacher Low Cost LCD Controller für 320x240 LCD im Textmodus" > Die Schaltung dafür ist deutlich einfacher, denn es wird nur ein > einziges IC benötigt. Ich habe es noch nicht ausprobiert, aber diese > sollte auch auf dem Evaluation-Board laufen. Hallo, hab mir dieses Thema mal so halbwegs durchgelesen. Ich blick da noch net so ganz durch was ich alles brauch. Ich brauche einmal das Display, den Controller ATMega und irgendetwas für die Hintergrundbeleuchtung, richtig? Benedikt kannst du mir mal genau sagen was ich brauche. Schaltplan ist glaub ich der im Thema in der Zip datei oder? Und wie bekomme ich die Daten auf den ATMega? Danke im Vorraus Ciao
Simon R. schrieb: > Ich brauche einmal das Display, Ja. > den Controller ATMega Ja. > und irgendetwas für die Hintergrundbeleuchtung, z.B. sowas hier: http://www.pollin.de/shop/dt/ODc2ODY0OTk-/Lichttechnik/Diverse_Zubehoer/Sonstiges/CCFL_Roehre_mit_Inverter.html Die Röhre die da dabei ist weglassen und stattdessen das Display anschließen. > Schaltplan ist > glaub ich der im Thema in der Zip datei oder? Ja. > Und wie bekomme ich die Daten auf den ATMega? Mit sowas: http://www.mikrocontroller.net/articles/AVR_In_System_Programmer
was ist sinvoller so Board sich holen oder mit einer Lochplatine selber zusammenlöten. Schaltplanlesen kann ich soweit, pneumatikschaltungen sind ja ähnlich. und kann ich das in Echtzeit anzeigen lassen ? Gruß
Jo des müsste eigendlich oben in den Beitrag. Ich habe mir grad mal den Schaltplan angeschaut, wo wird der Com-Port angeschlossen und wenn ich dieses Stecker abziehe, was passiert dann ? Ciao
Benedikts Projekt ist nur eine "Grafikkarte" da dass Display keine Intelligenz oder Ram besitzt. An die RS232 kommt deine Quelle, zb. ein PC den du mit einem Terminalprogramm dazu bringst dem PDF entsprechend Zeichen Richtung ATmega8515 zu senden, diese werden dann angezeigt. Hier die Software für LCD-Hype ;) Beitrag "Re: LCD Controller für 640x480 LCD mit mega8515" Anselm
Anselm 68 schrieb: > Benedikts Projekt ist nur eine "Grafikkarte" da dass Display keine > Intelligenz oder Ram besitzt. > An die RS232 kommt deine Quelle, zb. ein PC den du mit einem > Terminalprogramm dazu bringst dem PDF entsprechend Zeichen Richtung > ATmega8515 zu senden, diese werden dann angezeigt. > > Hier die Software für LCD-Hype ;) > Beitrag "Re: LCD Controller für 640x480 LCD mit mega8515" > > Anselm Ja sieht schon mal gut aus ;-) Aber er beschreibt das es instabil ist, was ich schon vermutet habe, da mein 128*68 Display schon sehr aufwendig mit LCDHype läuft. Sicherlich kann ich es mit LCDHype probieren, kann dennoch wenn es nicht funtioniert auf die variante mit dem ATMega greifen, wäre allerdings neuland und somit auch etwas nervig. Aber da muss man durch :-) Ciao
Daher habe ich die neue Version entwickelt, bei der ich den ganzen Ballast der alten Version verworfen habe und alles komplett neu entwickelt habe: Beitrag "Re: LCD Controller für 640x480 LCD mit mega8515" Diese sollte stabil laufen. Das Problem an LCDHype ist, dass es keine Displays größer 320x240 unterstützt, daher musste ich oben viele Tricks anwenden um das dennoch zum Laufen zu bekommen, was die ganze Sache etwas kompliziert und fehleranfällig macht. Die neue Version ist nicht mehr kompatibel mit LCDHype, da es einfach sinnlos war. 20-30% CPU Auslastung nur für die Ansteuerung des externen Display ist eindeutig zu viel. Daher ist mehr Intelligenz in den AVR verlagert wurden, der jetzt einfache grafische Operationen ausführen kann, um Boxen, Balken usw. zu zeichnen, sowie verschiedene Schriftarten direkt anzeigen kann.
Benedikt K. schrieb: > Daher habe ich die neue Version entwickelt, bei der ich den ganzen > Ballast der alten Version verworfen habe und alles komplett neu > entwickelt habe: > Beitrag "Re: LCD Controller für 640x480 LCD mit mega8515" > Diese sollte stabil laufen. > > Das Problem an LCDHype ist, dass es keine Displays größer 320x240 > unterstützt, daher musste ich oben viele Tricks anwenden um das dennoch > zum Laufen zu bekommen, was die ganze Sache etwas kompliziert und > fehleranfällig macht. Die neue Version ist nicht mehr kompatibel mit > LCDHype, da es einfach sinnlos war. 20-30% CPU Auslastung nur für die > Ansteuerung des externen Display ist eindeutig zu viel. Daher ist mehr > Intelligenz in den AVR verlagert wurden, der jetzt einfache grafische > Operationen ausführen kann, um Boxen, Balken usw. zu zeichnen, sowie > verschiedene Schriftarten direkt anzeigen kann. Ja das problem kenn ich, willste da was einprogrammieren bekomme ich 100% Auslastung hin. Deswegen will ich es mit dem ATMega probieren ! Ciao
Wirst schon dafür sorgen müsse, dass nur einer der beiden selektiert ist. Also PB0 an /CS1 vom einen und an CS2 vom anderen. Inverter unnötig, da die CS-Anschlüsse ja beide Varianten bieten.
ex) lcd_string(60,230,"640x480 LCD Controller"); lcd_string(64,250,"ATMega8515 (16Mhz)"); void lcd_string(unsigned char x, unsigned char y, unsigned char *string) { while(*string != '\0') { lcd_writechar(x+=2,y,*string); string++; } }
In der fontimage.bin sind enthalten: 12x16 16x26 24x40 32x53 Der Aufbau: Zuerst kommt das Inhaltsverzeichnis: Pro Schriftart gibt es einen 8Byte langen Eintrag, bestehen aus - Startadresse der eigentlichen Daten (32bit) - Breite in Pixel (8bit) - Höhe in Pixel (8bit) Der letze Eintrag im Inhaltsverzeichnis muss auf 0xFF gesetzt werden, damit das Ende erkannt wird.
Hej Benedikt, zunächst einmal vielen Dank für Deine ausführlichen Arbeiten und Unterlagen zum LCD-Controller! Gerade für mich als "Greenhorn" sind diese eine perfekte Starthilfe. Habe letzte Woche günstig ein LM64K101 erstanden und bin dabei, das Projekt welches Du am 19.11.2009 hier eingestellt hast, zum Leben zu erwecken. Was mich verwundert ist, daß besagtes Sharp-Panel keinen MOD AC-Eingang hat. Wird dieser nicht benötigt oder überlese ich im Datenblatt etwas? Danke für Deine Hilfe und beste Grüße dreandas
Hallo Super Projekt Benedikt!! Eine Frage kann man das Farb-LCD verwenden? http://www.pollin.de/shop/dt/NTQ5OTc4OTk-/Bauelemente/Aktiv/Displays/TFT_Farbdisplay_HOSIDEN_HLD1026_011150.html
@Benedikt ich bin über eine Tüte S-Rams AS7C4096A 12ns gestolpert. Die hätten 512Kx8 und wären nun mal da. in der 1.Schaltung Deines Beitrag "Re: Zwei 90S2313 verbinden und definierte Daten lesen" benutzt Du ja ein HC02 um ein weiteren S-Ram zu benutzen, nun wollte ich die 2. Schaltung auf 1024Kx8 damit aufstocken. Ich hoffe das geht. Dank Dir mal schon. Wigbert
@Benedikt Hallo, erstmal Danke für das tolle Projekt. Ich hätte eine Frage. Hast du schon mal ein 320xRGBx240 (SX14Q001-ZZA) Display angesteuert mit deinem Controller ? Ich sitze irgendwie auf dem Schlauch, wie man eine intelligente (schnell) Adressierung eines Pixel durchführt. 7 6 5 4 3 2 1 0 Pixel 2 1 0 Byte Nummer 77766655 54443332 22111000 Color Elemente bgrbgrbg rbgrbgrb grbgrbgr Gehe erst mal von einem 1 zu 1 Abbild Speicher LCD aus. Mein Ansatz ist einfach zu langsam. Ich denke es muss irgend einen Trick geben. Beispiel Fall SetPixel(x,y,col) x = 11 y = 10 col = bxxx Worst Case: wenn ein Pixel auf zwei Bytes verteilt ist. eine Zeile = 320*3/8 = 120 Byte pro Zeile Offset = 120 * y 8 Pixel in drei Byte also x= 11 div 8 = 1 Rest 3 Offset = 120 * y + 3 * 1 Da der Rest 3 ist, währe das gesuchte Pixel im Byte 0 und 1 in Skizze n-1 also Color Element 222 nach der Adresse noch laden und XOR also: lade byte 0 shift col << 6 Xor col mit Byte schreibe byte 0 lade byte 1 shift col >> 2 Xor col mit Byte schreibe byte 1 Wie man sieht muss man relative viele Befehle ausführen um ein Pixel zu setzen. Außerdem sind viele Fälle zu berücksichtigen, um das richtige Byte in dem Tripel zu finden. Jemand eine Idee ? Vielen Dank Christian
Hallo, also ich hab auch noch ein Farbdisplay von einem Laptop rummleigen,was ich auf garkeinen Fall wegschmeißen will,weil es was hat,dass ich mag:D Auf jedenfall hat das Display FRM(FLM),DISP(VLCD),LOAD (LP),CP (XSCL) HD0-7 LD0-7 VEE mit 32-36V und VCOUNT(Kontrast) mit 25.9-29.3V. Jetzt würde ich aber gerne die Schaltung nehmen,dass das Display nur S/W anzeigt.Kann ich dan nur die ersten 4 Datenleitungen anschließen?? Die ganzen ICs bei der Farb-ansteuerung sind etwas zu viel für mich also will ich erstmal nur S/W. Und noch was: Ich würde das Teil gerne in mein Labor stelle um z.b Spannung,Strom und sowas zu messen. Kann man das irgendwie machen? Ich würde ja bei Visual Basic ein Programm schreiben,dass die Spannung irgendwie misst und die Werte durch den RS232 Anschluss an den Controller schickt.Dafür würde ich evtl. noch ein MCU benutzen.
Hi, ich habe gerade bei pollin das hier gefunden: http://www.pollin.de/shop/dt/NjI5OTgxOTk-/Bausaetze/Diverse/AVR_NET_IO_Fertigmodul.html Könnte man dami was anfangen ???
Hi@all erstmal @Benedikt Wenn ich das richtig verstanden habe dann kann ich mit Deiner Schaltung das SW-Lc-Display von Pollin(Citicen 9,5" um 9,95€)ansteuern. Wenn ja würd ich es gerne in mein Camaro Projekt einbinden. Ich verwende derzeit eine Atmega 32 zur Steuerung diverser Funktionen wie Glühfadenabfrage,Heckscheibenheizung,Neblerkontrolle,Innenbeleuchtung,Wa rnblinker, Heizlüfterdrehzahl,Klappensteuerung der Lufteinlässe, Aussentemperatur,Ganganzeige vom Automatikgetriebe usw. Gibt es da die Möglichkeit den AT32 einzubinden und die Funktionen grafisch darzustellen? Brauch keine Graustufen nur SW. Wäre tollm wenn ich z.b. Tür(Heckklappe) offen anzeigen kann(Grafisch) oder Lampe defekt oder welcher Gang eingelegt ist. Bin leider mit der Materie noch nicht so vertraut und würd dich um Unterstützung bitten. Mit Dank im Voraus
hallo, ich habe mal die version vom 19.11.2009 ausprobiert, aber leider kann ich keine zeile (zb zeile15,spalte10) setzen der text wird immer in der ersten zeile augegeben, vielleicht hat da einer eine idee mfg
hallo, kann ich denn für den externen speicher für die schriftarten anstelle des M25pxx auch ein 25lcxx nehmen. mfg
Eingaben gemacht... Nachdem so ein LM641542 zusammen mit einigen entfernten Verwandten schon jahrelang seinen Dornröschenschlaf bei mir im Schrank gehalten hatte, fand ich diesen Thread im Sommer 2008. Erst jetzt kam ich aber dazu, die Sache ernsthaft anzupacken. Hier mal eben ein paar (Dankes-) Worte dazu. Speicherbausteine stapeln ist mitunter gut und nützlich, vergrößert jedoch unnötig die Bauhöhe, und so wühlte ich mich lieber bei einem befreundeten Service-Menschen durch einen ziemlichen Haufen ausgedienter Motherboards, bis ich tatsächlich eines mit ein paar W24512 fand. Eine einzige unerwartete Schwierigkeit trat beim Bau dann noch auf - mit einem 1 Ohm-Widerstand hatte ich so gut wie noch nie zu tun. Aber in der braun-schwarz-sonstwas - Sammelbox fanden sich schließlich sogar zwei davon. Die Spule ist selbstgemacht und hat etwa 400 Milliohm bei 470 Mikrohenry. Ein einziges AQV202 steckte im Sortiment bei den anderen Kopplern im Leitgummi und erwies sich als geeignet. Das meiste sonstige Zeug habe ich recycled, DIY-Lötbad sei Dank sogar die Fassungen und den Pfostenverbinder. Auf einen MAX232 konnte ich verzichten. Die freien Gatter des 74HC02 wollten auch was zu tun haben und bekamen nur etwas Unterstützung durch ein paar Widerstände und Dioden. Den, der das Ganze "in einer halben Stunde" funktionsfähig auf Lochraster zusammenbekommt, möchte ich gern sehen; über meinen eigenen Zeitbedarf schweige ich lieber. Die Schaltung funktionierte immerhin auf Anhieb. Allerdings sehe ich mir bei solchen etwas diffizileren Sachen doch vor Anschluß des Zielsystems (hier das LCD) alle Signale auf dem Oskar an. Nachdem diese Prüfung erfolgreich bestanden war, zeigte das Display dann auch bald brav seinen Willkommens-Zweizeiler (verwendet habe ich die Firmware von 2009) und reagierte sogar auf meine Eingaben... Ein großes Dankeschön an Benedikt für das Zur-Verfügung-Stellen der Früchte sicherlich vieler, vieler Stunden beim Programmieren und Testen, sowie für die stets bereitwillig gegebene persönliche Unterstützung! Dank auch allen anderen Stimmen, die hier durch ihre Fragen, Berichte und Uploads zuerst meine Verwirrung, später dann doch noch mein Verständnis gefördert haben! Je nach Gemüt zur Abschreckung oder Anregung ein paar Scans meines Drahtverhaus, sowie eine Aufnahme des (nicht für 8515 vorgesehenen) Test- und Programmierboards. Viel Spaß und Erfolg allen noch kommenden Generationen von Nachbauern... P.S. von Fuchshaar
guten tag, ich habe mal eine frage,und zwar möchte ich gerne eine grössere Schrift(10x16) verwenden als die integrierte 8x12 ,als controller verwende ich den Mega162 wegen mehr Flash,mit einer schriftgrösse von 8x14 funktioniert das auch. aber wenn ich die 10x16 im programm einbinde wird di schrift nicht richtig dargestellt. villeicht könnt mir jemand behilflich sein was ich alles ändern da ich von C nicht viel ahnung hab im anhang das programm mit der 8x14 schriftgrösse und die 10x16datei mfg
hallo, kann mir denn jemand helfen diese eine Schriftart 10x16 darzustellen, wäre sehr dankbar wenn mir jemand etwas helfen würde mfg
Guten Tag, Habe mir auch den Lcd-Controller nachgebaut,allerdings mit einem Mega128 nun fehlen in der oberen und unteren Displayhälfte ein paar Pixel,das hat wohl mit dem Ram vom Mega128 zutun. vielleicht kann denn von euch mir ein paar Tipps geben was ich ändern muss. vielen Dnk MFG
Habe ich irgendwie einen Denkfehler? Ihr habt da 32 KByte RAM, das sind bei mir 32768*8=262144 Bit. Ein sw-Display mit 640x480 Pixel braucht doch aber 307200 Bit. Oder geht es hier doch um nur 640x400 Pixel? Denn dafür braucht man ja nur 256000 Bits und somit würden dann 32 KByte reichen.
Hallo, nachdem Google mir diese Seite als Treffer anzeigt, sollte es für meine Frage, die "Richtige" Stelle sein. Ist es möglich, den Atmel zusammen mit dem LCD 640x480 SW eine VT100 Anzeige zubekommen? Mein Gedanke ist, dass ich z. B. vom Computer Kaffemaschine Set-top-Box / anderer Mikrokontroller den Output an zu zeigen? Es wäre praktisch, eine Anzeige zu haben, den man mit Daten von Aussen füttern kann. Sei es eine Logfile, ein Roman, diverse POST-Error oder einfach nur Bootmeldungen. Schöne Grüße Alex
Hallo, ist zwar nicht mehr das aktuellste Projekt, wollte aber dennoch mal meine Erfahrungen vom Nachbau mitteilen. Zunächst verwendete ich einen 55ns schnellen 512kx8 SRAM von Reichelt, leider ist da immer das Programm fürchterlich abgenippelt (50x per Sekunde viele Rechtecke malen). Etwas (aber nicht viel) Abhilfe schaffte ein Bustreiber 74245 zwischen den Datenleitungen Du0..3 bzw. DL0...3 und dem Display. Als ich dann auf einem DBOX2-Modem von Philips 'nen 128kx8 mit 12ns entdeckte, wurde der flugs verbaut, und was soll ich sagen? Jetzt funktioniert's problemlos, Busy flackert zwar häufig (habe zur Kontrolle 'ne LED dran), der Controller nippelt aber nimmer ab! Als Spule sollte eine von Reichelt passen (L-PIS4720), die haben ja inzwischen geignete Induktivitäten. Die meine ist wohl 'ne Nummer zu groß geraten. Anbei'n Bild von meinem Verhau, die kleine LCD-Anzeige soll mal ersetzt werden (da schwirren noch 'n STM32 und 'n DSP umher). mfg
hallo, ich habe ein problem mit Der Funktion BMPs anzuzeigen. mein sourcecod ist im Anhang. Ich möchte ein BMP Anzeigen mit 240x240 Pixel der umriss, also die Abmaße(240x240Pixel) stimmen aber,nur was mach ich da nur falsch. vielleicht kann mir jemand von ihnen weiterhelfen mfg
Heinz schrieb: > Ich möchte ein BMP Anzeigen mit 240x240 Pixel der umriss, also die > Abmaße(240x240Pixel) stimmen aber,nur was mach ich da nur falsch. Was funktioniert, was funktioniert nicht? Was für Fehler werden Dir angezeigt, bzw. wie äußert sich das "nicht funktionieren"?
Kann das ganze auch testweise ohne RAM benutzt werden? Würde mich über <sinnvolle> Antworten freuen!
Hallo, ich habe eine Frage, und zwar ob man ein solches Display auch mit deinem Controller verwenden kann, und wenn ja, dann wie? http://www.artronic.pl/o_produkcie.php?id=874? Vielen Dank für eine schnelle Antworten.
Ich verwende das LM641541 mit einer der ersten Schaltungen von Benedikt und hab mal eben Daten verglichen, bis auf das CS Signal und dem damit verschobenen Anschluß sollte das eigentlich passen, ich bin schon eine Weile auf der Suche nach einem beleuchteten Display. Holger
Holger W. schrieb: > bis auf das CS Signal und dem damit > verschobenen Anschluß sollte das eigentlich passen Wie meinst du verschoben? Der Anschluss "Pin" oder wie? Und wo finde ich die Aktuellste Version von Schaltplan/Code für S/W Displays? Danke. (Das Display gibts hier zu kaufen: http://www.ebay.de/itm/390435073161)
Beim drüberschauen hab ich gesehen dass die Anschlüsse etwas anders belegt sind. Ich hab schon recht lange die Version 0.21 im Einsatz hier aus dem Thread mit dieser Schaltung: http://www.mikrocontroller.net/attachment/8505/lcdcon_seriell.gif Danke für den Link, werd mal eins bestellen. Holger
@Jonas Tittmann Das LCD ist heute angekommen, mal eben getestet, funktioniert. Holger
Hallo, Wow, das ging ja schnell... kannst du mir mal dein Displayanschluss von hinten Fotografieren? Und dann evtl. eine Skizze anhängen, welche Pins du wie an die Platine angeschlossen hast. Danke
Ich versuch es mal. Im Bild siehst du oben einen 30poligen Steckverbinder für diese flachen Leiterplattenverbinder. Die Belegung findest du am ebay Angebot als Tabelle, ich hab es dort rauskopiert. Leider habe ich so ein Leiterplattenverbindungskabel nicht, so dass ich erstmal die Verbindung direkt zum LCD Anschluß hergestellt habe, dieser ist 15 polig und direkt darunter.Das PDF im Angebot bezieht sich auf diesen Anschluß. Zu der Schaltung von Benedikt ergibt sich folgende Zuordnung, die dann auch auf den 30poligen Anschluß übertragen werden kann: 1 FLM=S 2 LP=CP1 3 XSCL=CP2 4 Disp zum Einschalten auf +5V 5 +5V 6 GND 7 hier bin ich mir nicht ganz sicher, eigenlich sollte das Display die negative Spannung selbst erzeugen, konnte es aber auch mit Tests am 30poligen Anschluß nicht überreden, so dass ich hier eine eigene negative Spannung eingespeist habe (für Kontrast) 8-15 dann die Datenleitungen für upper/lower Damit läuft erstmal das Display. Für die Hintergrundbeleuchtung muß über den 30 poligen Anschluß Pin 10 auf Masse gelegt werden, im Bild oben das schwarze Kabel. Wie gesagt findest du alle Anschlüsse auch wieder am 30poligen Anschluß wieder, diese hat wohl ein Rastermaß von 1mm, wo bekommt man solche Kabel bzw. den Steckverbinder her ??? Holger
Hallo, Ich habe nochmal eine Frage: Was fürn SRAM verwendest du, und wo hast du es gekauft/gefunden oder gibt es da auch welche bei Reichelt zu kaufen, die passen? Danke für das Bild, waren da hinten Lötpads?, oder wo hast du deine Braunen Kabel angelötet? Wohin gehen die vielen Schwarzen Kabel? Grüße von der gerade windigen aber immerhin sonnigen Schwäbischen Alb.
Kann ich dir nicht sagen, hab das vor einigen Jahren anhand dieses Threads aufgebaut, musst du hier mal durchlesen, auch wenn es viel ist. Auf dem IC steht AS7C1024-15JC, keine Ahnung wo ich den her hatte. Der Adapter ist auch von jemandem hier. Die 15 schwarzen Kabel gehen von der hinteren Platine zum Display, darunter sind Lötpunkte die ich angezapft habe. Die scharzen Kabel sind da eingepresst. Holger
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.