LCD Display + Atmega 128

Gast #420749
Lesenswert?

Hallo Experten,

ich möchte mein LCD Display KS 0108 mit den Atmega 128 ansteuern. Ich
möchte einmal „Hello Welt“ ausgeben können. Ich hab es geschafft das
Display einzuschalten. Doch wenn ich die Write Routine aufrufe,
reagiert das Display einfach nicht da drauf.
Das Display bleibt einfach eingeschaltet und etwa mehr als die hälfte
ist Schwarz(Pixel).
Muss ich mein Programm auf den EEPROM schreiben ?
Komm einfach nicht dahinter, was ich falsch gemacht habe. Mein Quell
text hab ich als Anhang beigefügt.

Danke im Vorraus

Patrick
Angehängte Dateien:
Gast #420752
Lesenswert?

Initalisiert hatte ich es vorhin auch schon mit einer feritgen Routine
aus den Netz. Hier hab ich selbst nochmal eine Intialisierung
geschrieben. Problem ist dass das Display immer eine hälfte Schwarz
lässt egal was ich schreibe. und sonst auf nichts Reagiert außer
einschalten und ausschalten. Kann das Display vielleicht kaput sein ?
Wie stelle ich sowas fest ?

Besten Dank

Patrick
Angehängte Dateien:
Gast #420753
Lesenswert?

Wenn ich mir andere Beispiel zu dem Display so ansehe, muß du noch eine
Menge an deiner Initialisierung arbeiten.

Hier hab zum dem Display auf die schnelle z.B. das hier gefunden

<code>
/*---------------------------------------------------------------------- 
---------
LCD Initialization
  GLCD_LcdINIT()
------------------------------------------------------------------------ 
-------*/
void GLCD_LcdInit(void)
{
  LCD_DATA = 0;
  LCD_DI = 0;
    LCD_RW = 0;
    LCD_E = 0;
    LCD_CS1 = 0;
    LCD_CS2 = 0;

    LCD_RST = 1;
    LcdDelay(10);
    LCD_RST=0;
    LcdDelay(10);
    LCD_RST=1;

    LcdSelectSide(LEFT);
    LcdInstructionWrite(DISPLAY_OFF); /* Display OFF */
    LcdInstructionWrite(START_LINE);
    LcdInstructionWrite(X_ADRESS);
    LcdInstructionWrite(Y_ADRESS);
    LcdInstructionWrite(DISPLAY_ON); /* Display ON */

    LcdSelectSide(RIGHT);
    LcdInstructionWrite(DISPLAY_OFF); /* Display OFF */
    LcdInstructionWrite(START_LINE);
    LcdInstructionWrite(X_ADRESS);
    LcdInstructionWrite(Y_ADRESS);
    LcdInstructionWrite(DISPLAY_ON); /* Display ON */

    GLCD_ClearScreen();
}
</code>

Genauer hilft da aber wohl nur ein Blick ins Datenblatt. Nur dazu habe
ich keine Lust, da ich kein soclhes Display habe. :-)

Aber normal gehen die ganzen schwarzen Punkte weg, wenn das Display
korrekt initialisiert wird.

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