OLED Display EA W202-XLG keine Steuerkommandos

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    Aufgrund technischer Veränderungen ist der Mailverkehr innerhalb des Forums (Private Nachrichten) nur noch eingeschränkt möglich. Die Einschränkung ist notwendig, um zusätzliche Betriebskosten für das Forum zu vermeiden. Näheres zu den Hintergründen im Thread "Aktuelles zum Forum".Wir bitten um Verständnis.

    Hinweis kann nach Kenntnisnahme deaktiviert werden!

    • OLED Display EA W202-XLG keine Steuerkommandos

      Hallo,
      habe vor mir ein OLED-Display EA W202 liegen und bekomme das nicht richtig zum Laufen.
      Alle Zeichen werden korrekt angezeigt (auch die selbstdefinierten Zeichen) aber das Display reagiert auf keine Steuerkommandos, wie CLS, Locate usw. ebenso die entsprechenden Lcdcmd's.
      Als Folge wird das Display in 16'er Blöcken vollgeschrieben ( nehme an als Folge der Autoincrementfunktion des Cursors).

      Quellcode

      1. 'Oled EA W202 Test
      2. $regfile = "m328pdef.dat"
      3. $crystal = 16000000
      4. $swstack = 80
      5. $hwstack = 80
      6. $framesize = 80
      7. Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7 , E = Portd.3 , Rs = Portd.2
      8. Config Lcd = 20x2
      9. Initlcd
      10. Deflcdchar 0 , 16 , 16 , 16 , 16 , 16 , 16 , 16 , 16
      11. Deflcdchar 1 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28
      12. Deflcdchar 2 , 31 , 31 , 31 , 31 , 31 , 31 , 31 , 31
      13. Cls
      14. Waitms 5
      15. 'Cursor Off
      16. Do
      17. Waitms 100
      18. Locate 1 , 1
      19. Lcd "#"
      20. Loop
      Alles anzeigen


      Kommt das jemandem bekannt vor? Was mache ich falsch.
    • Michael schrieb:

      Neben der von Mitch64 beschriebenen Pause würde ich auch noch den Chipsatz KS077 ausprobieren:
      Config Lcd = 20x2 , Chipset = Ks077
      avrhelp.mcselec.com/index.html?config_lcd.htm
      und wenn das nichts bringt, würde ich versuchen die im Datenblatt dargestellte initialisierungssequenz zu übernehmen. Ich vermute, die ist nicht unbedingt ohne Grund dort abgedruckt...
    • So liebe BASCOM'er nach dem ich eine Nacht drüber geschlafen habe ist mir eingefallen auch mal die Jumperkabel zu überprüfen (sollte man bei unerklärlichem Fehlverhalten immer tun!) und siehe da: Das Kabel der RS-Leitung war defekt (schlecher bzw. gar kein Kontakt), zum Glück habe ich von diesen chinesischen einen ganzen Packen, so dass ich jedesmal neue nehmen kann. Fazit : dieses OLED-Display lässt sich genau so ansteuern wie die LCD-Module von electronic assembly. Tolle Sache, einfache Stromversorgung (3,3 oder 5V), blickwinkelunabhängiger sehr guter Kontrast, kein Backlight erforderlich, keine Kontrasteinstellung erforderlich....wenn der Preis nur nicht so hoch wäre.
      Vielen Dank an Alle die sich Gedanken gemacht habe um mir zu helfen. :P a_22_9ac28a82
    • Hatte mich zu früh gefreut. :(
      Sehr unzuverlässig das Ganze.Mal gehts, meistens aber nicht.
      Alles ausprobiert, weitms eingefügt, anderen chipsatz genommen (geht gar nichts), dann Betriebsspannung gemessen: 4,5V -> also zieht das Display schon zuviel aus dem arduino nano (ein OLED braucht halt ein bischen mehr Strom als ein LCD). Oled extern mit 5V versorgt-> schon besser.
      Aber der richtige Durchbruch gelang erst als ich die Initialisierungskommandos aus dem Datenblatt anstatt dem initlcd verwendet habe!
      @Galahat hat recht gehabt :thumbup:
      So funktioniert das korrekt und zuverlässig:

      Quellcode

      1. 'Oled EA W202 Test
      2. $regfile = "m328pdef.dat"
      3. $crystal = 16000000
      4. $swstack = 80
      5. $hwstack = 80
      6. $framesize = 80
      7. Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7 , E = Portd.3 , Rs = Portd.2
      8. Config Lcd = 20x2
      9. 'OLED-Initialisierung
      10. '############################
      11. Lcdcmd &H28
      12. Lcdcmd &H08
      13. Lcdcmd &H06
      14. Lcdcmd &H17
      15. Lcdcmd &H01
      16. Waitms 3
      17. Lcdcmd &H02
      18. Lcdcmd &H0C
      19. '############################
      20. Deflcdchar 0 , 16 , 16 , 16 , 16 , 16 , 16 , 16 , 16
      21. Deflcdchar 1 , 24 , 24 , 24 , 24 , 24 , 24 , 24 , 24
      22. Deflcdchar 2 , 28 , 28 , 28 , 28 , 28 , 28 , 28 , 28
      23. Deflcdchar 3 , 30 , 30 , 30 , 30 , 30 , 30 , 30 , 30
      24. Deflcdchar 4 , 31 , 31 , 31 , 31 , 31 , 31 , 31 , 31
      25. Cls
      26. Waitms 3
      27. Cursor Off
      28. Do
      29. Waitms 500
      30. Locate 1 , 1
      31. Lcd Chr(4) ; Chr(0)
      32. Waitms 500
      33. Cls
      34. Loop
      Alles anzeigen