AUT
Offline
Newbie
Karma: 0
Posts: 14
Arduino really rocks!
|
 |
« on: November 01, 2010, 03:48:40 pm » |
Hallo Leute!
Ich besitze das DV-20208 Lcd von Pollin mit 20 Zeichen und 2 Zeilen. ...Und bekomme es trotz "HD44780-kompatiblität" nicht zum laufen.
Habe zuvor erfolgreich HD44780er und ein KS* Conrad-displays eingesetzt und wollte nun das Display gegen ds Datavision LCD austauschen. Natürlich habe ich die Pinbelegung geändert und zig-mal überprüft.
Ich habe im 4Bit Modus gearbeitet... (Wollte ich den 8 Bit Modus verwenden, gibt mir die IDE einen Fehler aus.)
Ich bin mir so sicher nichts falsch gemacht zu haben, das ich jetzt anstehe und Hilfe brauche...
Wer hat mit dem DV-20208 Erfahrung? Wie sollte meine weitere Fehlersuche aussehen?
Vielen Danke im Vorraus!
Gruß aus Österreich
Dex'
|
|
|
|
|
Logged
|
- Wo gelacht wird, lass dich nieder; - Böse Menschen lachen immer wieder!
|
|
|
|
|
|
AUT
Offline
Newbie
Karma: 0
Posts: 14
Arduino really rocks!
|
 |
« Reply #2 on: November 01, 2010, 04:23:08 pm » |
/* The circuit: * LCD RS pin to digital pin 9 * LCD Enable pin to digital pin 10 * LCD D4 pin to digital pin 8 * LCD D5 pin to digital pin 11 * LCD D6 pin to digital pin 7 * LCD D7 pin to digital pin 12 * Kontrastpoti 10kOhm (ev. 5kOhm möglich) to LCD VO pin (pin 3) */
// include the library code: #include <LiquidCrystal.h>
// initialize the library with the numbers of the interface pins LiquidCrystal lcd(9, 10, 8, 11, 7, 12);
Und R/W auf Gnd oder im Schwebezustand ändert nichts.
|
|
|
|
|
Logged
|
- Wo gelacht wird, lass dich nieder; - Böse Menschen lachen immer wieder!
|
|
|
|
0
Offline
God Member
Karma: 1
Posts: 659
Arduino sucks
|
 |
« Reply #3 on: November 01, 2010, 08:45:53 pm » |
|
|
|
|
|
Logged
|
|
|
|
|
Sankt Augustin
Offline
Jr. Member
Karma: 0
Posts: 64
Arduino rocks
|
 |
« Reply #4 on: November 02, 2010, 03:08:49 am » |
Ich schreibe es nur mal vorsichtshalber:
Hast Du mal den Kontrastregler verstellt???
|
|
|
|
|
Logged
|
|
|
|
|
AUT
Offline
Newbie
Karma: 0
Posts: 14
Arduino really rocks!
|
 |
« Reply #5 on: November 02, 2010, 07:02:11 am » |
Danke für's Posten des Link zum Datenblatt. Das Kontrastpoti funktioniert wie es soll. Dennoch wird nichts angezeigt.
Ich verwende den Duemilanove und Pro Mini (5V) und mehrere gleiche Displays - denke einen Komponentendefekt kann ich ausschliessen.
Gruß Dex'
|
|
|
|
« Last Edit: November 02, 2010, 08:33:11 am by dexxter »
|
Logged
|
- Wo gelacht wird, lass dich nieder; - Böse Menschen lachen immer wieder!
|
|
|
|
Sankt Augustin
Offline
Jr. Member
Karma: 0
Posts: 64
Arduino rocks
|
 |
« Reply #6 on: November 02, 2010, 09:08:39 am » |
Siehst Du denn Beim Verstellen des Kontrastes irgendwelche Umrisse oder Schatten der Pixel?
|
|
|
|
|
Logged
|
|
|
|
|
AUT
Offline
Newbie
Karma: 0
Posts: 14
Arduino really rocks!
|
 |
« Reply #7 on: November 02, 2010, 09:09:59 am » |
Ja.
|
|
|
|
|
Logged
|
- Wo gelacht wird, lass dich nieder; - Böse Menschen lachen immer wieder!
|
|
|
|
|
|
AUT
Offline
Newbie
Karma: 0
Posts: 14
Arduino really rocks!
|
 |
« Reply #9 on: November 03, 2010, 03:19:36 pm » |
So - jetzt läuft's - ich hab R/W in undefiniertem Zustand belassen - deshalb hat es einmal Nichts, das andere Mal nur Müll angezeigt.
Memo an mich: R/W IMMER auf Ground solange ich nichts auslesen will.
(ich verwende die Liquid Crystal lib.)
Aber eines ist noch unbrauchbar: Ich sehe im Standard "Hello World" nur Asiatische Zeichen...
|
|
|
|
« Last Edit: November 03, 2010, 03:20:08 pm by dexxter »
|
Logged
|
- Wo gelacht wird, lass dich nieder; - Böse Menschen lachen immer wieder!
|
|
|
|
AUT
Offline
Newbie
Karma: 0
Posts: 14
Arduino really rocks!
|
 |
« Reply #10 on: November 03, 2010, 03:27:21 pm » |
RS und EnablePin waren vertauscht!
Richtig verkabelt lt. Datenblatt, aber die Pins mussten im Sketch vertauscht angesprochen werden.
LiquidCrystal lcd(11, 12, 5, 4, 3, 2); anstelle LiquidCrystal lcd(12, 11, 5, 4, 3, 2); (Keine Ahnung wieso)
Jetzt sind die Asiatischen Zeichen weg - "Hello Word" steht da. Nur mit: lcd.setCursor(0, 2); lcd.print(millis()/1000); Zeile 2 beginnt in der Mitte!
Also:
|-----------------------| |Hello World | | 42 | |-----------------------|
Kennst das jemand?
Werde mir morgen die libraryprogrammierung mal zu Gemüte führen... (*Hüstel*)
Wenn ich die lcd4bit oder die lcd4bitmod lib. verwende, zieht's dem Display einen Fetzen ein und es lässt nach jedem 2ten Zeichen eines frei, bevor es mit dem Nächsten weitermacht. Und das mit Zeile 2 funktioniert auch nicht so wie es sollte. :-?
|
|
|
|
« Last Edit: November 03, 2010, 04:23:24 pm by dexxter »
|
Logged
|
- Wo gelacht wird, lass dich nieder; - Böse Menschen lachen immer wieder!
|
|
|
|
Sankt Augustin
Offline
Jr. Member
Karma: 0
Posts: 64
Arduino rocks
|
 |
« Reply #11 on: November 04, 2010, 02:45:27 am » |
Schreib doch mal den gesamten Probesketch hier rein; und versuch mal statt der millis auch mal Hello World in die zweite Zeile zu schreiben.
|
|
|
|
|
Logged
|
|
|
|
|
BZ (I)
Online
Brattain Member
Karma: 160
Posts: 15593
+39 349 2158303
|
 |
« Reply #12 on: November 04, 2010, 03:27:49 am » |
Einige Displays, obwohl sie physich 2 Zeilen haben, haben programtechnisch 4 Zeilen. 2 fangen links an und 2 in der mitte. Grüße Uwe
|
|
|
|
|
Logged
|
|
|
|
|
AUT
Offline
Newbie
Karma: 0
Posts: 14
Arduino really rocks!
|
 |
« Reply #13 on: November 10, 2010, 04:31:17 pm » |
Mein Code /* LiquidCrystal Library - Hello World http://www.arduino.cc/en/Tutorial/LiquidCrystal */ // include the library code: #include <LiquidCrystal.h> // initialize the library with the numbers of the interface pins LiquidCrystal lcd(12, 11, 5, 4, 3, 2); void setup() { // set up the LCD's number of columns and rows: lcd.begin(20, 2); //<------------ Ändert nix wenn ich's auf 16/2 stelle // Print a message to the LCD. lcd.print("hello, world!"); } void loop() { // set the cursor to column 0, line 1 // (note: line 1 is the second row, since counting begins with 0): lcd.setCursor(0, 2); // print the number of seconds since reset: lcd.print(millis()/1000); } Erstes Zeichen "h" steht ganz links in der ersten Zeile. Aber die Millis beginnen in der Mitte der zweiten Zeile. Hab schon die liquidcrystal.h, die lcd4bit.h und die lcd4mit_mod.h versucht. (Hab NUR die Pinbelegung in den Libs angepasst - mit Rücksichtnahme auf die Nibbles) Wenn ich Zeile 3,4,5 etc. anspreche, beginnen die Zeichen entweder in Zeile 1 links, oder in Zeile 2 in der Mitte... Hatte jemand schon einmal das Problem? Danke, Gruß Dex'
|
|
|
|
|
Logged
|
- Wo gelacht wird, lass dich nieder; - Böse Menschen lachen immer wieder!
|
|
|
|
Sankt Augustin
Offline
Jr. Member
Karma: 0
Posts: 64
Arduino rocks
|
 |
« Reply #14 on: November 11, 2010, 02:30:13 am » |
Wenn Du ein 2-Zeilen-Display hast, sprichst Du mit lcd.setCursor(0, 2); die nicht vorhandene Zeile 3 an, änder das mal auf lcd.setCursor(0, 1);
|
|
|
|
|
Logged
|
|
|
|
|
|