Eigentlich müssen die Buchstaben garnicht in den Speicher, ich habe dies nur eingebaut, damit man sofort sieht, dass das Display funktioniert. In der Version die ich verwende, wird das Display komplett gelöscht (alles mit 32 beschrieben).
Verstehe ich jetzt nicht oben steht doch das die Zeichnen auf das Display ausgegeben werden, wo wird den das Alphabet ausgeben, wenn alles gelöscht wird ? Ich dachte was ausgeben werden soll muss vorher im Speicher stehen? Wie läuft den dein Programm ab ?
Avr Nix wrote: > Verstehe ich jetzt nicht oben steht doch das die Zeichnen auf das > Display ausgegeben werden, wo wird den das Alphabet ausgeben, wenn alles > gelöscht wird ? Wenn gelöscht wird, wird garnix ausgegeben. Ich habe meherere Versionen von der Software. Die die ich ins Forum gestellt habe, zeigt den Zeichensatz an, damit man sofort nach dem Einschalten sieht: Software läuft, Hardware OK. Die Version die ich bei mir verwende, zeigt nichts an: Hier werden alle Stellen auf Leerzeichen überschrieben (anstelle des Alphabets). > Ich dachte was ausgeben werden soll muss vorher im Speicher stehen? Genau > Wie läuft den dein Programm ab ? Das was im Speicher steht wird ausgegeben. Im Hintergrund wird der Inhalt des Speichers auf das Display geschrieben, im Hauptprogramm die UART Daten und Befehle verarbeitet.
hallo Benedikt, mal eine kurze frage bezüglich der fonts, ich habe die Version mit mega8, wie müsste mann das programm erweitern um eine 12x16 Schriftart anzuzeigen. habe zwar hier Beitrag "LCD Schriftarten ( Fonts in veschiedenen Größen )" schon geschaut aber AVRStudio gibt immer eine fehlermeldung aus mfg kay
12x16 Schriftart wird schwer. Aufgrund der vielen Vereinfachungen, müssen alle Zeichen nebeneinander geschrieben 256 Bytes groß sein, was bei den 8xirgendwas Schriftarten der Fall ist. Bei 12xirgendwas müsste man jedes Zeichen erstmal auf ganze Bytes, also auf 16 aufrunden, ansonsten wird es unschön zu verarbeiten. Dann bleibt also noch Platz für 128 Zeichen. Dann müsste man noch die Ausgabeschleife von 2 4bit Blöcke auf 3 4bit Blöcke umstellen, um ein Zeichen zu übertragen. Ist schon ein wenig Arbeit. Die größte Arbeit ist aber erstmal die Erzeugung der Schriftart, da die Daten ja Zeilenweise und nicht Zeichenweise angeordnet werden.
Hi, die Links oben im Posting zu den Produkten funktionieren nicht mehr, handelt es sich um eines dieser beiden LCDs? LCD-Modul NAN YA LTBE9T372G1K 9,95€ 9,5" LCD-Modul Citizen G6481L-FF 29,95€
Julius J. wrote: > Hi, > > die Links oben im Posting zu den Produkten funktionieren nicht mehr, > handelt es sich um eines dieser beiden LCDs? > > eben nachgeschaut: http://www.pollin.de/shop/shop.php =9.95 http://www.pollin.de/shop/shop.php =14.95 mfg kay
Die Links sind natürlich noch sehr viel besser... Es sind: LCD Modul NAN YA LTBE9S159J1K Best.Nr. 120 471 14,95 EUR und LCD-Modul NAN YA LTBE9T372G1K Best.Nr. 120 460 9,95 EUR Das hier: LCD-Modul SHARP LM038QB1R10 Best.Nr. 120 318 7,95 EUR funktioniert theoretisch auch, läuft aber nur mit 3,3V und benötigt noch etliche zusätzliche Spannungen. Ist also um einiges komplizierter von der Schaltung her.
Ah, danke. Das ist ein faszinierendes Projekt, aber leider blickt man durch die Forums Postings nicht mehr durch. Ich mag das Wort ja nicht aussprechen, aber eine Dokumentation (wiki Eintrag) wäre echt hilfreich. Würde das auch selbst machen, fange aber grad erst an mit AVRs zu basteln. Julius
@Benedikt: Dein Zeichensatz wird doch im Flash gespeichert, wo ist den die Adresse der jeweiligen Pixelzeile der Buchstaben drin bzw in welchen Pointer steht die Adresse die im Flash auf die Zeichensatz zeigt?
Z ist der Pointer auf die Zeichen im Flash. ZL beinhaltet den Buchstaben und ZH die Pixelzeile + Offset der Adresse.
Aber um den Zugriff im Flash zubekommen muss ich da nicht die Adresse wissen ab wo der zeichensatz gespeichert wird und von da an mit den Z-Pointer drauf zu zugreifen? Also Anfangadresse wo die Tabelle anfängt die dann mit den Offset und Position der Pixelzeile berechnen kann ? Beispiel Label DDRAM -> Ab Adresse $60 kann ja auch $65 sein , oder $80 , da wurde ja festlegt. Aber ab welcher Anfangs - Adresse fängt der Zeichensatz im Flash an, das habe ichnicht verstanden ? Für den Zeichensatz finde ich keinen Label der ja eine Adresse ab wann der im Flash gespeichert wird abbildet.
Der Zeichensatz liegt an Adresse 1024: ldi ZH, 4 ; 1024Bytes CGROM Offset
Ist das Fest ? Wie machst du das das der Zeichensatz bei Adresse 1024 in Flash anfängt? Must das nicht ihrgenwo festgelegt worden sein ?
Avr Nix wrote: > Ist das Fest ? Ja. > Wie machst du das das der Zeichensatz bei Adresse 1024 > in Flash anfängt? Must das nicht ihrgenwo festgelegt worden sein ? Ja, hier: .org 512 Die 512 kommen daher, dass AVR Studio in Words zählt.
Hi, habe jetzt diese beiden: LCD Modul NAN YA LTBE9S159J1K LCD-Modul NAN YA LTBE9T372G1K wenn ich zum testen die Hintergrundbeleuchtung erstmal weglasse, fällt dann im Schaltplan alles unterhalb von R3 weg? Julius
Nein. Die Hintergrundbeleuchtung ist im Schaltplan garnicht drin. Das unterhalb ist die Erzeugung der Displayspannung. Ohne die geht garnix.
Hallo Kai B., weiter oben hattest Du mal angeboten, Dein angepasstes Programm von Pollin zur Verfügung zu stellen. Ich habe zwar ein WG320_240B-TFE-NZ, sieht aber Deiner Abb. WG320_240B_11.jpg sehr ähnlich. Bei mir sind die Bauteile oben rechts nicht mit aufgelötet. (Kennst Du zufällig die Bedeutung?) Mir ist es noch nicht gelungen, irgendein Zeichen auf die Anzeige zu bringen und wäre deshalb an einem funktionsfähigen Programm interessiert. (Nur der Kontrast lässt sich z. Zt. einstellen.) Gibt es schon weitere Fortschritte? (Grafik) MfG Wolfgang
Hallo hm ja das mit dem umgeänderten Pollin Programm ist bei mir leider in Vergessen heit geraten ich habe dieses als Anhang nun beigefügt. Dazu erstmal ein paar Hinweise. Es ist mit dem S1d13305 getestet worden da dieser auf dem Pollin Display bestückt war. und Als Anschlussbelegung am LPT habe ich mich an das Pollin Display Optrex DMF5008 orientiert. Also auf dem Bild WG320240B_11.jpg dient der Schaltungsteil Recht oben als DCDC für die Negative Spannung (für den Kontrast). Vo müsste etwa um die -17Volt sein wenn ich mich recht erinnere. MfG Kai
Danke für die schnelle Antwort. noch eine Bitte: kannst Du mal die Belegung Deiner Parallelschnittstelle prüfen, ob sie mit meiner vorhandenen übereinstimmt. Steckerstift 1 =WR Steckerstift 14 =CE Steckerstift 16 =C/D Steckerstift 17 =RD MfG Wolfgang
Hallo Also wie gesagt Anschlussbelegung ist wie beim Optrex DMF5008. Habe im Anhang nochmal ein Bild. das CS Signal ist hierbei auf LOW DB0-7 sind entsprechend D0-7(Pin 2-9) vom LPT So wie es mit der von dir Genannten Belegung aussihet musst du CE/CS mit RESET Tauschen dann sollte es ansich gehen MfG Kai
@benedikt sehr schönes projekt mal wieder. muß mir auch endlich mal so ein billig display bei pollin zum basteln bestellen :-) weiter so.
Danke Kai, ich habe eine Anschlussleiterplatte von Pollin, welche zum Grafik-LCD DG12864 gehört. Die Belegung stimmt nach Deinen Angaben im Wesentlichen überein. Tolle Abb. mit der Einblendung der Belegungstabelle! Ist das eine Fotomontage? Bei mir wird RES über einen Taster bedient. CS habe ich auf L und RD auf H gelegt. Vermutlich ist mein LCD doch defekt. Nach dem Zuschalten der Versorgungsspannung ist die Anzeige „schwarz“ (also Kontrast ist vorhanden), nach dem Betätigen des Rücksetztasters entstehen 1 bis 2 waagerechte Zeilen, welche nach dem Loslassen verschwinden. Die Anzeige ist jetzt „weiß“ und das war es dann. Vielleicht hat noch jemand einen Tipp für mich. MfG Wolfgang
@ benedikt auch ich möchte mich endlich mal für die schöne Entwicklungsarbeit bedanken. @ Otto53 auch Dir danke für den Entwurf der Controllerplatine, die ich nun 2x nachgebaut habe. Lediglich bei der Erzeugung der negativen Spannung war es bei mir nötig, den 680 Ohm Widerstand durch einen etwas kleineren auszutauschen (läuft zur Zeit mit 330 Ohm). So, nun habe ich ein kleines Problem und habe fast Angst, dass ich ausgelacht werde... Die Anteuerung des Controllers über den PC via Hyperterminal funktioniert wie erwartet. Gestern habe ich nun versucht, die Ansteuerung über einen anderen Atmega8 vom Pollinboard unter BASCOM zu machen. Ich nutze dazu den Print Befehl. Grundsätzlich funktioniert auch alles, ich bekomme halt nur nicht die Zeichen auf das Display, die ich eigentlich möchte. Dabei ist mir völlig schleierhaft geblieben, wie der Print-Befehl eigentlich die Ausgabe "übersetzt". Versuche ich das Display zu löschen, gebe ich Print 12 oder Print "12" ein, dann kommt jeweils eine wilde Zeichenserie am Display an. Teste ich mal "for x=1 to 255 Print Hex(x) next", dann wird tatsächlich irgendwann auch mal das Display gelöscht. Kann mir hier bitte mal jemand auf die Sprünge helfen, wie ich den Controller über BASCOM richtig austeuere. Ich glaube, ich hab hier irgendwie eine Blockade.... Vielen Dank schon mal. Ciao Thilo
nun das wird so nicht funktioniern, da Print "12" Asci zeichen erzeugt. Versuch mal zum löschen Printbin &H0C oder Print hex(12) sowas in der Art Wigbert
>Nach dem Zuschalten der Versorgungsspannung ist die Anzeige „schwarz“ >(also Kontrast ist vorhanden), Problem gelöst, die neg. Kontrastspannung war zu gering offensichtlich war das gar kein richtiger Kontrast Wolfgang
@ Wigbert Danke für Deine Antwort. Leider hatte es mit den unterschiedlichsten Befehlskombinationen auch nicht geklappt. Ich bekam zwar immer "reprodzierbar" das oder die gleichen Zeichen auf das Display, aber eben überhaupt nicht die, die ich eigentlich erwartet hatte. Nun habe ich den dummen!!! Fehler gefunden: Ich hatte zwar die richtigen Baudraten eingestellt, hatte aber beim Pollinboard einen 16 MHz Quarz anstelle des eigentlich vorhandenen 12 MHz angegeben. Dadurch ist der Tansfer inkorrekt gewesen, blieb aber erstaunlicherweise "fehlerhaft stabil!". Nun läuft alles wie erwartet. Ich kann den Text ganz normal in Bascom mit Print "Hello world" ausgeben, die Befehle sende ich mit Printbin. Vielen Dank nochmal und macht weiter so!! Ciao Thilo
Ich habe das GLCD Display ( Mega8 ) im Textmodus immer wenn ich das Zeichen Wiederhole Z.B. Leertaste nach dem zweitenmal ein anders zeichen was immer gleich ist. Beispiel -> ich drücke imer p -> pphphphphphp , oder f -> ffµfµfµf hattest du das Problem auch ? Verbindung über Hyberterm von Windows Sonst klappt die Ausgabe.
Baudrate passt, Quarz passt auch zur Einstellung in der Software ? Fusebits auf den Quarz eingestellt ?
Hallo Benedikt, 16MHz Oszilator Baudrate 57600 8N1, keine Flussteuerung, sollte passen. Gebe ich unterschiedliche Buchstaben ein, so stimmt die Ausgabe. Werden gleiche Buchstaben genommen tritt das auf was ich im letzten Post geschrieben habe.
Interessant. Solch einen Effekt hatte ich noch nie, und kann ich mir eigentlich auch nicht erklären, da alle Zeichen nacheinander individuell behandelt werden. Die Software weiß also nicht, welches Zeichen zuvor kam. Hast du schonmal ein anderes Programm außer Hyperterm probiert ?
Hhmmm, also ich sende ein Datenpaket "Hallo" vom Terminalprogramm zum Controller. Schneller geht es wohl kaum, und da kommen 2xl vor. Hatte den Fehler auch nicht. Wigbert
Der die Baudrate ist zu hoch bei 16 MHz.Es funktionieren max. 38,4Kbaud/s.
Marco Schwan wrote: > Der die Baudrate ist zu hoch bei 16 MHz.Es funktionieren max. > 38,4Kbaud/s. Laut dem Datenblatt ist das noch OK. Der Fehler liegt bei +2,08%, was ganz knapp an dem empfohlenen Wert von max +/-2% liegt. Die +/-2% gelten dabei für jeweils diesen Fehler beim Sender und entgegengesetzt beim Empfänger, wenn ich das richtig gesehen habe. Beim PC dürfte der Fehler aber bei <0,1% liegen.
Also in Hallo ergibt bei mir auch keine Fehler -> wenns > 2 gleiche Buchstaben sind kommt das Problem und dann abwechselt das richtige und das falsche. OK werde das mal mit einen anderen Termialprogramm ausprobieren und bescheid geben.
Ich habe mal mit HTERM versucht und der Effekt tritt nicht mehr ein, komisch. Danke zusammen.
Hallo Benedikt, habe mir die lcd-controller mehrfach nachgebaut funktionieren super, so nun meine frage, ich habe lcd1 mit mega8 und lcd2 mit mega168 in der grossen schriftart wie kann ich jetzt die beiden lcd controller ihre eigene adresse geben den lcd1 24x40zeilen,zeichen und lcd2 ich glaube 5x10 zeilen zeichen. für eine antwort wäre ich dankbar mfg kay
Eine unterschiedliche Adresse ist momentan nicht vorgesehen, aber da der UART des AVR einen Multi-processor Communication Mode unterstützt, könnte man diesen verwenden. Dazu müsste man die Software nur minmal erweitern.
hallo, die beiden displays hängen am rs485 bus funktioniert super, zur adresse:würde eine 3-stellige zahl für jeden lcd-controller verwenden als adresse zb:349 wie muss die auswertung im programm aussehen mfg kay
hallo, habe es jetzt mit dem "Multi-processor Communication Mode" versucht aber es haut nicht so richtig hin. als adresse habe ich 168 gewählt, am sender sende ich ldi temp,168 ->uarttransmit. vielleicht könnte jemannd mal drüber schauen über ne antwort wäre ich dankbar mfg kay
Hallo Benedikt, wäre es dann ein grosser aufwand den Multi-processor Communication Mode zu implementieren wenn es möglich wäre.ich komme da nicht weiter. über eine antwort wär ich sehr dankbar. mfg kay
Im Datenblatt ist das recht gut beschrieben, wie man prinzipiell vorgehen muss. Dazu müsste man im RX Interttupt UART_RX_int Prüfen ob es eine Adresse ist, falls ja prüfen ob diese stimmt, und falls ja, dann in den normalen UART Modus wechselnd (wenn ich das Datenblatt richtig verstanden habe). Ansonsten werden alle Daten ignoriert. Vom Aufwand her ist es wie gesagt recht wenig, aber das ganze Testen außenrum. Momentan habe ich das leider keine Zeit dafür, um mich damit zu beschäftigen.
also ich habe es so gemacht, ich sende zuerst die adresse 168 dann 17,00,00 die textposition aber es kommen nur umgedrehte fragezeichen an UART_RX_int: in regsave, sreg lds tempi, UDR0 cpi tempi, 168 ;ist das erste zeichen 168 dan mach weiter BRNE nook ; lds tempi, UDR0 inc WPos mov tempi2, WPos andi tempi2, RX_Buffer-1 cp tempi2, RPos breq buffer_full mov WPos, tempi2 clr tempi2 ldi XL, low(RXBUF) ldi XH, high(RXBUF) add XL, WPos adc XH, tempi2 st X, tempi buffer_full: nook: out sreg, regsave reti
hallo benedikt, so der mpcm mode haut einigermaßen hin: ich sende die adresse funktioniert dann ein zeichen zB.a funktioniert aber wenn ich in zeile5,spalte10 etwas schreiben möchte wird nichts angezeigt. wäre es möglich mal drüber zu schauen für eine antwort wäre ich sehrr dankbar mfg kay
Hi, welche Lötspitzengrößen verwendet ihr zum Austausch des Datenkabels? habe hier eine Ersa Analog 60, die Std. 2,2mm Hammer Lötspitze sieht definitiv zu groß aus dafür. Soll ich lieber die 0,4mm oder die 1mm nehmen? Mfg Julius
Julius wrote: > Hi, > > welche Lötspitzengrößen verwendet ihr zum Austausch des Datenkabels? > habe hier eine Ersa Analog 60, die Std. 2,2mm Hammer Lötspitze sieht > definitiv zu groß aus dafür. Soll ich lieber die 0,4mm oder die 1mm > nehmen? > > Mfg > Julius hallo, also ich habe die Weller WECP20 mit standart Lötspitze lötzinn 0.8mm habe mehrere Displays damit umgelötet funktiert ist halt bischen fummelig mfg kay
Hallo Benedikt Erstmals danke, dass du dieses Projekt hier anderen zur Verfügung stellst! Ich würde gerne wissen, warum du einen "geraden" 16 MHz-Quarz verwendest und keinen Baudraten-Quarz, hat das einen besonderen Grund? Wenn ich einen andere Quarzfrequenz verwenden will (z.B. 14,745 MHz), was müsste man dann im Sourcecode ändern? Ich nehme an, dass dann ja auch das Timing für die Display-Ansteuerung angepasst werden muss? Ich habe mich bis jetzt nur mit C beschäftigt, die ASM-Listings sind leider ziemlich unverständlich für mich (ja, ich weiss, man sollte sich da reinarbeiten, ich habe halt mit PC-Programmierung in Hochsprachen angefangen und bin erst später zum Mikrocontroller vorgedrungen). MFG Andreas
Die 16MHz habe ich verwendet, da dies ein Standardwert ist, den ich für fast alles nehme, und man damit bis 57600Baud nahezu alle Baudraten erzeugen kann (und auch höhere Baudraten wie 1MBaud, die gut zum FT232 passen). Es spricht aber nichts gegen eine anderen Takt. Nur >10-12MHz sollte er schon haben, damit die gewünschten Timingwerte eingehalten werden können. Am Anfang des Programms gibt es eine Zeile .equ F_CPU =16000000 ; CPU Freq Hier muss die Quarzfrequenz eingetragen werden. Ansonsten muss nur noch die gewünschte Baudrate (ein paar Zeilen darüber) eingetragen werden und das Programm neu übersetzt werden.
Hallo Benedikt, auch von mir vielen Dank für Deine schöne Arbeit! Nur eine Frage: Auf der Platine in Deinem Bild ist doch deutlich weniger drauf als in Deinem Schaltplan (z.B. nur ein einziger Widerstand). Sieht man die nur alle nicht oder warum ist das so...? Nochmals danke und viele Grüße, Heiko
Es ist fast alles drauf was im Schaltplan drin ist. Nur als SMD auf der Unterseite. Den Schaler für die VLCD habe ich weggelassen, da das LCD per Logikpegel geschaltet werden kann. Das ist auch kein Widerstand, sondern die Spule.
ATmega8 UG-32F02 320x240 glcd EL backlight
Hallo Benedikt, erstmal vielen Dank für Deine Antwort! Ich muss Dich leider nochmal um Hilfe bitten... Irgendwie bekomme ich diese Inverterschaltung nicht recht zum Laufen... Bei mir kommen da nur um die -14V raus - und zwar unabhängig von den Widerstandswerten. Wenn ich das Display daran anschließe, brechen sie zusammen auf etwa -8V. Hast Du eine spontane Eingebung, was ich falsch gemacht haben könnte...? Und noch etwas... Die Hintergrundbeleuchtung bekomme ich auch nicht angeschaltet... Muss man da irgendwas beachten? Nochmals danke und viele Grüße! Heiko [edit] P.S.: Wieviel Strom ziehen eigentlich Hintergrundbeleuchtung und Display im Normalfall?
Falsche Drossel? Was kann man bei der Hintergrundbeleuchtung eigentlich falsch machen? Inverter besorgen, dessen 2 Ausgangspins mit den 2 Pins der Hintergrundbeleuchtung verbinden und den Eingang mit 12V oder 5V je nach Typ. Strom für Hintergrundbeleuchtung und Kontrastspannung beträgt in dieser Grössenordnung von Display einstellige Milliampere. Spannung der Hintergrundbeleuchtung ist allerdings einige hundert Volt, also beim Messen Vorsicht walten lassen.
> Falsche Drossel? So eine: http://www.pollin.de/shop/detail.php?pg=NQ==&a=OTY3OTQ3OTk= > Was kann man bei der Hintergrundbeleuchtung eigentlich falsch machen? > Inverter besorgen, dessen 2 Ausgangspins mit den 2 Pins der > Hintergrundbeleuchtung verbinden und den Eingang mit 12V oder 5V je nach > Typ. Sorry, ich hab sowas noch nie gemacht... Und scheinbar hab ich da was komplett falsch verstanden? Was für ein Inverter denn..?? Ich hab gedacht, die Hintergrundbeleuchtung läuft mit 5-12V... Danke für Hilfe, Heiko
Drossel: Die Sättigungsgrenze sollte in der Benedikt'schen Originalschaltung mindestens 350-400mA betragen. Bei diesem Typ sind das nur 150mA, d.h. die Spule sättigt. Könnte es sein, dass der MC34063A warm wird. Hintergundbeleuchtung: In den üblichen Displays wird etwas wie in Pollin 700 638 verwendet. Die Röhre ist im Display drin, der Inverter (die Box daneben) erzeugt aus 12V die Hochspannung für die Röhre.
> Drossel: Die Strombelastbarkeit sollte in der Benedik'schen > Originalschaltung mindestens ca. 400mA betragen. Diese hat 150mA. Oh, das hab ich übersehen. Danke! > Hintergundbeleuchtung: In den üblichen Displays wird etwas wie in Pollin > 700 638 verwendet. Die Röhre ist im Display drin, der Inverter (die Box > daneben) erzeugt aus 12V die Hochspannung für die Röhre. Hm, ich bin davon ausgegangen, das sei alles im Display integriert. Pollin schreibt ja auch, man benötige nur die 5V und die -23V. Was verwendet Ihr denn dann als Inverter?
Alternativschaltung für LCD-Spannung, wenn 12V zur Verfügung stehen, unter Verwendung der Speicherdrossel 250 304 von Pollin: Beitrag "Re: Grafik-LCD Controller mit AVR und VRAM" Mit der Benedikt'schen Originalschaltung, zumindest aber der Variante Beitrag "Re: Grafik-LCD Controller mit AVR und VRAM", müsste Pollin 250 308 verwendbar sein. Ist halt ein bischen grösser. Diese Drossel ist in Verbindung mit dem MC34063a ziemlich universell einsetzbar.
Heiko P. wrote:
> Was verwendet Ihr denn dann als Inverter?
Eben den erwähnten Inverter von der Kaltlichtkathode von Pollin 700 638.
Okay, ich werd's versuchen! Vielen Dank nochmals!! Heiko
A. K. wrote: > Drossel: Die Sättigungsgrenze sollte in der Benedikt'schen > Originalschaltung mindestens 350-400mA betragen. Bei diesem Typ sind das > nur 150mA, d.h. die Spule sättigt. Könnte es sein, dass der MC34063A > warm wird. Nicht ganz: Die 150mA sind der DC Wert. Man kann da auch problemlos etwas höher gehen. Ich habe bei mir selbst schon Spulen in Widerstandsbauform verwendet, lief ohne Probleme. Weiterhin ist der Spitzenstrom auf etwa 300mA begrenzt. Mehr als 300mA wird die Spule also nie abbekommen. @ Heiko Die Betriebsspannung muss mindestens etwa 4,5V betragen, damit der Spannungswandler sauber läuft. Ansonsten würde ich auf irgendeinen Verdrahtungsfehler beim Aufbau tippen (irgendwas rund um den Transistor).
Benedikt K. wrote: > Weiterhin ist der Spitzenstrom auf etwa 300mA begrenzt. Mehr als 300mA > wird die Spule also nie abbekommen. Ok, ich hatte nicht mehr im Kopf ob es 300mV oder 330mV waren und deshalb etwas aufgerundet. Ist ein solche Spule mit 150mA mittlerer Belastbarkeit tatsächlich bei 300mA noch nicht in Sättigung? Denn um letzteres geht es hier ja. Allerdings könnte man wohl R6 auch etwas hochdrehen um dem Maximalstrom zu reduzieren. > tippen (irgendwas rund um den Transistor). Wobei man den ja nur für 5V Versorgung braucht. Wenn man für den Inverter der Lampe sowieso 12V im System hat, dann ist auch die MC-Standardschaltung verwendbar.
A. K. wrote: > Ist ein solche Spule mit 150mA mittlerer > Belastbarkeit tatsächlich bei 300mA noch nicht in Sättigung? Denn um > letzteres geht es hier ja. Ja. Die 150mA sind meist der Effektivwert, basierend auf der thermischen Belastbarkeit der Spule. Genaueres müsste man jetzt im Datenblatt nachlesen. Da diese Spule mehr als Entstör/Filterspule als für Schaltnetzteile gedacht sind, werden diese meist auf der Wechselspannungsseite eingesetzt. Das 1,4x vom Spitzenstrom halten die daher also eigentlich immer aus, ohne in die Sättigung zu gehen. Ich habe mal eine 100µH 1A Spule in dieser Bauform gemessen: Der Strom wurde über einen 33mOhm Shunt gemessen, es sind also etwa 1,5A/div. Ab etwa 1,5div fängt die Sättigung an, verwendbar ist die Spule aber noch bis etwa 2div, also 3A. Da es sich um eine sehr längliche Spule handelt, die dazu noch keinen geschlossenen Ferritkern aufweist ist, kommt diese sowieso nur sehr langsam in die Sättigung. Bei einem Ringkern ist der Knick viel abrupter und der Anstieg danach sehr viel steiler. > Allerdings könnte man wohl R6 auch etwas hochdrehen um dem Maximalstrom > zu reduzieren. Nicht viel: Wenn man von 5mA bei (-)25V ausgeht, und von 3V die die Spule abbekommt (Verluste in der Wicklung, Transistor usw.), dann benötigt man 42mA bei 3V. Da der Spitzenstrom aber um einiges höher ist (man nimmt meist Faktor 4 an), wären das 168mA, bzw. etwas unter 2 Ohm. > Wobei man den ja nur für 5V Versorgung braucht. Wenn man für den > Inverter der Lampe sowieso 12V im System hat, dann ist auch die > MC-Standardschaltung verwendbar. Ja, bei mir läuft alles (inkl CCFL Inverter mit 5V. Eine zusätzliche 12V Spannung ist da stören und führt nur zu Fehlern (5V und 12V sind schnell mal vertauscht)...
Ich habe mal etwas gesucht, aber leider konnte ich kein Datenblatt einer vergleichbaren Spule finde, das mehr Infos enthält. Epcos gibt den max. Strom z.B. nach folgendem Kriterium an: Max. permissible DC with temperature increase of ≤40K at rated temperature @ Heiko Mess mal den Widerstand der Spule. Ich glaube die hat einfach einen zu hohen DC Widerstand. Ich konnte leider kein Datenblatt finden, aber ich tippe mal auf irgendwas >10 Ohm.
Benedikt K. wrote: > @ Heiko > Mess mal den Widerstand der Spule. Ich glaube die hat einfach einen zu > hohen DC Widerstand. Ich konnte leider kein Datenblatt finden, aber ich > tippe mal auf irgendwas >10 Ohm. Hattest Recht, ja. Sind um die 17 Ohm. Danke für Eure Mühe und viele Grüße in Eile, Heiko
So 5 Ohm und kleiner sollten eigentlich auf jedenfall funktionieren. Bis 10 Ohm kann es gehn, muss aber nicht.
Hallo Benedikt, vielen Dank für das schöne Projekt! Um auch das reflektive Display von Pollin betreiben zu können (Sharp LM038QB1R10), habe ich Deine Schaltung mit der Versorgungs-Lösung aus Beitrag Beitrag "Re: LCD-Modul SHARP LM038QB1R10???" kombiniert. Vielleicht hat noch jemand Interesse, deshalb habe ich Schaltplan und Layout angehängt. Einseitige Platine, bis auf eine Ausnahme ausschließlich mit SMD-Bauelementen bestückt. Erstellt mit einer aktuellen Eagle Freeware Version. Der Mikrocontroller wird mit 3,3V bei 12,288 MHz betrieben. Um nicht ausrechnen zu müssen, welche Refreshrate hiermit noch möglich wäre, habe ich diese im Verhältnis auf 50 Hz heruntergesetzt, was im Test aber noch für eine flimmerfreie Darstellung ausreichte. Leider stehen eingehendere Tests noch aus - der Aufbau hat kurz funktioniert, allerdings mit vertikalen Fehlstreifen. Schuld war wahrscheinlich ein Kontaktproblem des FFC-Kabels. Dieses stammt aus einem DVD-Laufwerk, wegen der erforderlichen diagonalen Kontaktierung an einem Ende gefaltet. Die spontane Idee, es einfach abzuschneiden und durch Kratzen neue Kontaktflächen freizulegen, hat leider zur endgültigen Zerstörung des Kabels geführt :-) Die verwendete FFC-Buchse stammt ebenfalls aus dem Laufwerk, der Hersteller ist mir nicht bekannt, das Layout muss somit wahrscheinlich angepasst werden. Gruß, Eric
Hallo, ersteinmal : ein schönes Projekt. ich habe alles soweit aufgebaut. wie sende ich nun ein "Hallo Welt" via Uart zum Display ? werden dazu die Steuerbefehle benötigt ? bei mir tut sich leider nichts mein Test bisher : mit dem Hyperterminal "57600 Baud" einen Text gesendet. Quellcode und Schaltung sind vom 1. Beitrag Stephan
Alle gesendeten Zeichen sollten direkt auf dem LCD angezeigt werden. Steuerzeichen werden nur benötigt, um z.B. den Cursor in eine andere Zeile zu setzten.) Erscheint nach dem Einschalten irgendwas auf dem Display? Falls nicht, dann liegt irgendein Fehler beim Aufbau vor.
Hallo Benedikt, bist du schnell. die Spannung vom Spannungswandler sinkt nach dem einschalten auf ca. -18 Volt ab. -------------------------------------------------------------- "Erscheint nach dem Einschalten irgendwas auf dem Display?" das Display selbst ist etwas hell, die Pixel sind dunkel zu erkennen. ersteinmal danke Stephan
Hallo, jetzt wird alles angezeigt es lag am Kontrast. Ich habe R1 durch ein 4,7k Poti ersetzt. siehe Beitrag vom 13.04.2008 16:15 vielen Dank Stephan ##################### vielleicht sollt man noch erwähnen, das für den ersten Test keine seriellen Daten via Uart erforderlich sind. das "Hallo Welt" hat Benedikt schon Bildschirmfüllend integriert.
Hallo, Ergänzung zu meinem Beitrag vom 14.10.: Nach längerer Wartezeit ist endlich ein passendes FFC-Kabel eingetroffen, die Schaltung funktioniert damit wie erhofft. Das Display (Sharp LM038QB1R10) ist meiner Meinung nach nicht schlecht (guter Kontrast, bei mäßiger Beleuchtung noch gut lesbar). Im Anhang sende ich ein Foto vom Display - leider mit viel Bildrauschen, es steht mir nur eine Handykamera zur Verfügung. Noch einmal vielen Dank für das Projekt! Gruß, Eric
Mein Display ist soeben eingetroffen, wie durch ein Wunder ist es trotz der lausigen Verpackung (voellig zermatschter Karton) ganz geblieben. Moegen die Spiele beginnen!
Habe nicht weitergemacht, weil sich die Transistoren auf meinem (vermuteten) 12V Inverter bei 9 Volt in Form von uebelriechenden Rauch verabschiedet haben. War wohl ein 5V Geraet. Einen weiteren Inverter hatte ich nicht, allerdings habe ich eine SMD-Platine mitbestellt, mit der man das Display im Grafikmodus betreiben kann.
Wie schliesst man das NAN YA display an? das pinout in dem Datenblatt hat mir nicht viel geholfen. Wo ist bei dem Kabel pin 1?
Ich habe mir das weiße NanYa Display von Pollin gekauft (LCD Modul NAN YA LTBE9S159J1K) und die Schaltung auf einem Breadboard aufgebaut. Es funktioniert allerdings noch nicht viel: Nach dem Einstellen der Kontrastspannung erscheinen viele vertikale Linien auf dem Display, d.h. in jeder Zeile wird das gleiche Bitmuster ausgegeben. Außerdem schaltet sich das ganze Bild ca. 2 Mal je Sekunde ein und aus. Da das Programm sicher solch ein Ein- und Ausschalten nicht erzeugt, fällt mir als einzige vernünftige Erklärung ein, dass aus irgendeinem Grund ständig neu Reset gemacht wird. Aber das Reset-Pin liegt bei mir auf HIGH. Und Watchdogs müssten deaktiviert sein. Da ich aber mit den Fusebits noch nicht so viel Erfahrung habe, wäre es nett, wenn sie jemand mal posten könnte. Ich habe für den ATMEGA8 momentan folgende Fusebits programmiert (Bit=0): SPIEN, BOOTSZ1, BOOTSZ0. Ich habe dazu einen Online Fuse Calculator verwendet. Stimmt es, dass die Kontrastspannung nicht anliegen darf, wenn die Versorgungsspannung (noch) nicht eingeschaltet ist (ich habe mal so was gelesen, kann es jetzt aber nicht mehr finden) ? Gruß Florian
Inzwischen habe ich es auch zum Laufen gebracht. Es lag wohl an einer falschen Verbindung zwischen µC und Display und einer nicht korrekt eingestellten Kontrastspannung. Meine Verkabelung dürfte zwar keinen Schönheitswettbewerb gewinnen, aber wie man sieht, funktioniert es ! Vielen Dank an Benedikt.
Ich als PIC- und Basic- Jünger wollte mich der Sache mit dem Display mal von der PICBasic Version aus nähern. Mein erster Versuch war ein Adaptieren von Bendikts Assebler Code auf den 16F876 PIC. Ich mußte jedoch sehr schnell feststellen, daß das ein Schuß in den Ofen wird. Es fehlen dem PIC wichtige Befehle und er ist zu langsam. Letzteres Kann man etwas aufmöbeln, indem man den PIC einfach mit einem Oszillator hemmungslos übertaktet (100% sind kein Problem für dem PIC). Aber selbst mit dieser Lösung kam ich nur auf eine Framerate von ich glaube etwa 17 fps. Viiiiel zu laaaangsaaam. So folgte dann der Umstieg auf einen 18F Typ. Die Idee der Code-Anpassung habe ich dann aber fallen gelassen, letztlich auch wegen dem Forschertrieb und habe den Code mit einer Mischung aus Basic und Assembler neu geschrieben. Mir wurde dann auch relativ schnell klar, warum Benedikt die Zeichen so im Speicher verteilt hat. Das spart ne Menge Rechenarbeit. Ich habe diese Rechenarbeit alerdings mit eingearbeitet nutze den Interrupt nicht als Zeilentakt sondern für die Dateneingabe des UART mit anschließender Auswertung. Ein FIFO ist bis jetzt noch nicht implementiert. Das Ergebniss sind flimmerfreie 69 FPS bei einem natürlich auch wieder völlig übertakteten PIC mit 40 MHZ Oszillator und eingeschalteter PLL. Macht dann 80 MHZ Takt bzw. 20 MHZ im Ausführenden Code. Bei 5,5V könnte man sogar noch bis auf knapp 100MHZ hochgehen, ist aber angesichts der jetzt schon vorhanden knapp 70 FPS nicht nötig. Anfang der Woche ist mein 128Kx8 SRAM gekommen. Das gibt dann das nächste Projekt: Die Grafikeinbindung. Hier werde ich dann wohl um ein FIFO nicht mehr drum herum kommen. Im Anhang mal ein Bild. Die Flecken auf dem Display waren schon vom Kauf an da. Bewährte Pollin Qualität halt. Aber das gute an Pollin ist: Eine bebilderte eMail und das kostenlose Ersatzdisplay ist auf dem Weg.
Meik Dittmann wrote: > Mir wurde dann auch relativ schnell klar, > warum Benedikt die Zeichen so im Speicher verteilt hat. Das spart ne > Menge Rechenarbeit. Ja, ich nutze da so ziemlich alle Tricks die man nutzen kann, daher ist der Code auch in Asm und nicht wie bei meinen anderen Programmen in C geschrieben. Nur so ist es möglich in Echtzeit den Text in Grafik umzuwandeln und so das Display mit nur 1kByte SRAM ansteuern zu können. > Ich habe diese Rechenarbeit alerdings mit > eingearbeitet nutze den Interrupt nicht als Zeilentakt sondern für die > Dateneingabe des UART mit anschließender Auswertung. Könnte ich den Code davon bekommen? Es würde mich nämlich interessieren, wie du das umgesetzt hast. > Im Anhang mal ein Bild. Die Flecken auf dem Display waren schon vom Kauf > an da. Sehen diese Flecken organisch aus, also so als wenn irgendeine Art von Flechte? Falls ja, könntest du mal ein hochauflösendes Bild von solch einem Flecken machen (am besten geht das per Scanner)? Was das ganz genau ist, habe ich noch nicht rausgefunden, nur die Ursache: Eine starke mechanische Belastung durch irgendeinen spitzen Gegenstand. Entweder sind das Mikrorisse im Glas, durch die Luft eindringt und den Flüssigkristall oxidieren lässt, oder diese Strukturen entstehen zwischen Glas und Polfilter. Da es hier gelblich aussieht, dürfte das der erste Fall sein, denn die Pixel sind streng genommen blau/weiß und werden durch einige Tricks schwarz/weiß gemacht.
Hallo Benedikt. Ich habe mal ein hochauflösendes Bild, den Basic Code und den daraus resultierenden ASM Code des Compilers als Zip eingefügt. Der ASM Code sieht schlimm aus, da der Compiler seinen ganzen Routinen da noch mit einbindet, auch die, die gar nicht gebraucht werden. Der eigentliche ASM Code, der direkt ins HEX File umgesetzt wird, ist leider nicht zugänglich. Zu den Flecken. Das Display hatte ich mal auseinander gehabt. Es sieht fast so aus, als würde an den Stellen der Flüssigkristall fehlen. Man kann da nämlich einfach durchgucken. Eine Beschädigung ist jedenfalls nicht erkennbar, auch wenn das Display lose mit scharfkantigen, schweren Gegenständen im Karton lag. Ach ja. Mich würde mal interessieren, wie viele Stunden du für die Erstellung der Software gebraucht hast. Gruß Meik
Meik Dittmann wrote: > Hallo Benedikt. Ich habe mal ein hochauflösendes Bild, den Basic Code > und den daraus resultierenden ASM Code des Compilers als Zip eingefügt. > Das Display hatte ich mal auseinander gehabt. Es sieht fast so aus, als > würde an den Stellen der Flüssigkristall fehlen. Man kann da nämlich > einfach durchgucken. Eine Beschädigung ist jedenfalls nicht erkennbar, > auch wenn das Display lose mit scharfkantigen, schweren Gegenständen im > Karton lag. Danke. Die Flecken sind genau das wie ich es vermutet habe. Ich habe mittlerweile schon etliche solcher Flecken gesehen, aber bisher war noch keiner so intensiv und großflächig wie bei dir. Wenn ein Pixel aktiv ist, wird er transparent und man lässt die Hintergrundbeleuchtung durch. Wenn der Pixel oxidiert ist, könnte er etwas ähnliches bewirken. Eine Vermutung der Ursache ist der Kleber vom Polfilter der sich irgendwie verändert. Ich persönlich tendiere aber mehr zu den Mikrorissen + Oxidation, da viele der betroffenen Displays von Pollin stammen, und ich auch mal welche hatte, bei denen genau an der Stelle auch deutliche Löcher in der Verpackung waren. Solange Pollin die Displays problemlos ersetzt ist das auch halb so schlimm. Der ASM Code ist gut optimiert, eventuell könnte man hier aber noch eine Kleinigkeit optimieren: Lesen = Lesen + 2048 Lesen = Lesen + ZeichenZeile Dieser Wert wird für jedes Byte berechnet, ist aber innerhalb einer Zeile konstant. Wenn man diese Berechnungen vor einer Zeile ausführen würde, dann könnte man hier vielleicht ein paar Takte einsparen, da man nur noch den vorberechneten Wert nach Lesen kopieren muss. > Ach ja. Mich würde mal interessieren, wie viele Stunden du für die > Erstellung der Software gebraucht hast. Das ging eigentlich relativ flott (<10h), da ich einen Großteil schon aus anderen Projekten übernehmen konnte. Relativ aufwendig war das C Programm das mir den Zeichensatz passend erzeugt.
Hallo zusammen, es sind definitv mech. Beschädigungen, die zu diesen Ausfallerscheinungen führen. Bei meinem Display befand sich der Stecker der Hintergundbeleuchtung nicht neben dem Display in der Tüte, sondern umterm Display. Und genau an dieser Druckstelle zeigte das Display dann eben jene komischen Flecken. Pollin schickte diesmal jedoch nicht einfach so Ersatz, sondern bestand auf die Rücksendung und lieferte danach ein anstandsloses Display als Ersatz. Gruß Axelr. Übrigens: Tolles Projekt!! Bau ich mir irgentwann mal auf ;-))
Benedikt K. wrote: > Der ASM Code ist gut optimiert, eventuell könnte man hier aber noch eine > Kleinigkeit optimieren: > Lesen = Lesen + 2048 > Lesen = Lesen + ZeichenZeile > > Dieser Wert wird für jedes Byte berechnet, ist aber innerhalb einer > Zeile konstant. Wenn man diese Berechnungen vor einer Zeile ausführen > würde, dann könnte man hier vielleicht ein paar Takte einsparen, da man > nur noch den vorberechneten Wert nach Lesen kopieren muss. Da hast du recht. Das war das, was ich auch schon mal entdeckt und kurz darauf wieder vergessen hatte. Nachdem die Framerate bei knapp 70 lag, hatte ich mich auch nicht weiter darum gekümmert. > Das ging eigentlich relativ flott (<10h), da ich einen Großteil schon > aus anderen Projekten übernehmen konnte. Relativ aufwendig war das C > Programm das mir den Zeichensatz passend erzeugt. Aha. Bei mir hats dann doch etwas länger gedauert (>30h geschätzt, wahrscheinlich mehr). Mag wohl auch damit zusammenhängen, daß das mein erstes Projekt mit einem Display dieser Art ist, mein erstes Projekt mit einem PIC18 und mein erstes Projekt, indem ich Asm-Code verwende ist. Eine sehr große Hilfe war allerdings deine Font-lib. Ich glaube ohne diese hätte ich nicht damit angefangen. So, die nächsten Tage fange ich glaube mal mit dem Grafik-Kram an. Da hab ich schon ein bisserl Angst vor. Das wird hart.... Reichelt hat einen günstigen SRAM mit 128K x 8 für -,88€. Da werde ich wohl die Adress und Datenleitung über einen(zwei) 74ls256 Multiplexen. Sonst hätte ich alleine für dem RAM 24 I/O's belegt. Ich denke, das ist schon mal ein gute Ansatz. Ich hoffe nur, daß ich wenns fertig ist nicht über dem Preis von einem SED liege. Für 15 Euro hatte ich den nämlich schon mal gesehen. Oder gibts die mitlerweile günstiger? Meik
axelr. wrote: >...Pollin schickte diesmal jedoch nicht einfach so Ersatz, sondern bestand > auf die Rücksendung und lieferte danach ein anstandsloses Display als > Ersatz. Versuchs mit bebilderten eMails. Das wirkt meistens wunder. Meik
Meik Dittmann wrote:
> Versuchs mit bebilderten eMails. Das wirkt meistens wunder.
Ja, diese Erfahrung habe ich auch gemacht. Schöne Email geschrieben,
Bilder mit den Beschädigungen dazu, noch ein paar Kommentare wie
schlecht die Verpackung doch sei, und ich bekam direkt neue Displays
zugeschickt (es waren zwar die falschen, aber da die ursprünglichen
Displays sowieso ausverkauft waren, und die falschen sogar noch teurer
waren, war das am Ende auch egal.)
Hallo Benedikt, ich hab da mal ein ganz kleines Problem: Eine MMC-Karte hat ein "Telefonbuch" gespeichert. http://comwebnet.weimars.net/forum/showthread.php?tid=271 Mit Deiner Variante mit m168 wird die, mit einem m128 gelesene Karte aufs Display ausgegeben.Ein 10KOhm Widerstand begrentz den Strom beim Datenaustausch der Controller. Nun wollte ich mit dem Befehl 13 (hex0D) den Kursor nach links in der nächsten Zeile setzen. Das ist der einzigste Befehl, der bei mir nicht geht. Gibt es da ein Trick? Hab schon mit ein Terminalprogramm versucht. Ich kann die Zeilenanfänge auch berechnen lassen, aber da der Befehl da wäre... >Eventuell baue ich irgendwann auch noch einen echten Cursor ein, der >grafisch über den Text gelegt wird da wäre meine 2.Frage Eine Zeile markieren, die ich beim Scrollen mitzähle und dann eine Ausgabe in Grossformat. Wigbert
Wigbert Picht-dl1atw wrote: > Nun wollte ich mit dem Befehl 13 (hex0D) den Kursor nach links > in der nächsten Zeile setzen. Das ist der einzigste Befehl, > der bei mir nicht geht. Er ist auch nicht in der Software eingebaut. Vermutlich hatte ich den beim Umbauen auf die großen Zeichen entfernt und vergessen wieder einzubauen. Jetzt sollte es funktionieren. Daher hier nochmal das komplette Paket für den mega168. >>Eventuell baue ich irgendwann auch noch einen echten Cursor ein, der >>grafisch über den Text gelegt wird > > da wäre meine 2.Frage Eine Zeile markieren, die ich beim Scrollen > mitzähle und dann eine Ausgabe in Grossformat. Prinzipiell wäre das möglich. Muss ich mal schauen ob das noch reinpasst.
@ Benedikt Ich bin strk beeindruckt. Respekt. Die CSV(Exel)-Datei der Karte bringt die Steuerzeichen automatisch mit. Rest macht Dein Code. Fehlte eben halt nur Deine Auswertung im Code. Wigbert
@Benedikt das markieren einer Zeile geht mir nicht aus dem Kopf. Eine Möglichkeit wäre, vor jeder Zeile ein Leerzeichen zu setzen. Ein Zähler, der die Anzahl der Tastendrücke zählt, vergleicht im Nachhinein die Arraynummer und ersetzt in der ausgewählten Zeile das Leerzeichen durch eine Klammer oder ein anderes Sonderzeichen. Ich hätte meine Zeile markiert, würde aber ein Zeichenplatz opfern. Das stimmt mich natürlich traurig... Wie verhält es sich mit Befehl 30 + Dummy, das wären wohl die Sonderzeichen? Hättest Du eine einfache andere Idee. Wigbert
Der Befehl zum Invertieren ist nicht das Problem, sondern die Realisierung der Invertierung selbst. Denn dazu müssen alle Zeichen aus dem Zeichensatz invertiert werden, ehe sie ans Display übertragen werden. Aus Gründen der Rechenleistung müsste dazu die Ausgaberoutine die den Text in Grafik umwandelt und ans Display ausgibt komplett nochmal eingebaut werden, nämlich für invertierten Text. Und da diese bisher schon 2x existiert (einmal für kleine und einmal für große Zeichen), wird das schnell sehr groß.
@Benedikt das invertieren(also Negativbild) würde eigentlich nur für die kleinen Zeichen erfolgen müssen. Grosse Zeichen zu invertieren und nochmals abzulegen , sehe ich kein Sinn, da ja nur EIN Ereignis nochmal hervorgehoben werden soll. Das grösste Problem sehe ich in der Motivation. Wenn ich mir die Downloadrate Deines letzten Codes ansehe, verstehe ich den vielfachen Download meiner Bilder nicht, zumal die Tel.Nr. der Model's frei erfunden sind. Eigentlich schade, das wir hier nur ein Zwiegespräch führen. Mir würde im Moment auch reichen, ob ein zusätzlicher Speicher, Eprom oder so, anderer Controller, notwendig sein würde. Wigbert
Ich habe nochmal drüber nachgedacht: Eine Invertierung ist eigentlich eine gute Idee, denn damit kann man z.B. auch das gesamte Display invertieren oder ähnliches. Daher habe ich das mal eingebaut: Jede Zeile kann jetzt einzeln oder in beliebigen Kombinationen invertiert werden. Der Flash ist jetzt komplett voll (nur noch 0,8% frei). Eine Invertierung der großen Zeichen ist daher nicht mehr drin. Ich hatte auch nochmal mit dem Cursor gebastelt, aber das ist doch ziemlich kompliziert, da man sich für jedes Zeichen das eigentliche Textzeichen merken muss wenn der Cursor angezeigt wird usw. Ich habe auch ein Bild von dem 8x12 Zeichensatz dazugepackt, da bei den Zeichen <32 doch ein paar interessante Sonderzeichen dabei sind, die man auch als Markierung verwenden kann. Die kann man über 30,0,0,Nummer ansprechen.
Benedikt K. (benedikt) ich hab die Funktionen mit ein Terminalprogramm aufgerufen. Prima, ich danke Dir. Die Markierung lässt sich auch gut erkennen Wigbert
@Benedikt K. (benedikt) also das invertieren der Zeilen klappt ganz gut, aber ich kriege das Invertieren nicht ausgeschaltet. Damit ich es richtig verstehe: ich übertrage 31 (Befehl) 10 (10.Zeile) und die Zeile wird weiss. Ich dachte beim 2. mal übertragen der Zeichen wird die Invertierung aufgehoben? Geht nicht. Wo ist mein Fehler? Ansonsten eine interessante Sache. Wigbert
Du sendest 31 10 1 -> Invertierung an. Zum Abschalten sendest du 31 10 0. So kann man mehrere Zeilen invertieren.
@Benedikt K. (benedikt) Cool, warum hat die Invertierung ohne funktioniert? Ich hatte die Pakete 2x gesendet muss irgendwie zum Einschalten gereicht haben. Dank Dir. Wigbert
Ja, der Befehl 31 von dem 2. Befehl wurde als ein/aus Parameter verwendet. Alles außer 0 schaltet ein, nur 0 schaltet aus.
So, jetzt kann ich die invertierte Zeile scrollen, pro Tastendruch ein tiefer oder ein höher, je nachdem. War ja (fast) gar nicht so schwer. Nun muss, bei mein Projekt, aus der inv. Zeile die Tel.Vorwahl und die Tel.Nr. herausgefiltert werden und in 2 Zeilen GROSS dargestellt werden. Sollte auch nicht so schwer sein. Wigbert
Hi, zwischenzeitlich lassen sich Dateien, die auf eine MMC-Karte abgelegt sind, sehr schön aufs Display darstellen. Die einzelnen Dateien stellen die Seiten dar, eine Markierte Zeile wird nochmals Gross hervorgehoben. Nach Auswahl der Seite, wird die Zeile markiert und die Tel.Nr. ist auch ohne Brille zu lesen... @Benedigt wenn ich die Zeile(von MMC) bis auf den letzten Zeichenplatz beschreibe, entsteht eine Leerzeile aufs Display. Mir ist bekannt das Steuerzeichen von der Datei mit übertragen werden. Berechne ich aber für die Grossausgabe die letzten Zeichen von hinten, so wird kein weiterer String erkannt und die Ausgabe stimmt(findet in den Leerplatz kein String). Muss ich jetzt in der Kleinausgabe auch filtern? Gehört hier vielleicht nicht ganz hierher, aber dank Dir mal trotzdem schon. Wigbert
Wigbert Picht-dl1atw wrote: > wenn ich die Zeile(von MMC) bis auf den letzten Zeichenplatz beschreibe, > entsteht eine Leerzeile aufs Display. Mir ist bekannt das Steuerzeichen > von der Datei mit übertragen werden. Das dürfte daran liegen, dass er am Ende einer Zeile automatisch in die nächste Zeile geht (da im Speicher alle Zeilen hintereinander liegen). Wenn dann nochmal der Befehl für eine neue Zeile kommt, dann landet er halt noch eine Zeile weiter unten.
also wird ein Befehl, für neue Zeile, von der eingelesenen Datei kommen, und ein weiterer Befehl ist im Displaycode schon drin. Stimmt. Wigbert
Hi, die vorherige Grossausgabe auf dem Display sah ja noch "Nackt" aus. Ich hab dann mal den Vornamen noch hinzugefügt. Da das Grossformat der Zeichen nur Grossbuchstaben kennt, habe ich nach dem Herausfiltern des Vornamen, alle Zeichen >96(ASCII) mit 32 subtrahiert, fix aus der Stringlänge die Zeilenkoordinate berechnen lassen(damit der Vorname in der Mitte der Zeile ausgegeben wird) und dann ausgegeben. Nun wird in meinem Bz. aus klein Paul gross PAUL Achja und alles in Bascom Na wenn dieses Display nicht interessant ist. Wigbert
Hallo! Hab mal ne kurze Frage: Wäre es möglich das Teil auch per Fuunk zu realisieren? MfG
@Maximilian Keller (langerhans) >Wäre es möglich das Teil auch per Fuunk zu realisieren? wenn Du jetzt meinst, Daten per Funk zu empfangen und aufs Display darzustellen, sollte das mit Beitrag "bidirektionale RS232 Funkbrücke mit RFM12" kein Problem darstellen Wigbert
Danke für den Link, das sollte ja vom Speed her gut passen. Also brauche ich : - Dieses LCD Board von hier - Ein Funkmodul Board das an den UART kommt - Ein Funkmodulboard inkl. MAX232 für die PC Seite Damit sollte ich das Wireless LCD also hinbekommen. Und wenn ich das richtig sehe sogar ohne Anpassung des Codes?! MfG
@Maximilian Keller (langerhans) genau, Ich hab da schon sowas ähnliches mal vorbereitet. Aber leider fehlt im Moment die Zeit, das aufzubauen. Wigbert
Das klingt ja nicht schlecht! Ich hab die bestellung eben mal zusammengestellt, das wäre gut 30 euro inkl. LCD und Funkmodulen. Inverter habe ich noch und die MAX232 Teile hab ich auchnoch einmal hier rummliegen. Wenn cih mal Lust hab werd ichs auf jeden Fall mal bauen! MfG
Hallo, ich möchte gerne das Project nachbauen...habe aber leider nicht die Erfahrung...und deshalb würde ich gerne wissen was im Schaltplan "K1" darstellt... Und welche Art von Kondensatoren mit 1 dünnen und 1 dicken Strich sind... Danke
@Hans (Gast) K1 ist ein OptoMosfet zum Schalten von VLCD, kannst du aber auch bei den Pollin Displays weglassen soweit ich weiss, daher ist es auch gestrichelt. Und die Kondensatoren, die du meinst sind Elektrolytkondensatoren. MfG
Ok. danke und welche Art sind die mit 2 gleichen strichen...? Danke
Und wie funktioniert das dann ohne OptoMosfet...ich denke man braucht ja den VLCD -Anschluss...wo muss ich ihn dann anbringen... Dazu würde ich gern wissen ob man den Bildschirm auch mit Akku betreiben kannn, oder ob es sich nicht lohnt da er zu viel Strom braucht.
Mir viel noch was ein: Ich weis noch nicht welches Object L2 dastellt... Wenn jemand zu dem Schaltplan eine Bestellliste hat, würde ich mich freuen wenn er sie mir schreiben könnte, da ich mir bei einigen Bauteilen nicht ganz sicher bin...
@Hans (Gast)
>ich möchte gerne das Project nachbauen...
Du bist Dir sicher das Du das schaffst.
also der VLCD wird angeschlossen , indem statt des Pin 4/6 eine
Drahtbrücke genommen wird
L2 ist die Speicherspule der neg. Spannungserzeugung.
Wenn Du bei Reichelt bestellen möchtest, mach ich mal die BestellNummern
fertig.
Wigbert
Wenn du es tun willst... joaa ich bin zwar jung aber ich denke ich bekomme das hin, teilweis weis ich schon dies und das aber meine Brüder werden helfen... Was ich vorhab ist den Bildschirm wie ganz oben beschrieben mit Atmega8 zu verbinden und dann noch 4 schalter und 1 Infarot-Sender/Empfänger dazu... (aber das kommt später) Eine Atmega 8 habe ich schon gefunden...aber die geht leider nemer nachdem ich 3 verschiedene richtige Parallelinterfaces ausprobiert habe. Programmierkenntnisse habe ich aber bis jetz nur mittelmäßig in Basic... Aber ich werde C noch lernen... Und Zeit habe ich auch...
@Hans (Gast) eigentlich ist das gar nicht so schwer. Wobei, elektronische Grundkenntnisse sollte man sich schon aneignen, bevor ein GLCD sich in Rauch auflöst. Ich hab da mal in Exel was zusammengestellt. Ich hab bewusst eine Universalplatine und ein 20pol Kontaktbuchse mit eingearbeitet. Wenn Du jetzt ein Elektricker um ein Stück Telefonleitung bittest, hast Du Drähte, die sich in die Kontakte einstecken lassen, bzw. zur Verdrahtung der Universalplatine. Für den Anschluss des Displays würde ich eine Adapterplatine bauen. Ich hab da von Pollin ein Flexprint-Stecker mit angegeben, wäre zwar 22 polig, aber das Displaylöten würde umgangen. Beitrag "Re: Einfacher Low Cost LCD Controller für 320x240 LCD im Textmodus" Inverter gibt es viele, ich hab mal ein für 5V Eingangsspannung herausgesucht. Beitrag "Re: Einfacher Low Cost LCD Controller für 320x240 LCD im Textmodus" K1 wäre bei C. zu haben, ist aber für das angegebene Pollin-GLCD nicht notwendig. Ineressant wäre auch mal die Preiszusammenstellung. Wigbert
Ok...vielen, vielen Dank für die Mühe... einen Inverter, muss ich mal schauen, soweit ich weis hab ich sogar noch einen passenden... die Universalplatine spar ich...ich hab noch "Lochplatinen", oder wie die heißen...und normale auch noch...das ätzen wird auch kein Problem... Der Draht da hab ich sogut wie unentlich... und Wiederstände hab ich ne ganzes Sortiment... "elektronische Grundkenntnisse", jab die hab ich so im etwa... So dann werd ich heut mal die Bestellung abschicken. Und nochmals Danke für die viele Mühe...(-: Hans
Hi, ich sehe gerade R3 muss die R. BestellNr. 1/4W 47K heissen, und der AQY212 würde 1x benötigt. Die Bauteilbezeichnungen beziehen sich auf Beitrag "Re: Einfacher Low Cost LCD Controller für 320x240 LCD im Textmodus" achja, Cx wäre der Abblockkondensator Pin 7 gegen GND von IC1 (nicht im Schaltbild) Wigbert
Ähm Entschuldigun wenn ich mich jetzt voll blöd anstell...aber welchen Zweck hat der "ATMEGA 168-20DIP"...ich dachte der LcD wird so wie im ersten Schaltplan mit einer Atmega8-16PI angetrieben... und nochmals Danke für die Mühe Hans
@Hans (Gast) wenn alle Funktionen genutzt werden sollen (Grossdarstellung, Invers) dann wird der ATMEGA168 benötigt. Bei reiner Textausgabe wie Beitrag "Einfacher Low Cost LCD Controller für 320x240 LCD im Textmodus" reicht natürlich der ATMEGA8 Da die Pinbelegung beider IC's gleich ist, kann man willkürlich die Controller einsetzten, wie benötigt, in dem Schaltungsaufbau. OK der ATMEGA 8-16 DIP íst etwas günstiger. Wigbert
Oh...ok...hat sich erledigt...hab nachgeschaut...gut, dann nehm ich den. Wenn da ein unterschied des Interfaces der Atmega8 und ATMEGA 168 ist, würdest du mir die Bauteile für ein Parallelinterface des ATMEGA 168 sagen. Vielen Dank... Hans
Hallo! Ich habe mich jetzt gegen die RFM12 Module entschieden und werde stattdessen ein BTM-222 nehmen. So spare ich mir die PC Seite, da hab ich schon BT ;). Habe das Modul eben bestellt, näachste Woche bestelle ich dann alles andere und dann wird gebastelt. Ich werde dann hier gerichten! MfG
Heyy...die bestellung ist schon hier, ging sehr schnell....nur ich wundere mich über die größe des Displays...ist nicht größer als ein Gameboy Bildschirm...auf den fotos hier sieht er 4 mal so groß aus...ich hab auch "LCD-Modul SHARP LM038QB1R10" genommen...war billiger...(-: Nun will ich wissen ob alle Module so groß sind... unter pollin stehen keine Maße dabei....Bitte um Antwort Hans
Ok...mein Bitte kam weng zu schnell, ich habe bemerkt das alle Module gleich groß sind. Zumindest habe ich "LCD-Modul SHARP LM038QB1R10" genommen, da mein LCD keine Leuchtstoffröhre hat, frage ich mich ob der Inverter noch notwendig ist (der ist doch für das gedacht, oder?) Danke
Das LM038QB1R10 ist das kleinste Display, da dies für einen PDA gedacht war. Daher ist auch der Anschluss mit dem feinen Stecker etwas kompliziert. Die anderen beiden Displays sind von den Abmessungen her gleich und deutlich größer als das LM038QB1R10. Da das LM038QB1R10 keine Hintergrundbeleuchtung hat, benötigt es auch keinen CCFL Inverter. Dafür benötigt es mehrere Betriebsspannung die man noch erzeugen muss.
Vielen Dank... wüsstest du auch wie viel Volt und er insgesamt verbraucht, da ich bin dem Datenblatt nicht ganz zurecht komme... Danke
Vielen Dank... Ich hatte vor das ganze System in ein Handgehäuse zu bauen und des mit ner Batterie zu betreiben...aber 16V, da brauch ich ja ne besondere...
Dafür ist das Display ideal: Das Display ist auf Low Power optimiert, es verbraucht nur rund 30-50mA bei 3,3V inkl Spannungswandler auf die +/- 16V.
Ok...wüsstest du wo ich noch ein Verbindungskabel herbekomm und einen Adaptor auf ein größeres Raster der Anschlüsse...in dem Datenblatt erwähnen sie so was auch...aber auf der Homepage des Produktes is alles English...(kein Bock zum Übersetzen)? Danke
@Hans (Gast)
>...(kein Bock zum Übersetzen)?
falsche Antwort.
Vielleicht denkst Du mal kurz darüber nach, wieviel Zeit wir hier
Kostenlos!! verbringen um zu helfen.
Das DBL von Pollin?
Wigbert
@Hans (Gast) hmm, auf den ersten Blick müsste der FH12A-24S-0.5SH(55) von Digikey das sein. Flachband dazu auch bei Digikey. Und wenn du Dich beeilst, könnte ich die Dinger notfalls mitbestellen. Adapter bei LCD-Design, sind aber sauteuer. Ich denke äzen ist kein Problem? Wigbert
Joa...danke... wenn ich das Flachbandkabel und Adaptor mitbestellen würde...mit wie viel Geld müsste ich zirca rechnen (nur grob geschätzt) Danke
Aber nein...ich bin noch minderjährig und kann ohne die erlaubnis meiner Eltern so was noch nich machen...also werde ich einen anderen Weg suchen und finden...Danke abe für das Angebot...(-:
So, ich bin mitlerweile "dank" Kurzarbeit auch mal wieder zum Basteln gekommen. Die PIC Variante des Grafik-fähigen LCD's ist am werden. Hängen tuts zur Zeit z.B. noch an der zweiten Schriftart. Einbauen wollte ich die 12x16 von Benedikts Font-Lib. Ich schreibe die Daten von links nach rechts, also ist LSB die gespiegelte Schrift und ich brauche MSB first. Eine passende LIB ist ja drin nur leider ist die hor. MSB Variante 2 unbrauchbar. Die Buchstaben sind völlig gequetscht. Bei der 10x16 Variante ist eigentlich nicht mehr von Schrift die Rede. Ausserdem ist es etwas hinderlich, daß bei der MSB Variante das Low-Byte zuerst kommt. Ist aber nicht weiter tragisch, bedeutet nur einen Prozessorzyklus mehr. Daher meine Bitte an Benedikt: Kannst du die Font-lib bitte noch mal überprüfen. Wäre echt super nett. Gruß Meik
Teste mal bitte diese Version. Alle Versionen sollten jetzt little Endian sein. Man kann durch einen Cast auf short die Daten also problemlos als 16bit Array verarbeiten (zumindest habe ich die so getestet). Ich hatte bei den _2 Versionen teilweise Variablen vertauscht, so dass ein Byte aus der _1 Version gespeichert wurde, daher fehlte in der Mitte ein Stück. Jetzt sollte aber alles korrigiert sein, zumindest die 3 Schriftarten die ich mir zum Testen rausgepickt hatte, passen. Sowas passiert halt, wenn man nicht alle Versionen testet (was bei 200 Dateien aber auch nur schwer möglich ist)...
Hut ab Benedikt. Schneller wie die Feuerwehr sagt man da glaube ich. Font(12x16) läuft einwandfrei. Vielen Dank dafür. Das du die nicht alle einzeln testen kannst leuchtet ein. Interessant nur, daß das bis jetzt sonst noch keiner gemerkt hat. Gibt es die Schrift auch in noch größer? 24x32 z.B. Mit einem geeigneten Programm(Win) würde ich die auch selbst machen. Gruß, Dank und schönes Wochenende. Meik
Meik Dittmann wrote: > Interessant nur, daß das bis jetzt > sonst noch keiner gemerkt hat. Vermutlich weil der Fehler nur in den eher selten gebrauchten Schriftarten auftrat: Er trat nur in Schriftarten breiter als 8 Pixel auf, und nur in denen mit _2. > Gibt es die Schrift auch in noch größer? 24x32 z.B. 24x32 habe ich leider nicht. Ich habe aber mal ein paar andere große hinzugefügt. Wirklich getestet habe ich aber nur die größte (32x53). Das Problem an denen ist die Größe: Die 32x53 hat 53kByte. Selbst wenn man nur die ersten 128 ASCII Zeichen verwendet, sind es immer noch 26kByte.
Die Schriften dürften wohl meinen PIC sprengen(16K). Ich sehe aber gerade, daß du noch einige "Zwischengrößen" mit eingezaubert hast. Ein dickes LOB dafür erst mal von mir. Werde wahrscheinlich die 16x26 nehmen. Vorher gehts aber erst noch an das letzte verbliebene Problem: Den FiFo. Ohne den gehts leider nur noch sehr schleppend mit der Übertragungsrate von RS232 her. 4-5 Byte am Stück bei 19200 krieg ich mit dem PIC-eigenen 2-Byte FiFo noch hin aber dann kommt nur noch Müll auf dem LCD an. PS: Die Daten sind aber m.E nicht little sonder big Endian angeordnet. Ich muß für den linken Teil des Buchstabens, also High-Byte bei MSB-first, erst das zweite Byte auslesen, dann das erste. Oder habe ich da was falsch verstanden. Sind aber eigentlich nur Haarspaltereien, das Display läuft ja so. Meik
Vielen Dank an Benedikt und all die anderen Spezialisten. Würde gerne den 12x16 Zeichensatz mit Atmega8 im Textmodus einsetzen. Kenne mich aber mit Assembler nicht aus. Auf die letzten 32 Zeichen des Zeichensatzes könnte ich gerne verzichten. Dann müsste der Atmega8 eigentlich reichen. Wer kann mir helfen, das zu realisieren ? Achim
12x16 ist etwas ungünstig, denn eine Anforderung an die Schriftart ist, dass die alle Buchstaben nebeneinander genau 256 Bytes benötigen. Die Breite der Zeichen auf die nächste 8er Grenze aufgerundet mal die Anzahl an Zeichen muss <= 256 sein. Die 12x16 Schriftart müsste man daher als 16x16 speichern und hätte somit Platz für 128 Zeichen.
Hallo! Bauteile sind gestern gekomen, Bluetooth geht schonmal, jetzt warte ich noch auf Pollin -.- Aber eine Frage hätte ich da noch. Ich hab ja den AQV257 weggelassen, wo genau kommt dann VLCD hin? MfG
Maximilian Keller (langerhans) na, an der neg. Kontrastspannung(Drahtbücke anstatt Relais o.ä.) Wird halt beim Pollin-Display nicht abgeschaltet Wigbert
Ja, sorry, das hab ich dann auch gelesen... Jetzt hab ich das mal aufgebaut und genau mit dieser Spannung ein Problem. Ich messe statt etwa -20V -42V! Ist das normal? Kann ich mir nicht vorstellen. Weiterhin habe ich etwa 47V zwischen Pin15 und GND am AVR(Sockel). Worauf kann das hindeuten? Ich hab die Schaltung jetzt schon mehrfach kontrolliert... Immerhin leuchtet meine Hintergrundbeleuchtung schonmal :P MfG
>Ich messe statt etwa -20V -42V! Ist das normal? Kann ich mir nicht >vorstellen. Weiterhin habe ich etwa 47V zwischen Pin15 und GND am >AVR(Sockel). Worauf kann das hindeuten? Ich hab die Schaltung jetzt >schon mehrfach kontrolliert das der AVR kein PWM erzeugt(nicht geproggt)? keine Last dran? Männer: Poti Zwischen 5V und GND und den Schleifer an R1 ran. AVR natürlich raus. Statt Display ein Widerstand 2,5K o.ä. ran. Wenn das läuft dann weiter... Wigbert
Hallo! Danke für den Tipp mit der Last, mit dem Widerstand und dem Poti hatte ich die richtige SPannung! Das LCD funktioniert jetzt genau wie es soll! Was mich nur stört ist dass der Spannungswandler rauscht?! Aber das ist nur sehr leise und ich freu mich viel mehr, dass ich jetzt damit spielen kann! :P MfG
@Maximilian Keller (langerhans) > mit dem Widerstand und dem Poti hatte >ich die richtige SPannung! oder Du überträgst als erstes die PWM-Einstellung >Was mich nur stört ist dass der Spannungswandler rauscht?! meinst Du den Inverter, dann mess mal den Strom und stell die Spannung nach Beitrag "Re: Einfacher Low Cost LCD Controller für 320x240 LCD im Textmodus" ein. Oder meinst Du der MC... rauscht mit seiner Spule Wigbert
Maximilian Keller wrote:
> Was mich nur stört ist dass der Spannungswandler rauscht?!
Das ist mehr oder weniger normal beim 34063.
Nur hörbar sollte es nicht sein. Entweder ein Keramikkondensator oder
die Spule arbeitet als Lautsprecher.
Also der Inverter ist es nicht, es rauscht auch noch hörbar wenn der nicht am Strom hängt. Ich kann leider nicht genau lokalisieren welches bautel genau rauscht, aber es kommt von der Gruppe um den MC34063. Grob geschätzt würde ich auf die Spule tippen. Kann ich was dagegen machen, oder bin ich da machtlos? MfG
>Kann ich was dagegen machen, oder bin ich da >machtlos? gutes Gehör, Spass beiseite, welche Spule ist denn drauf, für das Display reicht doch eine Spule in Widerstandform, SMCC-Spulen von Reichelt. Wigbert
Spule ist die aus der Bauteileliste von hier. Müsste die Reichelt 09P 470µ sein.
@Maximilian Keller (langerhans) OK funktioniert auch damit, kannst Du bei Deiner gelieferten Version die Windungen sehen, also kein Schrümfschlauch drüber?. Ich hatte die damals des Preises und der Funktionssicherheit gewählt. Wobei, ich hab die Spule auch probiert, konnte aber kein Pfeifen wahrnehmen. Der MC... schwingt mit ca.30 Khz? Ich würde mal doch eine SMCC probeweise einbauen. Wigbert
@Wigbert Picht-dl1atw (wigbert) Ich kan die Windungen sehen. Das Gehäuse ist so leicht milchig. Ich hab leider keine andere Spule, aber welche wäre das denn beispielsweise, dann merk ich mir das mal für die nächste bestellung! Die Frequenz von dem MC kann ich nicht messen, dafür bin ich nicht ausgestattet... Das Rauschen klingt etwa wie wenn ich mit dem Radio kein empfang habe. Kann das auch von aussen irgendwas stüren? MfG
@Maximilian Keller (langerhans)
>Ich kan die Windungen sehen.
ich war da auch etwas bei der Lieferung enttäuscht
schalte mal alles ab, und lass nur den Inverter mit Lastwiderstand an.
Erstmal alle anderen Quellen ausschliessen.
Ich hab eine SMCC 470µH am laufen, hat aber nach Benedikts Hinweis:
Ohmscher Widerstand < 5 Ohm , ein zu grossen Gleichstromwiderstand.
Geht aber.
Die Reichelt SMCC 220µH (3,3 Ohm) wäre wohl richtig.
Pollin hat 470µH (eckig)
oder ein Ringkern (T50) aus einen Schaltnetzteil.
Geht alles.
Wigbert
@Wigbert Picht-dl1atw (wigbert) Also ich musste bei dem Test eben feststelle, dass auch der Inverter rauscht, aber nicht so laut wie die Gruppe um den MC... Ich glaub da ist irgendwas, was gewaltig stört... Ich schätze ich muss mir dann wohl ne andere Spule besorgen. Inverter hab ich übrigens von Pollin. Der mit der RGB Röhre. Der läuft wie die gesamte Schaltung mit 4,5V da mein Netzteil leider keine 5V liefern kann. Könnte es evtl. auch daran liegen, ansonsten hätt ich hier nämlich noch ein paar 5V Spannungsregler rumliegen. MfG P.S.: Die Befehle muss ich alle als Hex-Wert senden. Allerdigs geh bei mir nur einstellige Werte. Ich progge mit Delphi und da geht z.b.: $8 für Backspace, aber nicht $12 für "Display löschen". Jemand ein Tipp hier? MfG
Ich dachte der Pollin-Inverter sei für 12V gedacht. Bei 4,5V tut er also auch?
@A. K. (prx) Jap, der Inverter bringt das Display schon mit 4,5V voll zum leuchten.
@Maximilian Keller (langerhans) also, ich übertrage vom Teminalprogramm auch Hex, funktioniert tadellos. Das mit Delphi ist allerdings interessant Empfänger mal abgeschaltet usw. das da nichts rein kommt? wie schon oben erwähnt, mit dem Inverter(wenn es der 5V Typ ist) nicht das GLCD überlasten. Wigbert
Wigbert Picht-dl1atw wrote: > Pollin hat 470µH (eckig) Könntest du von der mal den Widerstand messen? Die Angabe 70mA bei Pollin klingt nach sehr hochohmig. Mit der 47µH Variante von dieser Spule habe ich auch gute Erfahrungen gemacht. Maximilian Keller wrote: > Also ich musste bei dem Test eben feststelle, dass auch der Inverter > rauscht, aber nicht so laut wie die Gruppe um den MC... > Ich glaub da ist irgendwas, was gewaltig stört... Ja, da scheint irgendwas nicht zu passen. Der CCFL Inverter erzeugt normalerweise einen sauberen Sinus. Spendier der Schaltung mal noch ein paar Elkos mit um die 100µF (je einer an den AVR, den CCFL Inverter und an den 34063).
@Wigbert Picht-dl1atw (wigbert)
Naja, es geht auch soweit, ich kann Zeichen senden, nur die
Steuerbefehle wollen nicht sobald sie 2stellig werden. Komischerweise
gehen 2stellige Zahlen. Diese erzeugen dann den entsprechenden
Buchstaben (z.B. $64 für "d").
Zum Inverter, der ist für 12V ausgelegt, der Strom kommt vom gelben
Kabel am Molex Stecker. Pollin Bestellnummer ist: 700 638. Also
überlastet dürfte da nichts sein.
>Empfänger mal abgeschaltet usw. das da nichts rein kommt?
Wie meinst du das? Welchen Empfänger?
@Benedikt K. (benedikt)
Ok, das werd ich mal versuchen, aber nichtmehr heute, das Lötzeug steht
schonwieder unterm Bett ;)
MfG
@Benedikt K. (benedikt)
hab noch mal nachgemessen, 3,6 Ohm. Geht auch anstandslos.
Ich hatte auch Drosselspulen in Stabform mitbestellt,
420µH/0,15A die haben 18 Ohm und gehen nicht.
@Maximilian Keller (langerhans)
>Welchen Empfänger?
empfängst Du nicht Deine Zeichen über eine Funkstrecke?
Wenn der Inverter für 12V ausgelegt ist, fährst Du ihn unterhalb seines
Arbeispunktes, ich glaub mich an eine Einstellung
ca 7,5V zu erinnern, um an die Leistung der Displays ranzukommen.
Noch mal: Strom messen
Wigbert
Wigbert Picht-dl1atw wrote: > hab noch mal nachgemessen, 3,6 Ohm. Geht auch anstandslos. Danke, das ist besser als erwartet (bei der Größe hätten mich auch 10 Ohm nicht gewundert). Die Spule dürfte aus der SD75 Reihe stammen: http://www.neosid.de/DWL/Teil2/Seiten/208-213.pdf > Ich hatte auch Drosselspulen in Stabform mitbestellt, > 420µH/0,15A die haben 18 Ohm und gehen nicht. Ja, die gehen schlecht, da dies Entstörspulen mit hohen Verlusten sind.
@Wigbert Picht-dl1atw (wigbert) Sorry, aber wahrscheinlich häng ich schon zu lang davor, aber ich schaffs nichtmal mit dem Multimeter den Strom zu messen. Ich glaub ich teste das morgen nochmal in Ruhe... Und ja ich empfange über Funk (Bluetooth) aber den Empfänger hatte ich schon ab... MfG
@ Benedikt K. (benedikt) danke fürs DBL, ich hatte einfach mal welche mitbestellt, bei den Preis. Ich hab dann mal probehalber auf ein T50 Ringkern ca 5m 0,3 Cul draufgewickelt(Spule mit Anzapfung) geht auch gut, wobei ich mit den Ringkernrechner die Ind. nicht errechnen konnte. Und zu Fuss war mir das zu aufwendig. Aber auch die Orginalwicklung(ca.0,5 Cul) auf den Ringkern geht, wobei der R da um die 1 Ohm ist. Wigbert
Hallo! @Wigbert Picht-dl1atw (wigbert) Kannst du mir vielleicht eine deiner geeigneten Spulen zukommen lassen? Natürlich gegen Kostenerstattung! @all Hat jemand ein Programm für den PC um das display anzusteuern? LCDSmartie kennt keine 40*20 Displays und LCDHype scheitert schon am öffnen vom COM Port... Ich kann zwar in Delphi auf dem Display rumschreiben, aber die Befhele mit Parameter wollen nicht gehn. @Benedikt K. (benedikt) Wie genau läuft die Auswertung von den Befehlen mit Parametern, was erwartet der AVR auf dem UART bspw. für die grosse Schrift? Mit dem Tool 232Analyzer geht das wenn ich auf Dec umstelle und dann 9,48, sende. Ich weiss nur nicht wie das dann über die snittstelle geht. Befehle ohne Parameter laufen einwandfrei, auch bei mir im Programm. MfG
Maximilian Keller wrote: > LCDSmartie kennt keine 40*20 Displays und LCDHype scheitert schon am > öffnen vom COM Port... LCDHype sollte funktionieren, wenn man "Serial Crystal Fontz Driver" auswählt. Damit habe ich das Bild ganz oben gemacht. > Wie genau läuft die Auswertung von den Befehlen mit Parametern, was > erwartet der AVR auf dem UART bspw. für die grosse Schrift? Wenn ein Zeichen empfangen wird, dann wird geprüft, ob es ein Zeichen (Wert >=32) oder ein Befehl (<32) ist. Daten werden direkt in den Speicher geschrieben, Befehle werden ausgeführt bzw. es werden erstmal die Parameter des Befehls empfangen. > Mit dem Tool > 232Analyzer geht das wenn ich auf Dec umstelle und dann 9,48, sende. Ich > weiss nur nicht wie das dann über die snittstelle geht. Befehle ohne > Parameter laufen einwandfrei, auch bei mir im Programm. Ganz genauso. Es werden einfach die Bytes 9, 48 usw. gesendet.
@Benedikt K. (benedikt) Danke, das war der entscheidende Hinweis, ich kann jetzt ohne Probleme alle Bafehle in meinem Programm verwenden! ich hatte immer gedacht ich muss ein Trennzeichen einfügen, aber jetzt reihe ich den Befehl und die Parameter zu einem String zusammen und es geht! Jetzt muss ich mir nur ein paar sinnvolle Anwendungen einfallen lassen :P Was mir noch zu dem rauschen eingefallen ist: Als ich zum testen den Poti angeschlossen habe wie wieter oben erwähnt, hatte ich das rauschen auch erst, als ich den Poti dann gedreht habe war es am anderen Ende komplett weg! MfG
@Maximilian Keller (langerhans) Schick mir eine E-Mail, das Rauschen muss auch noch weggehen. Wigbert
@Wigbert Picht-dl1atw (wigbert) Immer wenn ich versuche dir ne Nachricht zu schreiben kommt: >An internal Error has occured. If this problem persists, please contact the >administrator of this website (webmaster@embdev.com). >Ein interner Fehler ist aufgetreten. Falls dieses Problem erneut auftritt, wende >dich bitte an den Administrator (webmaster@mikrocontroller.net).
@Maximilian Keller (langerhans) seltsamerweise bekomme ich aber eine Nachricht von dem Thread Elektro-Picht(ät)gmx.de Wigbert
@Wigbert Picht-dl1atw (wigbert) Die Spulen sind heute eingetroffen. Die SMCC hat den Geräuschpegel auf ein Minimum gesenkt, die von Pollin hat nichts verändert. Ich denke jetzt noch ein paar Elkos und das Rauschen sollte ganz weg sein. Vielen Dank nochmal. Dann kann ich mich ja jetzt weiter mit dem Programmieren beschäftigen^^ MfG
Hi, ich bin dabei mich an einem Nachbau zu versuchen. Ich habe mir das Display NAN YA LTBE9S159J1K (normaly white) bei Pollin schicken lassen. Ich habe es gerade ausgepackt und da sind an einer Stelle schon schwarze Punkte zu sehen. Ist das Dispay bistabil? Ich habe die Elektronik noch nicht fertig, also kann ich es leider noch nicht richtig testen. Gibt es eine Möglichkeit zu testen ob die Fehler verschwinden, wenn ich einfach die Versorgungsspannung anlege? Oder ist das eher ein Fall für retour? Gruß
Alkor wrote: > Ich habe es gerade ausgepackt und da sind an einer Stelle schon schwarze > Punkte zu sehen. Klingt nach einem Transportschaden aufgrund mangelnder Verpackung. Mach mal ein Foto, dann kann ich eindeutig sagen ob das wirklich zutrifft. > Ist das Dispay bistabil? Nein. Das einzige was passieren kann ist, dass ein paar Pixel bzw. komplette Zeilen/Spalten beim Abziehend er Schutzfolie aufgrund elektrostatischer Ladungen kurzzeitig angehen. Nach ein paar Sekunden sollten diese aber wieder verschwinden.
Danke für die schnelle Antwort! Ich denke damit ist das ein Fall für eine weiter Retoursendung. Bis dahin hab ich dann hoffentlich auch den Controller fertig. Bild ist im Anhang.(hoffentlich vom Format nicht zu groß) schönes We noch Alkor
Ja, das sind eindeutig die Fehler, die durch Druckstellen entstehen. Ich weiß zwar noch nicht genau wie das ensteht (also was der Druck bewirkt), aber den Fehler hatte ich bei genau diesem Display auch schon -> Umtauschen.
>Ich denke damit ist das ein Fall für eine weiter Retoursendung.
Das könnte das Display sein, welches ich zurückgeschickt hatte.
Hier lag der Stecker der Hintergrundbeleuchtung nicht neben, sondern
unterm Display. Eindeutig Transportschaden.
Man muss übrigens mächtig aufs Display draufhauen, um solche
Druckstellen hinzubekommen ;-)
Gruß
Axelr.
Hallo zusammen, ich habe die Schaltung nach dem 1. Post von Benedikt aufgebaut. Leider seh ich nur breite gelbe und schwarze horizontale Balken auf dem Display :-( Versorgungsspannung +5V und Masse hab ich geprüft. Ist an allen Punkte da. An der 1N4148 Diode kann ich -17,6V messen, welche dann an das Display gehen. Hintergrundbeleuchtung tut auch. Am Pin 15 seh ich einen schönen Rechteck auf dem Oszi. Was mich sehr irritiert, sind die gelben Balken!? Wenn ich hier alles richtig gelesen habe, dann deutet das darauf hin, dass das Disply viel zu viel Kontrast hat? Wenn ja, wie kann ich den Kontrast reduzieren? Hat irgend jemand noch einen Tipp, was ich prüfen könnte? Ich hab bei Pollin 2 Displays bestellt. Habe mit beiden den selben Effekt. Als Spule hab ich die 470uH von Pollin. Sollte lt. obigen kommentaren gehen. Es wäre echt super klasse, wenn jemand noch einen Tipp hätte. Ich such seit 2 Tagen meinen Fehler und finde ihn nicht :-( Weitere Infos über meinen Aufbau kann ich gerne liefern. Kein Problem! Danke und Grüße an alle, Bernd
Prüf mal ob das LP Signal von Pin 16 auch wirklich am Display an dem richtigen Pin ankommt.
Hallo Benedikt, danke für die schnelle Antwort. Ich kann erst heute Abend wieder messen. Bin bei der Arbeit. Nur um sicher zu sein: Ich hab aus deinem 1. Post die HEX Datei genommen und so auf den Atmega8 programiert. Fuses stehen auf external crystal high frequency. CKOPT ist gesetzt. Geproggt mit STK500 und dem Atmel Studio. RS232 ist nicht angeschlossen. Dein Prog. gibt selbstendig Demotext aus? So korrekt verstanden? Danke nochmal fürs schnelle Reagieren und Grüße, Bernd
Ja, dann sollte die Schaltung laufen und einen Text ausgeben.
Hi Benedikt, LP (Load) ist bei mir immer 0V. (LP = Pin 16 am Atmega8) Idee? Grüße, Bernd
Kurzschluss nach GND oder ähnliches ist ausgeschlossen? Direkt an Pin 16 ist auch nichts zu messen? Es müssten Peaks mit mit etwa 10-15kHz und wenigen 100ns Breite sein.
Hi, kein Kurzschluß zu Masse. LOAD ist definitiv 0V. Disp ON/OFF ist permanent +5V Bei FRAME seh ich schön die Peak's. Auch bei M (AC) seh ich einen Rechteck. langsam wirds suspekt. Hab's eben mit einem 2. ATmega8 versucht. Selbiges Verhalten. Kann man einen Atmega so proggen, dass PB5 und PB2 nichtmehr tun? Vielen dank jedenfalls für deine Mühen. Vielleicht fällt dir ja noch was ein? Grüße, Bernd
Es geht ! :-) Hab's nochmal mit einem Atmega168 (andere HEX-Datei!) versucht und mit dem gings dann auf Anhieb. Dann nochmal den 2. Atmega8 reingetan und dann hat der auch funktioniert. War wohl nicht richtig im Sockel drinn :~) Der 1. Atmega8 ist aber definitiv defekt so wie es scheint. Vielen Dank Benedikt für deine Hilfe und dein Super Projekt hier! Grüße an alle, Bernd
Hallo Benedikt, ich hab nun einen Atmega8 in der Schaltung. Leider funktioniert der Befehl für "Gehe zu Zeilen Anfang" nicht. Meinst du es wäre dir möglich, bei Gelegenheit nochmal eine HEX zu machen, bei der "gehe zu Zeilen Anfang" funktioniert? Wäre super klasse! Beste Grüße, Bernd
Stimmt, das hatte ich garnicht gemerkt, dass ich diese Version noch nicht gepostet habe. Hier ist die korrigierte Version.
Mal ne Frage zu dem LTBE9T372G1K das ist ja 5€ günstiger als das NAN YA LTBE9S159J1K... hat das irgeneinen Grund? Oder ist nur die "Farbe" der Unterschied? (Seit ich bei Reichelt festellen mußte das Schwarzes Verlängerungskabel teuerer als weißes ist wunder mich nix mehr). Gibt es eigentlich auch passende Steckverbinder für das Display oder habt ihr alle da Kabel angelötet?
Läubi .. schrieb: > Mal ne Frage zu dem LTBE9T372G1K das ist ja 5€ günstiger als das NAN YA > LTBE9S159J1K... hat das irgeneinen Grund? > Gibt es eigentlich auch passende Steckverbinder für das Display oder > habt ihr alle da Kabel angelötet? Ich habe direkt ein Flachbandkabel angelötet. 120386 von Pollin sollte passen, hat zwar 14 statt 12 Pins, aber egal.
@Läubi .. (laeubi) Na ja, Moderatoren löten( sie haben das auch drauf) ich bin für Stecker. Ich hab in Dip, SMD , liegend u. stehend schon Stecker für die Displays bestellt. Was hättest Du denn gerne, bevor ich Best.Nr. rauskrame. Wigbert
Ist eigentlich egal, ich hab auch nix gegen SMD ;) Nur Flachbandkabel löten ist nicht so mein Spezialgebiet :P Der Preisunterschied begründet sich also nur in der Farbe?
Hallo, wofür ist eigentlich der M (AC-Drive) Pin (PB4)? Ich habe eines der Nan Ya Displays von Pollin und in dem Datenblatt, das hier für die gepostet wurde, taucht unter "8.2 Timing Chart of Input Signals" auch ein M auf, aber es gibt doch gar keinen Anschluss, der so heißt. Gruß erna
LCDs müssen mit einer Wechselspannung angesteuert werden. Dazu wird periodisch (z.B. alle 16 Zeilen, oder auch einmal pro Bild) die Spannung invertiert. Das Umschalten geschieht über Analogschalter auf dem LCD. Das M Signal schaltet also zwischen positiver und negativer Spannung am LCD um. Je nach LCDs kann es günstiger sein nach wenigen oder nach vielen Zeilen umzuschalten. Daher verbauen einige Hersteller einen Zähler auf das LCD und erzeugen das Signal selbst.
@Läubi .. (laeubi) also für mich waren die Stecker von Farnell am einfachsten zu beschaffen http://de.farnell.com/molex/52271-1279/socket-ffc-fpc-smt-1mm-12way/dp/1079952?_requestid=295205 bei Digikey sicher günstiger, wie http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=609-1939-ND o.ä Wigbert
Hat schon jemand angefangen eine Library zu schreiben, die die Befehle einbettet? Text Scrolling mit internem Buffer von 800 Zeichen ist bei mir fertig, ausgegeben über die Uart werden nur die geänderten Zeilen, er dudelt seit gestern Zahlen und deren Wurzeln durch. Aber für eine mixed Mode Darstellung, also Grafik und Textfelder fehlen mir noch die Ideen. Koordinatensysteme sind ganz heftig, vor allem wegen der Skalierung (an Auto-Skalierung darf ich gar nicht erst denken) und dem relativen Bezug zu 0,0.
Hallo, ich bekomme meinen Nachbau einfach nicht ans laufen. Habe schon mehrfach alles kontrolliert und nachgemessen. Auf dem Display läuft entweder ein weißer unregelmäßiger horizontaler Balken rüber oder ca. zwei Zeilen breite unleserliche Textzeile. Sieht nach falscher Synchronisation aus. Wie sollen die Ansteuersignale aussehen? Gruß Gerhard
LP und FLM sollten kurze Impulse mit etwa 17kHz bzw. 70Hz sein. PCLK sollten Blocks von 80 Takten sein, dann eine etwa gleich große Pause, dann wieder die Takte usw.
Hallo Benedikt, vielen Dank für Deine schnelle Antwort. Deine Angaben für LP und FLM stimmen mit meinen Messungen überein. Nur bei PCLK ist das Block Pausen Verhältnis nicht gleich groß (1,2 zu 0,9). Kann es daran liegen? Außerdem habe ich Takt an den PIN's 27 und 28 vom ATMEGA8 (von diesem). Oder hat das nichts zusagen?
Passt alles. Dann tippe ich auf einen Verdrahtungsfehler zum LCD, vor allem LP scheint nicht am LCD an der richtigen Stelle anzukommen.
Schande oh Schande! Hatte vergessen den Blockkondensator vollkommen anzuschließen. Jetzt klappt alles. Er zeigt auf dem Display den kompletten Zeichensatz an. Vielen Dank für die Unterstützung!
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.