EA DOG-M 163; SPI; Initialisierung & Kontrast

OP #2635045
Hallo Leute,

Im Zuge einer Diplomarbeit bauen wir gerade ein Board mit dem EA DOG-M 
163 Display.

Betrieben wird es im SPI mit 3,3 Volt.

Ich habe hier den Code für die Initialisierung:

1
// Startup timing according to datasheet recommendation
2
send_instSPI(0x38);    // FUNCTION SET: N, DH, IS2, IS1:   2/3 lines, 5x8 Font, instruct. table 0,0;  #### 1 line: 0x30
3
waitms (40);          // wait
4

5
send_instSPI(0x39);    // FUNCTION SET: N, DH, IS2, IS1:   2/3 lines, 5x8 Font, instruct. table 0,1;  #### 1 line: 0x31
6
waitms (10);          // wait
7

8
send_instSPI(0x14);    // BIAS SET:  14 (2x16?) statt (1d 3x16?) 3 line displays: D4=1,  1 ans 2 line displays: D4=0
9
waitms (10);          // wait                     
10

11
send_instSPI(0x55);     // COMMAND: POWER/ICON/CONTROL/CONTRAST SET:      ION, BON, C5, C4
12
waitms (10);          // wait
13

14
send_instSPI(0x6D);     // FOLLOWER CONTROL
15
waitms (10);         // wait
16

17
// send_instSPI(0x78);     // CONTRAST SET ( low nibble )
18
send_instSPI(0x78);     // Humer
19
waitms (10);          // wait
20

21
send_instSPI(0x0E);       // Display ON/OFF
22
//send_instSPI(0x0F);       // Display ON/OFF
23
busy_lcd ();         // Wait for ready
24

25
send_instSPI(0x01);     // Clear Display
26
busy_lcd ();        // Wait for ready
27

28
send_instSPI(0x06);     // Entry mode set
29
busy_lcd ();         // Wait for ready   
30

31
send_instSPI(0x38);      // FUNCTION SET: N, DH, IS2, IS1:   2/3 lines, 5x8 Font, instruct. table 0,0;  #### 1 line: 0x30
32
busy_lcd ();         // Wait for ready

Dieser funktionier auch anscheinend soweit, dass ich etwas aufs Board 
schreiben kann. Jedoch ist es komplett "schwarz" und nur wenn man unter 
einem steilen Winkel draufsieht kann man durch die schwarzen Balken das 
Wort sehen.

Hier ein Bild wie es aussieht:
http://s7.directupload.net/images/120413/88g53yde.jpg

Jetzt hab ich schon ewig lang mit den Contrast Settings auch rumgespielt 
und ich kriegs einfach nicht hin.

Vielleicht seht ihr ja einen Fehler in der Initialisierung?
OP #2635672
Habe nun auch die Werte für die Initialisierung in meinem Programm 
probiert und es ergibt wieder das gleiche. Versuche jetzt noch den 
gesamten Code für meinen µC zu adaptieren.

Danke für den Tipp!

Falls sonst noch wer Ideen hat bitte melden.

LG
Gast #2635690
> Falls sonst noch wer Ideen hat bitte melden.

Ich habe selbst noch letzte Woche ein 3x16Zeichen ueber SPI in Betrieb 
genommen. Und ich musste auch nicht irgendwelchen fremden Code 
abschreiben. Einfach die Initialisierung aus dem Handbuch und es hat 
funktioniert.

Wenn das bei dir nicht so ist dann hast du entweder das Datenblatt nicht 
richtig gelesen. (Unterschiedliche Beschaltung 5V/3.3V) oder dein 
Display ist wirklich defekt. Man koennte ja auch mal auf die Idee kommen 
die SPannungen an Vcc, Booster in/out nachzumessen. .-)

Das einzige was ich an dem Display ein wenig aergerlich finde, das der 
Hersteller zu bloed war den MOD-Pin fuer den I2C-Bus rauszulegen.

Olaf

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 14 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.