Hallo ich verwende einen ATMega32 mit 16 Mhz und ein normales LCD HD44780 konform. Ich starte meine vInitLcd (); soweit so gut. wenn ich nun ein zeichen sende, schaltet sich das display immer ab. ich muss es erst mit vLcdEin(); einschalten um den gesendeten Text zu sehen. Ich bin der Meinung, dass es auch ohne erneutes Einschalten gehen müsste. Habt ihr nen Lösung oder gleiches Problem auch schon mal gehabt? Vielen Dank Micha
Hi, mit 16MHz kann der µC schon so schnell laufen, dass das LCD nicht folgen kann. Ich glaube dass Du die "setup-time" nicht einhälst. Probier mal ein delay bevor Du EN einschaltest, so etwa:
1 | //Gibt Enable-Puls für Lcd aus
|
2 | void vEnableLcd(){ |
3 | _delay_us (10); // <---------------- |
4 | PORTA |= ( 1 << EN ); |
5 | _delay_us (10); |
6 | PORTA &= ~( 1 << EN ); |
7 | }
|
Feadi
Hi - ich habe mal die Zeit der enable-funktion hochgenommen, und auch noch vor der portzuweisung die delayfunktion reingesetzt --> gleiches problem. ich habe jetzt mal nur die initialisierung des LCD durchgeführt und da bleibt das display an. nur wenn ich einen buchstaben sende über vSchreibeZeichen(); geht das display wieder aus.
Wollte deinen Code bei mir testen. Welche Pins vom Mikrocontroller gehen an welche Pins vom Display?
Hi Sorry, das hätte ich mit hinschreiben können: //Befehle PORTA : PIN6 - R/S - Leitung zum Display (#define RS 6) PIN7 - Enableleitung zum Display (#define EN 7) Die Datenleitungen hab ich an PORTD (#define LCDPORT PORTD) angeschlossen siehe. Dabei ist PIN0 = D0 am LCD. gruß Micha
Btw., was ist mit R/~W? Wenn du die nicht hast, kannst du das Busy-Flag nicht lesen und musst sinnlos Zeit verwarten.
warum benutzt du nicht den 4-bitmodus. du verschwendest doch 4 datenleitungen. mfg pebisoft
@Jörg: mh geht schneller, aber meinst du das ist der grund, warum sich das display abschaltet?? @pebi: naja acht bit gehen schneller und die pins wären eh frei ;)
bin eigentlich voll der noob und kenn mich mit bildschirmen nicht gans so doll aus, möchte aber wissen, ob es möglich ist, dass ein lcd-bildschirm schaden nimmt, wenn er, nachdem der pc runtergefahren ist, einfach von stromnetzt abgeschaltet wird, nichts standby oder ausschalten, einfach strom weg, während er noch läuft... ich befürchte dass die lc´s eben in ihrer struktur oder position oder sonst was verändert werden, und das, wenn vielleicht nicht gleich ganz zum knock out, aber doch zu einigen bildstörungen führen könnte, also, wäre super wenn mir irgendwer irdendwie weiterhelfen könnte... danke im voraus
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.