DOGM LCD Kontrast

OP #1642870
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:
1
// ************************************************************
2
// Initialize LCD module
3
// ************************************************************
4

5
void dogm_init(void)
6
{
7
  dogm_port_init();                     // initialize ports
8

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

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

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

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

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

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

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

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

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

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

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

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