OLED Display EA W202-XLG keine Steuerkommandos

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • 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).

      Source Code

      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
      Display All


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

      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:

      Source Code

      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
      Display All