Forum: Mikrocontroller und Digitale Elektronik Problem mit LSI S6A0069 display initialisierung


von Benjamin N. (riveda)


Lesenswert?

Hallo µC Freunde.
Ich hab ein Problem mit der Initialisierung meines Displays an einem 
Atmega 32.
Hier das Datenblatt: 
http://www.elpro.org/Images/html/Punktmatrixmodule/DEM16226SYH-LY.pdf
Bin bei der Initialisierung für 8bit  nach Datenblatt vorgegangen.
Dann habe ich verschiedene andere Beispiele hier aus dem Forum usw 
ausprobiert.
Leider immer mit dem selben Ergebnis, welches wie volgt aussieht:

Sowohl vor als auch nach der Initialisierung wird die oberen
"Display-Kästchen " einfach dunkel angezeigt. was anderes ändert sich 
nicht.

Alle leitungen sind 100% richtig verdrahtet, das habe ich mehrfach 
nachkontrolliert.

Solangsam gehen mir wecht die indeen aus...
Vlt hat ja jemand  schonmal mit dem controller gearbeitet und hatte 
ähnliche probleme.



1
i=0;
2
3
DDRC=0b11111111; //alles Output, hier hängen die Datenbits 
4
DDRB=0b00000111; //an pin 0(E),1(RS),2(R/W) hängen die Steuerbits
5
for(i=0; i<100; i++) {_delay_ms(1); }
6
7
//funktion set 1
8
PORTB=0b00000000; // RS, R/W und E auf 0
9
PORTC=0b00111000; // 2-Line Mode, 5x8 font
10
for(i=0; i<2; i++) { _delay_ms(1); }
11
12
//übermahme
13
PORTB=0b00000001;
14
for(i=0; i<2; i++) { _delay_ms(1); }
15
PORTB=0b00000000;
16
17
//funktion set 2
18
PORTB=0b00000000;  //RS, R/W und E auf 0
19
PORTC=0b00111000;   // 2-Line Mode, 5x8 font
20
for(i=0; i<2; i++) { _delay_ms(1); }
21
22
//übernahme
23
PORTB=0b00000001;
24
for(i=0; i<2; i++) { _delay_ms(1); }
25
PORTB=0b00000000;
26
for(i=0; i<2; i++) { _delay_ms(1); }
27
28
//funktion set 3
29
PORTB=0b00000000;   //RS, R/W und E auf 0
30
PORTC=0b00111000;   // // 2-Line Mode, 5x8 font
31
for(i=0; i<2; i++) { _delay_ms(1); }
32
33
//übernahme
34
PORTB=0b00000001;  
35
for(i=0; i<2; i++) { _delay_ms(1); }
36
PORTB=0b00000000;
37
38
//-------an hier init wie in datenblatt------
39
//---die andern 3 funktionset waren nur nen test eines tips-----
40
//funktion set
41
PORTB=0b00000000;   //RS, R/W und E auf 0
42
PORTC=0b00111000;    // 2-Line Mode, 5x8 font
43
for(i=0; i<2; i++) { _delay_ms(1); }
44
45
//übernahme
46
PORTB=0b00000001;
47
for(i=0; i<2; i++) { _delay_ms(1); }
48
PORTB=0b00000000;
49
50
//display control
51
PORTB=0b00000000;   //RS, R/W und E auf 0
52
PORTC=0b00001111;   //display on,curser on, blink on
53
for(i=0; i<5; i++) { _delay_ms(1); }
54
55
//übermahme
56
PORTB=0b00000001;
57
for(i=0; i<2; i++) { _delay_ms(1); }
58
PORTB=0b00000000;
59
60
61
//display clear
62
PORTB=0b00000000;   //RS, R/W und E auf 0
63
PORTC=0b00000001;    // clear nach datenblatt
64
for(i=0; i<5; i++) { _delay_ms(1); }
65
66
//übernahme
67
PORTB=0b00000001;
68
for(i=0; i<2; i++) { _delay_ms(1); }
69
PORTB=0b00000000;
70
71
72
//entry mode set
73
PORTB=0b00000000;    //RS, R/W und E auf 0
74
PORTC=0b00000111;    //increment mode, shift on
75
for(i=0; i<2; i++) { _delay_ms(1); }
76
77
//übernahme
78
PORTB=0b00000001;
79
for(i=0; i<2; i++) { _delay_ms(1); }
80
PORTB=0b00000000;
81
//init ende

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
Noch kein Account? Hier anmelden.