Bitte helft mir. Ich bin Programmieranfänger und versuche nun schon seit drei Tagen ein externes LCD auf meinem easyavr5 zum laufen zu bringen. Beim LCD-Display handelt es sich um das HMC-16223. Am easyavr5 habe ich den PortD gewählt und es ist ein ATMEGA16 µc drin. Die Beschaltung des LCD an den µc erfolgte gleich wie im AVR-Tutorial. Pin #-LCD Bezeichnung-LCD Pin-μC 1 Vss GND 2 Vcc 5V 3 Vee GND oder Poti (siehe oben) 4 RS PD4 am AVR 5 RW GND 6 E PD5 am AVR 7 DB0 offen 8 DB1 offen 9 DB2 offen 10 DB3 offen 11 DB4 PD0 am AVR 12 DB5 PD1 am AVR 13 DB6 PD2 am AVR 14 DB7 PD3 am AVR Weiß jemand wie die richtige Dip Switch Stellung am easyavr5 für diese Schaltung zu treffen ist? Muss man den Jumper von PortD auf Pull Up oder Pull Down setzen? An den Anschlüssen des PortD sind insgesamt 10 Pins. PD0 - PD7, VCC und GND. Muss VCC an Spannung und GND an Masse gelegt werden? Anbei noch meine verwendeten file`s. Danke schon im Vorhinein für Eure Hilfe. MfG Franz
Hallo Franz! Hab mir deine Files angesehen. Sollte eigentlich funktionieren. Bist du sich alles richtig angeschlossen zu haben?
Hi Michael! Hab ich schon kontrolliert. Die Schaltung ist meiner Meinung nach richtig angeschlossen. MfG
Was ist denn nun an Vee angeschlossen? GND oder Poti? Wenn's GND ist: probier's mal mit einem Poti. Vielleicht stimmt ja wirklich nur der Kontrast nicht. Siehst Du denn die berühmte Zeile mit schwarzen Kästchen, die auf ein eingeschaltetes, aber nicht richtig initialisiertes Display deutet?
Hallo Stefan. An VEE hängt das Poti. Ich seh die berühmten schwarzen Kästchen. Allerdings ist nur die untere Reihe mit diesen Kästchen ausgefüllt. mfg
Im Display sind die schwarzen Kästchen zu sehen welchen ihren Kontrast auch verändern wenn ich am Poti drehe.
Hallo, hast du mit dem initialisierung "timing" probiert?? habe auch ein normales LCD kompatibel zu HDD44780 gekauft und hat leider nicht SOFORT funktioniert, nach paar änderungen in der Initialisierungsdatei hat dann fuktioniert, ich verwende allerdings Notepad (von WinAVR) unter C wenn du interesse hat kann ich dan mein code posten der allerdings nicht anders al von Tutorial ist Gruß Martin
scheinst das ja im 4-bit modus betreiben zu wollen. schwarze kästchen = nicht oder falsch initialisiertes display, wie schon jemand bemerkt hat. wenn alles andere richtig verkabelt ist, brücke die offenen pins und lege sie hart oder per pull-up auf Vcc. Ist sicherer... Falls nicht funzt, kannst du im source-level debugger mal die initialisierung im single step durchführen und mit multimeter die einzelnen pins (steuerleitungen UND Datenleitungen zu LCD) mit den soll-pegeln und deinem benutzten I/O port vergleichen. Der rest sollte dann SW sein (Timing..., Portzuordnung). falls du ein scope oder logicanalyser hast - nun benutzen und schauen wenn immer noch nicht geht ;-). gruss, tom.
Hallo zusammen, ich sitze ebenfalls seit geraumer Zeit an diesem Display (HMC16223 SG von Pollin). Gibt es hier jemanden, der einmal einen funktionierenden Beispielcode hochladen könnte? Mein Problem ist folgendes: Das Display lässt sich nicht initialisieren. Vor und nach der Initialisierung zeigt die erste Zeile einen schwarzen Balken. Ich habe verschiedene Init-verfahren ausprobiert - zuletzt das aus dem Datenblatt des KS0070B. Ohne Erfolg. Die Init-methode wäre schon vollkommen ausreichend. Ich betreibe das Display im 4-Bit-Modus und programmiere einen ATMega16 mit C über PonyProg. Das Programm wird korrekt übertragen. Die Anschlussbelegung habe ich mehrfach geprüft, sie kann also nicht falsch sein: Vss -> GND Vdd -> 5V V0 -> GND RS -> PD7 RW -> PC5 E -> PC4 DB4 -> PC0 DB5 -> PC1 DB6 -> PC2 DB7 -> PC3 Ich habe ebenfalls die Timings in astronomische Größen erhöht und auch dadurch keine Besserung erreicht. Der Quelltext befindet sich leider auf einem anderen Rechner, weshalb ich den erst später mal posten kann. Vielen Dank schonmal im Voraus! Gruß alibaba
Hei, juhuuu! Es funktioniert! :D Dankeschön für den Tipp! Hatte den selben Fehler vor zwei Jahren glaube schonmal gemacht, aber erfolgreich wieder verdrängt. :) Gruß alibaba
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.