LCD Problem mit Arduino

OP #3181654
Lesenswert?

Hi

Ich habe ein Display an meinen Arduino angeschlossen. Leider kann ich 
keinen Text anzeigen. Keine Ahnung wo das Problem lieg. In der ersten 
Zeile werden 16 Rechtecke angezeigt, und in der zweiten Zeile wird 
nichts angezeigt.

Ich habe auch die Verkabelung mehrmals geprüft.
Bei Code habe ich mehrere Anleitungen versucht.
Ich habe 3 Verschiedene Displays probiert - Alle das selbe Ergebniss.

Hat jemand eine Idee wo das Problem liegen könnte?

Aktueller Schaltplan:
http://fritzing.org/projects/how-to-connect-a-qy-1602a-lcd-to-arduino-correctly/

lg
spitzbuamy
Gast #3181699
Lesenswert?

Hi Klaus,

Schau vorsichtshalber mal nochmals die Datenleitungen durch. Nach deiner 
Beschreibung sind hier die einmal komplett vertauscht (1 mit 4 ... beim 
Nibblebit bzw. 1 mit 8 bei voller Belegung).

Ist in der Doku des Arduino etwas schlecht zu erkennen, aber die gelben 
angedeuteten Datenleitungen sind zwischendrin gekreuzt...

MfG
OP #3181734
Lesenswert?

Hi

Der Tipp mit dem Foto hat geholfen. Ich habe alles neu Verkabelt, damit 
die Farben passen und das Foto übersichtlich wird.

Jetzt funktioniert es.

Danke ;-)

Ich habe noch zwei andere Fragen:
1) Mein altes Netzteil(vom Handyladegerät) liefert laut Multimeter 5,7V. 
Kann ich dieses als Stromquelle für 5V benutzen oder ist das schon zu 
Hoch?

2) Im Arduino Buch steht, dass man für die Displaybeleuchtung(LED) einen 
Widerstand verwenden sollt. In den Online-Schaltungen ist aber keiner 
eingebaut. Ist das jetzt Notwendig oder nicht?


lg
spitzbuamy
#3181783
Lesenswert?

Klaus Ammerstorfer schrieb:
> Kann ich dieses als Stromquelle für 5V benutzen oder ist das schon zu
> Hoch?

Das ist eher zu niedrig, denn hinter der 2.1mm Buchse ist ein 
Spannungsregler, der auf 5V runterrugliert. 7.5V, besser 9V solltest du 
schon geben.

Klaus Ammerstorfer schrieb:
> Ist das jetzt Notwendig oder nicht?

Käme jetzt auf das genaue Modell an, hast du das Datenblatt? Die meisten 
(?) scheinen aber einen Widerstand schon verbaut zu haben.

Viele Grüße

Philipp
Gast #3181799
Lesenswert?

Die Hintergrundbeleuchtung ist doch meistens nur die Anode und Kathode 
einer LED, die man geschaltet. Ich hatte hier fast keine in der Hand, 
die den Vorwiderstand schon hatten. Also lieber einen ran, als keinen. 
Wenns Datenblatt sagt es ist einer da dann gehts auch ohne.

Wegen dem Netzteil hat Philipp recht, für den Spannungsregler nach der 
Buchse ist 5,7 V zu wenig, 9 V emfiehlt die Doku des Arduinos. Damit 
verheizt man nicht zuviel. Am Anfang reicht aber auch ein USB Kabel vom 
Rechner, danach lieber nen Netzteil mit 9V.

MfG
Gast #4008620
Lesenswert?

Bei mir trat das heute auch auf.
Nach 5h suchen, Ursache gefunden:

- Mein Display kann das "O" "o" nicht darstellen, sobald der Text ein 
"o" enthält, spinnt die Anzeige. Benutze ich die "Null" = "0" als dieses 
"o", dann geht es.

Wer eine Lösung kennt, bitte posten.

Passiert auch bei beim Wort "Hello World",,,,,"Hell0 W0rld" geht aber.
#4186879
Lesenswert?

Hallo alle zusammen,

ich habe genau das gleiche Problem wie der Thread Ersteller. Bei mir 
leuchtet nur die erste Reihe. Schrift bzw. Text bekomme ich keinen 
angezeigt.

Ich habe nach dieser Belegung alles angeschlossen:

The circuit:
 * LCD RS pin to digital pin 12
 * LCD Enable pin to digital pin 11
 * LCD D4 pin to digital pin 5
 * LCD D5 pin to digital pin 4
 * LCD D6 pin to digital pin 3
 * LCD D7 pin to digital pin 2
 * LCD R/W pin to ground
 * 10K resistor:
 * ends to +5V and ground
 * wiper to LCD VO pin (pin 3)

Mittlerweile habe ich sogar die Datenleitungen getauscht, also zum 
Beispiel D4 auf Pin 2, D5 auf Pin 3 usw. da funktioniert aber auch 
nichts.

RW ist auf Ground geschaltet.
RS ist auf Pin 12
Enable (E) ist auf 11

Ein Bild von meinem Aufbau sowie ein Grafik des Schaltplans liegt auch 
bei.

Ich habe einfach ein fertiges Beispiel Programm (HelloWorld-Programm) 
aus der Beispiel Bibliothek geladen und auf den Mikrocontroller 
übertragen.

Habe sogar schon ein anderes Arduino-Board verwendet. Da ist das gleiche 
Problem gegeben...


NACHTRAG: Die Hintergrundbeleuchtung steuere ich über einen 220 Ohm 
Widerstand an.

Mit freundlichen Grüßen,

Christian
Angehängte Dateien:
Gast #4186916
Lesenswert?

Das Bild von deinem Aufbau entspricht deiner testweise vertauschten 
Reihenfolge. Ich würde den Versuch das zu tauschen nicht unbedingt als 
"schwachsinnig" bezeichnen, aber wenn ich so in den Code vom Beispiel 
gucke (und du dort die Pins nicht geändert hast) ist die Reihenfolge so 
wie sie im Kommentar steht schon richtig. Also: zurücktauschen

Ersetz mal die Jumperwires für DB4-7, RS, RW und E durch neue und steck 
sie eins weiter oben oder unten ins Steckbrett, das riecht nach 
fehlerhafter Verbindung (Kabelbruch/Wackelkontakt) von einem dieser 
Pins.

Strom/Hintergrundbeleuchtung funktionieren ja wohl, so wie du es 
beschreibst. Fehler im Code vermute ich jetzt mal nicht, wenn du den 
unmodifiziert hochgeladen hast (ich habe zwar meine Vorurteile gegenüber 
Arduinobeispielcode, aber funktionieren tut er für gewöhnlich schon)
#4187708
Lesenswert?

foo schrieb:
>
> Ersetz mal die Jumperwires für DB4-7, RS, RW und E durch neue und steck
> sie eins weiter oben oder unten ins Steckbrett, das riecht nach
> fehlerhafter Verbindung (Kabelbruch/Wackelkontakt) von einem dieser
> Pins.
>
> Strom/Hintergrundbeleuchtung funktionieren ja wohl, so wie du es
> beschreibst. Fehler im Code vermute ich jetzt mal nicht, wenn du den
> unmodifiziert hochgeladen hast (ich habe zwar meine Vorurteile gegenüber
> Arduinobeispielcode, aber funktionieren tut er für gewöhnlich schon)

Ich werde mal ein anderes Steckboard verwenden. Mir fällt nämlich gerade 
ein das ich mit diesem Type schon häufiger Probleme hatte. Ich habe noch 
ein anderes welches ich dann verwende.
#4187916
Lesenswert?

Max H. schrieb:
> Das du die Stiftleisten beim LCD nur reingesteckt ohne sie zu löten?
> Sicher, dass alle kontakt habe?
>
> Kontrast richtig eingestellt? Wenn ja sollte vor dem Initialisieren die
> erste Zeile komplett an sein und die zweite aus.

Gelötet habe ich die nicht. Da habe ich die Sorge das ich das nicht 
ordentlich hinbekomme (Löten kann ich zwar) aber bei den schmalen 
Abständen zwischen den Kontakt ist mir das zu riskant. Aber da habe ich 
auch schon dran gedacht.

Könnte es vielleicht auch möglich sein, das das Display über 8-Bit 
angesteuert werden muss?
#4187922
Lesenswert?

Christian B. schrieb:
> Gelötet habe ich die nicht.
Das könnte ein Problem sein. Wenn nur eine Datenleitung einen 
Wackelkontakt hat funktioniert es nicht.

> aber bei den schmalen
> Abständen zwischen den Kontakt ist mir das zu riskant.
Bei einem Pin-Raster von 2.54mm?

> Könnte es vielleicht auch möglich sein, das das Display über 8-Bit
> angesteuert werden muss?
Wenn die Routine für 4-bit Ansteuerung geschrieben ist sollte es bei 
HD44780 kompatiblen LCDs kein Problem geben.


Christian B. schrieb:
> Die erste Zeile ist an und die zweite ist aus! Aber es wird nichts
> ausgegeben.
Der Kontrast sollte also passen.
#4187931
Lesenswert?

Max H. schrieb:
> Christian B. schrieb:
>> Gelötet habe ich die nicht.
> Das könnte ein Problem sein. Wenn nur eine Datenleitung einen
> Wackelkontakt hat funktioniert es nicht.

OK, dann werde ich doch darüber nachdenken.

>> aber bei den schmalen
>> Abständen zwischen den Kontakt ist mir das zu riskant.
> Bei einem Pin-Raster von 2.54mm?
>

Man könnte grad meinen es wären 2,5 m :-)


>
>
> Christian B. schrieb:
>> Die erste Zeile ist an und die zweite ist aus! Aber es wird nichts
>> ausgegeben.
> Der Kontrast sollte also passen.


Mit dem Kontrast ist alles in Ordnung, der lässt sich auch wunderbar 
übers Poti einstellen.
Angehängte Dateien:
Gast #4188684
Lesenswert?

Hi

>Bei einigen LCDs muss man die freien 4 bit gegen Masse legen, ...

Kannst du das belegen? Mir ist noch kein Text-Displaycontroller 
untergekommen, der keine interne Pullup-Widerstände an den 
Datenleitungen besitzt. Da wäre  Masse eher kontraproduktiv.

MfG Spess
#4188699
Lesenswert?

spess53 schrieb:
> Hi
>
>>Bei einigen LCDs muss man die freien 4 bit gegen Masse legen, ...
>
> Kannst du das belegen?
Wieso muss ich das belegen, Du hast Dir die Antwort doch schon selbst 
gegeben..->

>Mir ist noch kein Text-Displaycontroller
>untergekommen, der keine interne Pullup-Widerstände an den
>Datenleitungen besitzt

Naja, aber Floating Pins waren auch noch nie gut, also lieber nachmessen 
;)

Ich kenne nur Grafikcontroller zB...
RA8875 stehts im schematic
ili9325 stehts im sheet

EDIT:
Aber Du hast recht.. der hat dann anscheinend interne Pullups/Down oder 
was auch immer.. aber auch nicht jeder, dafür muss der der das Display 
hat das Datasheet studieren ;)
Gast #4188705
Lesenswert?

Hi

>Naja, aber Floating Pins waren auch noch nie gut, also lieber nachmessen

Seit wann kommen Floating Pins Pins durch Pull-Up-Widerstände? Und wie 
nachmessen?

>Ich kenne nur Grafikcontroller zB...
>RA8875 stehts im schematic
>ili9325 stehts im sheet

Welche davon laufen im 4-Bit-Mode?

MfG Spess
#4188735
Lesenswert?

spess53 schrieb:
> Seit wann kommen Floating Pins Pins durch Pull-Up-Widerstände? Und wie
> nachmessen?
Denk mal drüber nach. kannst Du überhaupt lesen?
Aber nur für Dich nochmal: Wenn ich nicht weiß ob ein Controller 
internen Pullup/Down hat dann kann ich das eventuell nachmessen und dann 
vermuten das die Eingänge schweben. Würde jetzt mal behaupten das das 
geht.

>Welche davon laufen im 4-Bit-Mode?

je nach dem 6bit,8bit, 16bit, 18bit.. wenn ich 8bit am 16bit Port 
benutze muss ich den 8 freien nen widerstand verpassen ;)

Bitte nicht mehr darauf antworten, das ist förderlicher für den Versuch 
ein 1602 Textdisplay in Gang zu bringen..
Gast #4188776
Lesenswert?

Hi

>Denk mal drüber nach.

Wozu?

.. kannst Du überhaupt lesen?

Das lesen kann ich

Ich habe hier Datenblätter von Displays von 27 Herstellern auf meinen 
Rechner. Und für etliche habe ich eigene Librarys geschrieben

>Aber nur für Dich nochmal: Wenn ich nicht weiß ob ein Controller
>internen Pullup/Down hat dann kann ich das eventuell nachmessen und dann
>vermuten das die Eingänge schweben. Würde jetzt mal behaupten das das
>geht.

Wenn du dich mit Displaycontrollern auskennen würdest, dann wüsstest du 
das.

MfG Spess

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren