20x4 Display Initialisierung I2C

  • Hallo zusammen!

    Ich habe die Tage ein 16x2 Display über einen PCF8574 I2C Portexpander an den Pi angeschlossen. Exakt nach dieser Anleitung. Erst lief es nicht. Dann habe ich aufgrund von den Kommentaren auf der Seite mal den Anschluss E und RS vertauscht. Dann funktionierte es wunderbar.

    Jetzt habe ich auf die selbe Weise mal ein 20x4 Display (Datenblatt) benutzt. Das Display läuft nicht. Wenn ich Daten darauf sende steht nur der cursor irgendwo und blinkt. Dann habe ich mal genauso E und RS vertauscht und dann hatte ich nur irgendwelche kryptischen Zeichen.

    Jetzt habe ich angefangen nachzuforschen und wollte prüfen ob das Display denn überhaupt korrekt initialisiert wird. Dazu versuche ich erstmal die Initialisierung des 16x2 Displays nachzuvollziehen. Der erste Schritt beim Initialisieren im Python-Skript ist ja:

    Code
    self.lcd_device.write(0x30)
    self.lcd_strobe()
    sleep(0.0005)

    Laut dieser Seite müsste der erste Punkt einer Standardinitialisierung für den 4-Bit Modus so aussehen:
    (Das passt auch zu anderen Datenblättern die ich gesehen habe)

    RS R/W D7 D6 D5 D4 D3 D2 D1 D0

    0 0 0 0 1 1 0 0 0 0

    Die 0x30 ist Binär 00110000
    Wenn ich das richtig verstehe bedeutet das für das Display dann aber:

    P7 P6 P5 P4 P3 P2 P1 P0

    NC E R/W RS D7 D6 D5 D4

    0 0 1 1 0 0 0 0

    Müsste also nicht eher eine 0x03 gesendet werden?

    Wo ist mein Denkfehler?

    Danke schonmal

    Einmal editiert, zuletzt von H4lunkE (25. Juni 2013 um 19:43)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!