mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik ATMEGA16 LCD2x16


Autor: Franz (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Franz!

Hab mir deine Files angesehen.
Sollte eigentlich funktionieren. Bist du sich alles richtig 
angeschlossen zu haben?

Autor: Franz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Michael!

Hab ich schon kontrolliert.
Die Schaltung ist meiner Meinung nach richtig angeschlossen.

MfG

Autor: Stefan Wimmer (wswbln)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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?

Autor: Franz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Franz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hat denn keiner mehr einen Tipp was ich noch machen könnte?

Autor: L. B. (power_uiser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
zeigt das display gar nichts an??
wenn jo kontrast verändern?!

Autor: Franz (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Im Display sind die schwarzen Kästchen zu sehen welchen ihren Kontrast 
auch verändern wenn ich am Poti drehe.

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Martin (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ist der Pin 5 von LCD auf Mase??

Autor: tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: alibaba (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
JTAG Fuse abschalten.

Autor: alibaba (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

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.