Archiv verlassen und diese Seite im Standarddesign anzeigen : LCD Display 4x20 an RN-Control
dwiedenmann
25.07.2009, 12:26
Liebe Robotikfreunde,
um das Programmieren mit Mikrocontrollern zu erlernen habe ich mir die RN-Control, den Std. LCD Adapter und das LCD mit 4x20 Zeichen und Hintergrundbeleuchtung gekauft. Leider funktioniert noch nichts bei mir.
Habe die LCD Library von Peter Fleury verwendet und die lcd.c über ein Makefile eingebunden. Die lcd.h habe ich wie im Tutorial beschrieben angepasst und zusammen mit der lcd.c in den Ordner des Projekts kopiert. "make all" und "make program" konnte ich ohne Fehlermeldung ausführen. Am LCD Adapter habe ich Jumper 2 für die Beluchtung gesetzt sowie die Jumper um DB0 bis DB3 auf ground zu ziehen. Aber egal wie ich am Poti drehe, es ändert sich nichts. Ich sehe nur ein leeres Display. Da ich nun keine Ahnung habe was ich noch machen soll hoffe ich, dass ihr mir helfen könnt.
MfG Daniel
Hubert.G
25.07.2009, 13:29
Wenn du am Kontrast drehst, solltest du zumindest einen schwarzen Balken bekommen.
Ist die Spannung am Adapter vorhanden, ändert sich die Kontrastspannung wenn du am Poti drehst. Das kannst du bei abgezogenen Display messen.
Die Leds an PortC sind abgeschalten.
dwiedenmann
25.07.2009, 14:59
Hallo Hubert,
ich habe jetzt mal die LEDs auf dem Board über den DIP Schalter deaktiviert. Habe das Lcd eingesteckt gelassen. Wenn ich das Poti drehe verändert sich die Spannung am LCD zwischen PIN1 und 3 von 0,3 auf 4,97 V. Aber trotzdem sehe ich keine schwarzen Balken auf dem LCD.
Wenn du den Adapter und das LCD auch hast könnte ich dir mal alles inkl. lcd.h lcd.c makefile und lcdtest.c schicken, dann sehe ich wenigstens obs an der Hardware liegt oder nur an mir O:)
MfG Daniel
dwiedenmann
25.07.2009, 15:20
PS: wenn ich die LEDs aktiviere leuchten LED2, 4, 5 und 6.
Also die LEDs an PC.1, 3, 4 und 5
Hubert.G
25.07.2009, 16:48
Solange du keine Balken siehst, wirst du auch sonst nichts sehen.
Du könntest es nur verkehrt herum aufgesteckt haben.
dwiedenmann
25.07.2009, 17:41
Ich hab gerade nochmal nachgeschaut, aber PIN1 vom LCD ist an PIN1 vom Adapter. Hab ich das gerade richtig verstanden, dass auch wenn nix Angeschlossen wäre ausser PIN1 und 3, ich die Balken sehen müsste?
Dann scheint ohl mein LCD kaputt zu sein....
Ich hab aber auch ein Glück :(
Ich dachte, dass man nur was sieht, wenn auch tatsächlich Daten übertragen wurden.
Dann werde ich mir wohl oder übel am Montag ein neues bestellen müssen :(
Gruß Daniel
dwiedenmann
25.07.2009, 18:20
Die Beleuchtung jedenfalls lässt sich ein- und ausschalten.
Gruß Daniel
dwiedenmann
25.07.2009, 18:33
Dann kann ich das Ding wenigstens als Nachtlicht verwenden :)
Hubert.G
25.07.2009, 19:37
Du brauchst nur GND, 5V und den Kontrast, wenn du dann den Regler verstellst sollte ein Balken sichtbar sein. Es gibt jedoch auch Display die eine negative Kontrastspannung benötigen. Vielleicht mal testen.
dwiedenmann
25.07.2009, 20:14
Also ich habe 5V am Kontrast und auch bei der Versorgungsspannung. Beide Spannungen habe ich direkt am LCD gemessen. Das ich eine negative Kontrastspannung benötige, glaube ich zwar nicht, weil das Display zusammen mit dem Adapter auf robotikhardware.de so vorgestellt wird, aber wenn du meinst, dass ich nix kaputt machen kann, dann probiere ich das gerne aus. Andererseits sieht das im Datenblatt wieder ganz anders aus. Wenn du da mal kurz schaust:
http://www.robotikhardware.de/download/PC2004%20bei%20robotikhardware.de.pdf
da ist direkt unter "2.1 Interface Pin Description" ein Schaltbild in dem es schon so aussieht als ob ich eine negative Spannung benötige. Aber warum wird dann das LCD auf dem Foto mit dem Adapter zusammen aufgebaut?
Aber bevor ich da jetzt was ändere, gib mir bitte noch kurz bescheid, ob da auch wirklich nix kaputt geht.
Vorab schon mal vielen Dank für deine großartige Unterstützung und Geduld. Ich will dich ja auch nicht unnötig mit meinen "Anfängerproblemen" nerven, aber anders bekomme ich das nicht hin. O:)
LG Daniel
Hubert.G
25.07.2009, 21:02
Wenn du nicht mehr als -5V anlegst und das über einen Widerstand oder besser ein Poti wie im Schaltbild, dann darf da nichts passieren.
dwiedenmann
25.07.2009, 21:38
Alles klar, ich mach mich gleich mal dran, muss nur noch gucken wo ich meine -5V herbekomme. O:)
Alles klar, ich mach mich gleich mal dran, muss nur noch gucken wo ich meine -5V herbekomme. O:)
Zum Beispiel von nem PC-Netzteil
dwiedenmann
25.07.2009, 22:59
Dann schlachte ich gleich ma meinen alten rechner :)
Must aber gucken, ob das tatsächlich welche liefert. Ich hatte auch schon welche, die keine -5V hatten.
dwiedenmann
25.07.2009, 23:26
Also bei meinem Netzteil hab ich durchgemessen und das hat keine -5V. Dann muss ich mir wohl morgen mal ein Netzteil borgen. Ich melde mich dann wieder wie es gelaufen ist....
lg Daniel
Hubert.G
26.07.2009, 09:34
Wenn du ein eigenes Netzteil verwendest, dann brauchst du keine -5V, du musst nur die +5V an GND legen und schon hast du -5V.
dwiedenmann
27.07.2009, 10:28
Ja, das habe ich jetzt auch gemacht. Nur leider ohne Erfolg :( Dann muss ich mir wohl oder übel ein neues LCD kaufen. Aber diesmal nicht bei robotikhardware. Die wollen 6,50 euro für Versand und man stelle sich vor: 5 Euro Mindermengen Zuschlag! Und Mehrwertsteuer is natürlich auch noch nicht dabei. Ich werde mal bei Conrad und co schauen :)
Da_Vinci13
27.07.2009, 17:52
Hi,
Beim www.csd-electronics.de sind sie billig! Vielleicht könntest du auch mal dort vorbei schauen... Ausser du wohnst (wie ich) nicht in Deutschland, denn da bekommst du noch Zoll zuschlag, bei meiner letzten Bestellung hab ich neben mwst., Gewichtszuschlag und Versandkostenrechnungen 15 Euro Zoll bezahlt! Voll die abzockerei. Über wo sie können machen sie es teuer... naja, dafür ist die Ware billig!
Liebe Grüsse!
Hubert.G
27.07.2009, 18:47
Du wirst dir wieder so eines suchen müssen wie dieses EADIP mit den Steckleisten an der Seite, sonst passt es nicht in den Adapter.
Obwohl ich es nicht ganz glauben kann, ich habe schon eine Menge Display verbaut, aber erst eines kaputt gemacht und das war nachvollziehbar warum.
dwiedenmann
28.07.2009, 20:56
So, jetzt habe ich mir eines bestellt. Danke für den Link. Aber warum das Display ned läuft kann ich mir auch nicht erklären. Aber hauptsache es klappt dann mit dem neuen. Sobald es da ist melde ich mich wieder ob alles funktioniert.
lg Daniel
dwiedenmann
28.07.2009, 21:07
Ach ja: das Display selber ist zwar 3 Euro teurer, aber insgesamt spare ich mir fast 15 Euro. Schade, dass die bei Robotikhardware einen so abzocken :(
lg Daniel
dwiedenmann
15.08.2009, 10:17
Hallo Leute,
endlich ist mein neues LCD angekommen (Hurra!!!). Es handelt sich um das DEM20486 von CSD electronics (danke für den Link Da Vinci13). Ich habe da jetzt mal am Poti rumgeschraubt und sehe nun auch schwarze Balken. Nur Text sehe ich noch keinen. Jetzt stellt sich mir die Frage ob´s am Program oder am Adapter liegt. Kann mir einer von euch vielleicht nen Tipp geben wie ich jetzt am besten vorgehe?
lg Daniel
dwiedenmann
15.08.2009, 10:19
Ich habe auch versuchsweise den LCD Contoller Typen Von HS in KS geändert hat aber auch nichts gebracht..
Hubert.G
15.08.2009, 10:41
Hast du den Original Mega16 drinnen oder einen neuen, wenn neu, dann könnte der JTAG nicht abgeschalten sein.
Du bist dir sonst sicher das das Display richtig angeschlossen ist, da du mit DB3 auf PC0 beginnst, PC4 ist frei, dann kommt E, RW, RS. Wenn da was verdreht ist funktioniert es natürlich auch nicht.
dwiedenmann
15.08.2009, 10:48
Ich habe den Mega32 drinnen der schon verbaut war. Das Board habe ich vor ca. 1 Jahr gekauft und bin dann wg Arbeit und Familie nicht zum basteln gekommen. Ich werde gleich mal die Ports mit dem Datenblatt vergleichen. Ich habe die Ports einfach so übernommen, wie sie im Beispielprogramm für das LCD Display angegeben waren (das 1. von Robotikhardware). Dachte die Belegung wäre genormt und deshalb immer gleich.
lg Daniel
Hubert.G
15.08.2009, 10:56
Wie programmierst du, schau vorsichtshalber in den Fuses nach ob JTAG sicher aus ist.
Ich habe den Adapter und Board verglichen, das sollte passen.
dwiedenmann
15.08.2009, 11:03
Also die Anschlussbelegung der beiden Displays ist identisch. Die Anschlüsse am LCD-Adapter sind folgendermaßen:
Belegung sieht wie folgt aus:
Pin 1 LCD DB7
Pin 2 LCD DB6
Pin 3 LCD DB5
Pin 4 LCD DB4
Pin 5 Licht ein/aus per Port (da EN2 hier nicht benötigt wird)
Pin 6 LCD EN
Pin 7 LCD R/W
Pin 8 LCD RS
Pin 9 GND LCD GND und Licht Kathode
Pin 10 +5V LCD VCC und Licht Anode
Das ist ein Auszug aus meiner lcd.h (die von Peter Fleury)
#define LCD_PORT PORTC /**< port for the LCD lines */
#define LCD_DATA0_PORT LCD_PORT /**< port for 4bit data bit 0 */
#define LCD_DATA1_PORT LCD_PORT /**< port for 4bit data bit 1 */
#define LCD_DATA2_PORT LCD_PORT /**< port for 4bit data bit 2 */
#define LCD_DATA3_PORT LCD_PORT /**< port for 4bit data bit 3 */
#define LCD_DATA0_PIN 3 /**< pin for 4bit data bit 0 */
#define LCD_DATA1_PIN 2 /**< pin for 4bit data bit 1 */
#define LCD_DATA2_PIN 1 /**< pin for 4bit data bit 2 */
#define LCD_DATA3_PIN 0 /**< pin for 4bit data bit 3 */
#define LCD_RS_PORT LCD_PORT /**< port for RS line */
#define LCD_RS_PIN 7 /**< pin for RS line */
#define LCD_RW_PORT LCD_PORT /**< port for RW line */
#define LCD_RW_PIN 6 /**< pin for RW line */
#define LCD_E_PORT LCD_PORT /**< port for Enable line */
#define LCD_E_PIN 5 /**< pin for Enable line */
Das müsste doch eigentlich so passen oder?
dwiedenmann
15.08.2009, 11:16
Ich habe die Fuse Einstellung bisher nicht geändert. Programmiert habe ich immer in der Eingabeaufforderung mit make all und make program.
Muss jetzt erst mal kurz schauen wie ich die Fusebits auslesen kann...
lg Daniel
dwiedenmann
15.08.2009, 12:23
Jetzt habe ich mir die avrdude gui runtergeladen. Wenn ich da bei den Fuses auf read gehe wird mir angezeigt, dass die Fuses gelesen werden und ein outputfile "con" erzeugt wird. Wo finde ich denn dieses File um die Werte auslesen zu können?
lg Daniel
Hubert.G
15.08.2009, 12:28
Mit avrdude kenne ich mich nicht aus, ich verwende nur AVR-Studio und ab und zu mal PonyProg.
Was hast du für einen Programmer?
dwiedenmann
15.08.2009, 12:44
Den ISP-Programmer von Robotikhardware.de.
Ich versuch mal derweil noch mehr Infos über den Dude zu sammeln.
lg Daniel
Hubert.G
15.08.2009, 12:54
Wenn es der ist den du am Parallelport ansteckst, dann versuche mal PonyProg, gibt es auf www.lancos.com
dwiedenmann
16.08.2009, 19:18
Ich habe jetzt mal PonyProg von der Robotikhardware CD probiert, komme damit aber nicht so gut zurecht. Aber dafür konnte ich jetzt mit avrdude meine Fuses auslesen. lFuse war FF und hFuse war DA. Anschliessend habe ich die Werte in einem Fuse Calculator eingegeben. Der Haken bei enable JTAG war nicht gesetzt. Also gehe ich davon aus, dass die Fuses so in Ordnung sind.
Irgendwann muss doch dieses Ding mal laufen :)
lg Daniel
Hubert.G
16.08.2009, 19:35
Hast du dir das RN-Control selbst gelötet oder fertig gekauft. War der PortC schon mal in Betrieb.
Schreib dir ein kleines Programm in dem die Leds einzeln kurz aufleuchten. Oder ändere es einmal auf PortD, dann müsstest du aber den MAX232 herausnehmen.
dwiedenmann
16.08.2009, 19:49
Die RN-Control habe ich fertig gekauft. Wenn ich ein Lauflichtprogramm laufen lasse läuft das Licht wie gewünscht durch, nur an PC.7 tut sich nichts (LED Nr.8)
dwiedenmann
16.08.2009, 19:53
Nr.8 war gemeint.
Hubert.G
16.08.2009, 20:01
Wenn dann R/W nicht funktioniert ist es schon klar das dann das Disp nicht geht.
Hast du schon mal gemessen was auf dieser Leitung drauf ist. Es könnte auch der L293 eine Macke haben.
dwiedenmann
16.08.2009, 20:41
Ich habe jetzt auch mal direkt an der RN-Control gemessen und es ist auf RW tatsächlich nichts drauf. Komisch ist, dass beim Lauflicht alle LED bis auf LED8 funktioniert haben. LED8 entspricht RS. Also müsste RW doch eigentlich funktionieren. Auch in der lcd.h ist der richtige PIN eingegeben.
lg Daniel
Hubert.G
16.08.2009, 21:54
Du hast recht, ich habe mich da verschaut, aber es geht ohne RS auch nicht.
Du musst nachsehen was mit dieser Leitung los ist.
dwiedenmann
17.08.2009, 21:24
Jetzt habe ich nochmal das Lauflichtprogramm geladen. Wie jedesmal haben alle LED geblinkt, bis auf LED8 also die am Port für RS. Danach habe ich die LED deaktiviert und direkt am Stecker für Port C gemessen.
Und da fällt bei PIN8 die Spannung genauso ab wie bei den anderen PINs. Die Hardware scheint also zu funktionieren. Da muss ich irgendwas mit dem Program falsch gemacht haben.
Also wenn das Display läuft mach ich ein Fass auf :)
lg Daniel
Hubert.G
17.08.2009, 21:40
Ich würde es an deiner Stelle mal an PortB probieren, hast du den L293 mal herausgenommen?
dwiedenmann
17.08.2009, 21:45
Den habe ich raus. In der Anleitung stand ja, dass man den rausnehmen soll, wenn man PIN7 und 8 nutzen will. Ich probiers schnell mal mit PortB...
lg Daniel
dwiedenmann
17.08.2009, 21:56
Das Fehlerbild hat sich jetzt verändert.Ich sehe jetzt zum ersten mal etwas anderes als schwarze Balken. Aber irgendwo ist noch der Wurm drin. Ich sehe keine Schrift ondern nur lane senkrechte Striche und dann wieder kürzere und dann wieder längere. Wenn das um 90° gedreht wäre würde es ungefähr so ähnlich aussehen Morsezeichen. Der kontrast ist voll aufgedreht und wenn ich herunterdrehe werden die Stiche kürzer bis sie verschwinden.
lg Daniel
Hubert.G
17.08.2009, 22:03
Hast du den Programmieradapter abgesteckt, auf JP6 steckt auch nichts.
dwiedenmann
17.08.2009, 22:08
Auf JP6 waren alle 3 Jumper gesteckt. Die habe ich jetzt gezogen und den Adapter habe ich jetzt auch abgesteckt, aber das Bild bleibt leider unverändert.
lg Daniel
Hubert.G
17.08.2009, 22:16
Jetzt gehen mir aber auch langsam die Tips aus.
Die Stromversorgung ist auch OK, nicht das die etwas einknickt, eventuell die Beleuchtung abgeschaltet lassen.
Hubert.G
17.08.2009, 22:18
Warum die Led8 an PortC nicht leuchtet würde ich mir aber trotzdem anschauen, vielleicht ist sie nur verkehrt drinnen.
dwiedenmann
17.08.2009, 22:21
Die Beleuchtung ist aus. Ich werde nochmal mit eingeschaltenem Display durchmessen.
lg Daniel
dwiedenmann
17.08.2009, 22:55
Die 5V (4,8)an PIN2 des Displays sind da. An RS 4,8V, an RW0V. Eins ist sehr merkwürdig: wenn ich der reihe nach alle pins messe, dann erscheinen immer mehr schwarze Balken. Der Schriftzug Hello World lässt sich erahnen, nur die Buchstaben sind abgeschnitten.
lg Daniel
dwiedenmann
17.08.2009, 23:04
Ich bin ja so ein vollpfosten!!!!!!!!!!!!!!!!
Hatte das alte Display angeschlossen bei dem ich dachte es geht nimmer. Habe das neue jetzt dran gehängt und den Kontrast zurück gedreht und es läuft!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1 :)
Für das neue hatte ich den Kontroller umgestellt in der lcd.h
Ich stell mal zurück und schaue mal ob ich das alte Display doch noch zum laufen kriege. Aber wohl nicht mehr heute. Muss morgen früh raus und den Tag mit diesem Erfolg beenden. Morgen teste ich das andere Display und schaue mal ob es nicht doch auch an PortC läuft. Ich werde natürlich sofort Bericht erstatten wie es gelaufen ist :)
Und nochmal vielen Dank für deine Geduld und Unterstützung.
lg Daniel
dwiedenmann
18.08.2009, 21:10
Also an PortC will es einfach nicht laufen. Auch das Aktivieren der Hintergrundbeleuchtung will nicht klappen. Aber Hauptsache es kommt Text :)
lg Daniel
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.