mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik DOGM LCD Kontrast


Autor: Lokus Pokus (derschatten)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich versuche mich gerade daran ein DOGM 162 an einem MEGA88 zu 
betreiben.
Dazu habe ich mich an das Beispiel hier im Forum gehalten: 
http://www.mikrocontroller.net/articles/DOGMxxx_LCD_Routinen

Als Pufferkondensatoren verwende ich 1yF Elko für CAP1 und 2,2yF Elko 
für VIN/OUT

Das Schaltung und die weiße Hintergrundbeleuchtung wird mit 3,6V (3xAA 
Batterien) betrieben.
Der AVR ist mit internen 8MHz getaktet.

Jetzt habe ich das Problem das die Schrift kaum zu erkennen ist.

Jemand einen Tip für mich?
Das gleiche tritt übrigens auch auf wenn ich die Schaltung und das 
Display laut Datenblatt beschalten, mit 5V betreibe.

Wenn ich das dem Code richtig entnehme, müßte das in der Initialisierung 
stattfinden:
// ************************************************************
// Initialize LCD module
// ************************************************************

void dogm_init(void)
{
  dogm_port_init();                     // initialize ports

  _delay_ms(400);                       // 40ms delay
  dogm_write_once(0x30);                // Function Set #1: DL=1
  _delay_ms(2);                         // 2ms delay
  dogm_write_once(0x30);                // Function Set #2: DL=1

  _delay_us(30);                        // 30us delay
  dogm_write_once(0x30);                // Function Set #3: DL=1
  _delay_us(30);                        // 30us delay

  dogm_chk_busy();                      // Check busy flag
  dogm_write_once(0x20);                // Function Set #4: DL=0

  _delay_us(30);                        // 30us delay
  dogm_write_check(0, 0x29);            // Function Set #5: DL=0, N=1, IS2=0, IS1=1
  _delay_us(30);                        // 30us delay

  dogm_write_check(0, 0x14);            // Bias Set: BS=0, FX=0
  _delay_us(30);                        // 30us delay

  dogm_write_check(0, 0x78);            // Contrast Set: C3=1, C2=C1=C0=0
  _delay_us(30);                        // 30us delay

  dogm_write_check(0, 0x5E);            // Power/ICON/Contrast: Icon=1, Bon=1, C5=1, C4=0
  _delay_us(30);                        // 30us delay

  dogm_write_check(0, 0x6A);            // Follower Ctrl: Fon=1, Rab2=0, Rab1=1, Rab0=0
  _delay_us(30);                        // 30us delay

  dogm_write_check(0, 0x0C);            // DISPLAY ON: D=1, C=0, B=0
  _delay_us(30);                        // 30us delay

  dogm_write_check(0, 0x01);            // CLEAR DISPLAY
  _delay_ms(2);                         // 2ms delay

  dogm_write_check(0, 0x06);            // Entry mode set: I/D=1, S=0
  _delay_us(30);                        // 30us delay
}

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>Jemand einen Tip für mich?

Ja. Mache die Initialisierung wie im Datenblatt angegeben.

MfG Spess

Autor: Lokus Pokus (derschatten)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok, die Anzeige funktioniert jetzt auf einem MEGA8 problemlos
Jedoch nicht am MEGA88. Da wird der Text abgeschnitten.

Mehr als "Hallo Wel" erscheint nicht.

Bin jetzt draufgekommen das das Display anscheinend Probleme hat wenn 
der AVR schneller als 4MHz läuft.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.