Hallo, ich versuche ein LCD mit einem Atmega164 zu steuern. Ich habe schon etliche verschiedene anleitungen für den Atmega16 ausprobiert aber bei allen bleibt der LCD leer. ich verwende dieses LCD: http://www.conrad.de/ce/de/product/183045/Alphanumerisches-LCD-Modul-Gleichmann-GE-C1602B-TMI-JTR-Zeichenformat-16-x-2-Zeichenhoehe-555-mm-Blau-Weiss muss ich z.B. bei dieser anleitung irgendetwas anpassen oder habe ich ein falsches LCD?: http://www.technicktit.info/162-character-lcd-interfacing-atmega16/ Viele Grüße, Vincent
Vincent Fischer schrieb: > muss ich z.B. bei dieser anleitung irgendetwas anpassen Die Steuerspannung am Kontrast-Anschluß muß bei vielen Displays einstellbar sein und nicht wie unter "LCD Interfacing:" gezeigt, fest über R1 an +5V.
>Die Steuerspannung am Kontrast-Anschluß muß bei vielen Displays >einstellbar sein und nicht wie unter "LCD Interfacing:" gezeigt, fest >über R1 an +5V. Laut Datenblatt dann doch eher Richtung GND als +5V. Einfach mal an GND anschliessen. Dann sollte zumindest was zu sehen sein (alle Pixel weiss).
Einfach mal das Datenblatt aufmachen und ansehen, wie so ein Display
funktioniert?
So schlimm ist das auch nicht und wenn man da einmal durch ist steht
die Tür weit auf für andere Display/Controller Kombinationen.
>Tatsächliche Taktfrequenz deines µC
Sollte eigentlich egal sein.
Es sei denn man benutzt eine verkorkste Delay-Wüste.
Ich habe VO auf GND umgeschaltet. Jetzt ist zwar der contrast hoch aber statt text ist alles weiß. An der taktfrequenz sollte es nicht liegen die habe ich so definiert:
1 | #ifndef F_CPU
|
2 | #define F_CPU = 16000000UL
|
3 | #endif
|
viele Grüße, Vincent
Vincent Fischer schrieb: > Ich habe VO auf GND umgeschaltet. Jetzt ist zwar der contrast hoch aber > statt text ist alles weiß. Deshalb sollte man Vo, wie im Datenblatt auf Seite 6, anschließen. Dann kann man den Kontrast, der auch von der Betriebsspannung abhängig ist, gut einstellen.
Ok ich habe jetzt das poti eingebaut aber text wird bei keiner stellung angezeigt. Außerdem ist mir aufgefallen, dass in der unteren Zeile der kontrast immer niedriger ist als in der oberen. Viele Grüße, Vincent
Solange der obere Balken weiß ist und der untere dunkel bleibt, ist das LCD nicht initialisiert. Hast du das Programm auch für den Mega164 kompiliert?
$ avr-gcc -mmcu=atmega164a -Wall -Os main.c -o main müsste passen, oder? Viele Grüße, Vincent
Kann ich so nicht fix sagen, verwende das AVR-Studio, sieht aber richtig aus. Hast du R/W auch auf GND gelegt? Wenn du keinen Oszi hast, mal mit einer Led mit Vorwiderstand auf die Datenleitung und Steuerleitungen schauen ob sich was tut. Wird nur kurz im Einschaltemoment sein wenn der Kontroller das Programm nicht dauernd ausgibt. Ansonst wird es langsam schwierig mit der Ferndiagnose.
bei RS, DB6 und DB7 leuchten die dioden immer nur am anfang blinken sie kurz bei E, DB4 und DB5 blinken sie am anfang kurz und sind dann aus. und ja R/W ist an GND angeschlossen Viele Grüße, Vincent
Meckert Dein Compiler nicht irgendetwas an? In dem verlinkten Beispiel sind noch Header-Dateien eingebunden. Nur mit einer main.c kommst Du nicht weit. Also: Bitte Programm und Schaltplan hier posten!
hier ist die bibliothek: http://www.mediafire.com/view/?mghk01qnbkqnrgb gcc gibt nur ein paar warnungen aus(wegen char/unsigned char verwechslung) aber selbst wenn ich dass ändere funktionierts nicht zum shaltplan: http://technicktit.info/wp-content/uploads/2013/03/connection2.jpg ich habe allerdings jetzt pins 1 bis 3 wie im datenblatt beschrieben angeschlossen: http://www.produktinfo.conrad.com/datenblaetter/175000-199999/183045-da-01-en-LCD_MODUL_16X2_LED_GE_C1602B_TMI_JT_R.pdf Viele Grüße, Vincent
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.