Hallo Ich habe gestern ein Display welches ich bei Pollin erworben habe in betrieb genommen. Nach einigem hin und her funktioniert das teil nun auch. Leider jedoch nicht ganz perfekt... Beim Display handelt es sich um ein DV-20208 welches 2x20 Zeichen darstellen kann (nicht die Grafikdisplay-Variante davon). Betreibe es im 4 Bit Modus und habe RW auf GND gelegt. Nach dem folgenden kleinen Testprogramm sollte das Display eigentlich die Zahlen und Buchstaben anzeigen: $regfile = "m8def.dat" $crystal = 3686400 $hwstack = 100 $swstack = 100 $framesize = 100 Config Lcdpin = Pin , Db4 = Portb.1 , Db5 = Portb.2 , Db6 = Portb.3 , Db7 = Portb.4 , E = Portb.0 , Rs = Portd.7 Config Lcd = 20 * 2 Cls Cursor Off Locate 1 , 1 Lcd "12345678901234567890" Locate 2 , 1 Lcd "ABCDEFGHIJKLMNOPQRST" Do Loop End Das funktiioniert an sich auch prima, jedoch passiert es immer das die ersten beiden Displaystellen mit anderen zeichen ausgefüllt werden. Ich hab mal zwei Beispielbilder angehängt. Nach einem Reset können sich die beiden Zeichen auch ändern. Manchmal kommt es auch vor das nur die obere oder die untere Zeile nach dem Reset angezeigt wird. Bin jetzt mit meinem Latain am Ende. Habe zuvor ein bissl mit einem 4x20er Display gearbeitet. Das hatte diese Probleme nicht. Die Verkabelung hab ich zumindest schonmal auf durchgang geprüft um solcherlei fehler auszuschließen. Was kann ich tun damit der Text ab dem ersten zeichen beginnt?
Hallo, füge mal einige Pausen (z.b. Waitms(10)) nach den Displaybefehlen wie "CLS" und "locate" ein. Möglicherweise kommt das Display mit der der Datenverarbeitung nich nach. Gruß Jürgen
Hallo Jürgen Danke für deine Antwort. Habe das gleich mal ausprobiert. Leider ohne erfolg :(. Kann mich dunkel erinnern das ich den umgekehrten Effekt mal bei dem 4x20er Display hatte (Also das ein Zeichen weniger angezeigt wurde). Da brachte, wie ich grad in alten Codes gesehen hab, den gewünschten erfolg. Leider aber bei dem 2x20 Display nicht:(. Hab ne Wartezeit von 10 und 100 ms versucht. Sowohl vor, nach und auch zwischen den befehlen. Der Displaytext ist immer noch um zwei zeichen eingerückt wie auf den ersten Bildern. :(
Mach' mal vor das Cls ein LCDInit rein und vorher noch ein Waitms 100.
Hallo MWS Danke für den Tipp, hab ich gleich mal ausprobiert: Waitms 100 Initlcd Cls Cursor Off Locate 1 , 1 Lcd "12345678901234567890" Locate 2 , 1 Lcd "ABCDEFGHIJKLMNOPQRST" Leider brachte auch das keine erfolge. Im Display erscheint nach wie vor schnulli an den ersten beiden stellen :(
Du bist sicher, dass der uC auch mit dem angegebenen Takt läuft ? Wenn Du unter $Crystal einen höheren Wert als den tatsächlichen einträgst, z.B. 10000000, dann verwendet Bascom für die internen Delays längere Zeiten. Damit siehst Du ob's ein Timingproblem ist. Auch würd' ich mal schauen was passiert, wenn Du eine Zeile in der Loop immer wieder neu beschreibst, natürlich mit 'nem kleinen Delay dazwischen.
Das ist ein ganz spezielles Display. Es kann viel mehr, z.B. chinesische Schriftzeichen und macht nur Probleme. Siehe hier: Beitrag "HD44780 (Pollin DV20208) Zeichenbreite stimmt nicht" Ich würde mal probieren, nicht alle Zeichen zu schreiben oder es mal als 16x2 zu konfigurieren.
So ich hab jetzt mal ausprobiert periodisch aufs display zu schreiben: Do Cls Waitms 2 Locate 1 , 1 Lcd "12345678901234567890" Locate 2 , 1 Lcd "ABCDEFGHIJKLMNOPQRST" Loop Leider sehe ich nun nur noch die ersten beiden Zeichen in der oberen Zeile wechseln wechseln. Man sieht die Zahlen dahinter kurz aufblitzen. Keine Ahung was das soll:(. Habe zur sicherheit auch nochmal an der Quarzfrequenz gespielt. Brachte aber auch nix:(. @ Karl Ja, den Beitrag habe ich schon gelesen. Das dort beschriebene Display unterscheidet sich jedoch von meinem. Ich habe ein 2x20er Display. Grafikfähig ist das nicht. Habe aber auch mal ausprobiert es als 2x16er anzusprechen. Brachte das selbe ergebniss. Leider wird das spezielle Verhalten dieses Displays nirgends beschrieben.
Matthias B. schrieb: > Leider sehe ich nun nur noch die ersten beiden Zeichen in der oberen > Zeile wechseln wechseln. Man sieht die Zahlen dahinter kurz aufblitzen. > Keine Ahung was das soll:( Ist ja klar wenn du das Dispay alle 2ms neu beschreibst, so schnell ist das nicht. Mach mal ein waitms 200 draus. Geht vielleicht ein Locate 1,0?
@ Snowfly Ups, da hab ich mich hier verschrieben. Ich hab da ein Wait 2 und nicht ein Waitms 2 stehen gehabt. Also das alle 2 sek. das LCD aktualisiert wird. Aber brachte ja nix. Hab jetzt noch versucht mit Locate 1,0 das ganze hin zu bekommen. Außer Zeichensalat in der ersten Zeile bekomme ich wieder nix angezeigt...:(. Werd jetzt nochmal die Kabel nachmessen. Vielleicht hab ich ja glück... edit: Hab grad nochmal die 6 Datenleitungen vermessen. Durchschnittlich 2,5 Ohm auf einer Datenleitung sollten doch keine Probleme Verursachen oder könnte da der Fehler liegen?
Matthias B. schrieb: > Hab grad nochmal die 6 Datenleitungen vermessen. Durchschnittlich 2,5 > Ohm auf einer Datenleitung sollten doch keine Probleme Verursachen oder > könnte da der Fehler liegen? Wenn die wirklich 2,5 Ohm haben, dann sind die ziemlich lang? Und die Versorgung (GND und Vcc) geht auch darüber? Dann kann das Problem auch daran liegen. Mindestens der GND muss "solide" genug sein, damit die 0V nicht rumzappelt. Vcc kann man am Display mit einem Kondensator abblocken. Bei den Datenleitungen sollte das aber kein Problem sein. Gruß Dietrich
Hallo Sorry das ich jetzt erst wieder schreib. Hab mir das mit den Kabeln nochmal richtig durch den Kopf gehen lassen und mich dazu entschlossen das ganze nochmal neu zu verlöten und nun Klingeldrath anstelle von Jumperkabeln zu verwenden. Und siehe da ES GEHT!!!! Freude:). Allerdings ist es schon bemerkenswert das ein Kabelwiderstand eine derartige Auswirkung haben kann. Nun, jetzt hab ich wieder was gelernt. Ach ja, ich habe übrigends keine langen Kabel verwendet sondern nur rund 5cm lange Jumperkabel (siehe Bild). Scheinbar aber keinerlei qualität da die alle nen Widerstand von knapp über 2 Ohm aufweisen. Werde die jetzt nur noch für unkritische Beschaltungen verwenden. Schade eigentlich, machten ja das arbeiten auf dem Steckbrett sehr einfach. Kennt jemand vielleicht ne alternative/ anbieter wo men solche Kabel in vernünftiger Qualität bekommen kann. Danke nochmal für die Hilfe:)
Matthias B. schrieb: Schön, dass es geht! > Scheinbar aber keinerlei qualität da > die alle nen Widerstand von knapp über 2 Ohm aufweisen. Das ist aber ungewöhnlich! Hast Du richtig gemessen? Bei so kleinen Widerständen zeigen die Multimeter schon mal Mist an (Übergangswiderstände des Messkabels, intern am Umschalter...). Hast Du zum Test die Messspitzen auch mal zusammengehalten und dann ca. 0 Ohm gemessen? Aber wie ich ja schon sagte: Die Datenleitungen sind bei ein paar Ohm eher kein Problem. Das Wichtigste sind solide 0V-Verbindungen und Stützkondensatoren zwischen 0V und Vcc (die üblichen 100nF Kerkos) nahe an den verschiedenen Verbrauchern. Grund: Digitalschaltungen erzeugen beim Schalten unangenehme hochfrequente Stromspikes auf den Versorgungsleitungen. Und da ist die Induktivität von 10cm Leitung schon nicht mehr vernachlässigbar! Und an der Induktivität fällt dann kurzzeitig eine eventuell zu hohe Spannung ab und versaut die Pegel zwischen Datenleitung und 0V, ober das Bauteil spinnt, weil die Versorgungsspannung zu weit zusammenbricht. Gruß Dietrich
Hallo Matthias Woran sieht man, das Dein Display nicht die kombinierte Graphik/Text-Variante ist ? Ich hatte mit meinem auch kuriose Anzeigeregebnisse. Und hab meins dann wieder in die Bastelkiste getan, weil ich es einfach nicht sauber zum laufen bekam. Laeuft bei Dir die Hintergrundbeleuchtung mit 5 Volt oder muss es bei Dir auch mehr sein ? 5,7 Volt ist nen doofer Wert. Ich hatte schon ueberlegt mit zwei Dioden zu hantieren. Eine im Massezweig des LM7805 um die Ausgangsspannung um 0,7V anzuheben, und dann eine am Ausgang um die erhoehte Spannung fuer die andere Elektronik wieder genau um diesen Wert zu senken. Ich hatte mein Display im 4-bit Modus betrieben. Hast Du 8-bit Modus verwendet ? Gruss Asko.
Hallo @Dietrich Hab den Widerstand der Messkabel aml geprüft. Tatsächlich 0,5 Ohm offset. Vermutlich also alles im Rahmen der Messungenauigkeit eines günstigeren Multimeters (MS8229 von Pollin). Trotzdem komisch das das Display jetzt geht. Wird vermutlich doch eines der Kabel einen weg gehabt haben.... Danke für den hinweis. Hab mir darüber noch nicht wirklich viele Gedanken gemacht. Na nun weiß ich ja was allein bei so nem Display passieren kann. @asko Also das es sich bei meinem um ein Textdisplay handelt erkannte ich daran das sich genau 20 Kästchen für Buchstaben u.ä. oben und unten befinden (wie halt bei nem normalen Textdisplay). Wenn du über den Link oben in den anderen Forumsbeitrag schaust solltest du einen unterschied zwischen dem Text auf meinem Display und dem dort erkennen können. Hmmm, ansonsten könnte man es noch erkennen wenn man den Kontrast sehr weit hochschreubt sodass man die einzelnen Pixel erkennt. Bei einem Grafikdisplay müsste dann der gesamte LCD schwarz sein während bei nem nur Test Display 40 Kästchen mit linien dazwischen erkennbar sein müssten. Alsoo bei mir lauft die Hintergrundbeleuchtung mit knapp 6V recht gut. Unter 5,3 sieht man eigentlich nix. Über 6,2V wollte ich nicht gehen, ist auch bei 6V schon sehr hell. Ich nutz aber auch noch mein Netzteil. WIe ich das ganze später löse wenn ich das mal verbaue weiß ich noch nicht. Da muss ich mich erst noch belesen oder hier ein paar schlaue leute belästigen:D. Falls du aber eh ne höhere Ausgangsspannung und noch ein LM317 haben solltest kannst du das sicher auch damit lösen. Ich hab das Display im 4 Bit Modus betrieben (Pin 11-14).
Hallo Matthias Dann hab ich wohl die Graphik-Variante. Bei mir sind jedenfalls keine einzelnen "Kaestchen" zu sehen. Wenn ich den Kontrast veraendere ist ebend alles dunkel. Beim Zeichen zaehlen kam ich auf 18. Denn leider werden nur die ersten 8 richtig angezeigt, der Rest ist ein mischmasch aus den folgenden Zeichen und den Zeichen aus der zweiten Zeile. Ich werd das mal wieder vorkramen und nochmal probieren. Mir gefiel die sichtbare Displayflaeche. Gruss Asko.
Ja, ich hab auch kurz gehofft das ich die Grafikvariante habe als ich über den obigen Forumsbeitrag gestolpert bin. Na hat alles vor und nachteile:P. Wegen dem Zeichensalat könntest du mal in den Beitrag reinschauen. Vielleciht musst du auch nur was am Timing ändern. Oder du hast auch so ein Kabelproblem wie ich;). Na viel erfolg beim testen:)
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.