mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik LCD-Anzeige-Problem


Autor: logic88 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo liebe Leute!

Beschäftige mich seit ca. 2 Wochen mit Atmel-Controllern. Eine
hochinteressante Sache!

Habe bereits ein Board mit einem ATmega16 selbständig aufgebaut und
diverse "EIn-und Ausgabe-Peripherie" außerdem in meine
funktionierende Schaltung gelötet. Eingabe: "Dip-Schalter (8 stück)"
und "kleine Taster (8 stück)". Als ausgabe habe ich 8 Leuchtdioden
genommen.

funktioniert alles prächtig. Ich programmiere in BASCOM und habe jetzt
alles programmiert, was man mit 8 Leuchtdioden und 8 Tastern
realisieren kann ;) und alles hat auch - wenn manchmal auch über einen
steinigen lerneffizienten Weg - am Ende immer geklappt.

Nun möchte ich die nächste Hirte ausprobieren, und zwar ein Display
ansteuern. Dazu habe ich mir ein 40 x 2 Display besorgt. Habe es auch
richtig angeschlossen. JEDOCH: Datenleitung DB4-DB7 wird von mir
verwendet (4Bit), die restlichen Datenleitungen (DB0-DB3) sind bei mir
jedoch nichtverwendet und OFFEN!.

1. Frage: Ist dies vielleicht der Fehler - dass die nicht verwendeten
Pins des Displays nicht auf Masse liegen - für nachfolgendes Problem?

Ich habe in BASCOM soweit alles richtig programmiert.
"Hello World" wird auch richtig auf dem Display ausgegeben JEDOCH
flackert es und hat einen üblen Kontrast! Das heißt, die Schrift ist
viel zu hell (bis auf einige "Ausnahme-Segmente").
Durch Drehen an dem Kontrast-Potentiometer kann ich fast garnicht auf
die Helligkeit der Schrift eingreifen. Das Poti ist bereits am Anschlag
(in der richtigen Richtung ;) ).
Das Display  hat einen HC 44780-LCD-Controller.

2. Frage: Liegt es vielleicht an der Größe des Displays, da in der
Hilfe mein Displayformat nirgends aufgeführt ist.


Hat jemand noch andere Gründe für mein Problem??

danke!

Autor: ruepel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
DB0 - DB3 habe ich auch meist offen und es geht. Auf Masse legen wäre
aber auch nicht falsch.

Das Flackern incl. schlechtem Kontrast mit einigen Ausnahme-Segmenten
könnte daher kommen, daß Du das Display zu schnell refresht.

Also z.B. wenn Du das "Hello World" in einer Schleife ständig neu
schreibst und das zu schnell geht ... dann kommen sich die interne
Oszillatorfrequenz des Displays und die Refreshfrequenz ins Gehege.

Evtl. stürzt der AVR mit Deinem Programm auch ab, resettet und refresht
dadurch.

An der Größe des Displays liegt es nicht.

Eine andere Möglichkeit: Falsche oder unsaubere Kontrastspannung.
Manche Displays brauchen negative Kontrastspannung. Da Du allerdings
die Schrift bereits lesen kannst, ist das eher unwahrscheinlich.

Autor: logic88 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke erstmal für deinen Beitrag!

Das Hello-World befindet sich in keiner Schleife. Es müsste statisch
auf dem Display angezeigt werden.

Die Kontrastspannung schließe ich auch aus- aus deinem genannten Grund.
Wäre sie unsauber bzw. falsch so könnte ich garnichts erkennen ;)


PS: das display funktioniert jedenfalls 100% mit dem richtigen kontrast
an anderen Geräten.

Autor: Andreas Häusler (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Die Kontrastspannung könnte doch ein Teil des Problems sein.
Hab da schon die tollsten Erfahrungen gemacht. Ist zum Teil stark
Temperaturabhängig. Vergleiche die Kontrastspannung mit dem Gerät, auf
welchem sie laufen.

Die Initialliserung ist zum Teil sehr heikel (kritische Timings) und
man muss sich ganau an das Datenblatt halten.

http://www.myke.com/lcd.htm
http://homepage.hispeed.ch/peterfleury/avr-lcd4478...

Display vorerst nur per SW initiallisieren und noch keinen Textdaten
senden. Ist der Kontrast korrekt eingestellt müsstest jeder Pixel der
5x7 Matrix dunkeler erscheinen.

Da erkennst Du auch, ob beide Zeilen, oder evt. nur eine Zeile
initiallisiert werden.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.