LCD 20x4 I2C PCF8574T SainSmart LCD2004 (2004A)

Hallo,

hab das oben beschrieben LCD.
Leider bekomme ich es nicht zum laufen.
Ich hab jede Lib durch die ich gefunden habe.
Ich habe auch was gelesen das man in den Libs die RS, RW, E, D4, D5, D6, D7 Pins ändern muss nur leider hat das kein erfolg gebracht bzw. bei manchen Libs find ich die passenden stellen in der cpp gar nicht :sob:
Ich weiß nicht mehr weiter.
Kann mir vielleicht jemand der das gleiche LCD hat sein Lib schicken?
Oder mir vielleicht sagen was ich noch versuchen kann?

Hallo,
ein Link zum Produkt wäre hilfreich.

Vorgehensweise:

  1. I2C-Scanner um die Adresse herauszufinden
// I2C Scanner
// Written by Nick Gammon
// Date: 20th April 2011

#include <Wire.h>

void setup() {
  Serial.begin (9600);
  Serial.println ();
  Serial.println ("I2C scanner. Scanning ...");
  byte count = 0;

  Wire.begin();
  for (byte i = 1; i < 120; i++)
  {
    Wire.beginTransmission (i);
    if (Wire.endTransmission () == 0)
      {
      Serial.print ("Found address: ");
      Serial.print (i, DEC);
      Serial.print (" (0x");
      Serial.print (i, HEX);
      Serial.println (")");
      count++;
      delay (1);  // maybe unneeded?
      } // end of good response
  } // end of for loop
  Serial.println ("Done.");
  Serial.print ("Found ");
  Serial.print (count, DEC);
  Serial.println (" device(s).");
}  // end of setup

void loop() {}
  1. Verdrahtung auf der I2C-Platine kontrollieren, welcher Pin vom IC geht auf welchen Pin vom Display

bei mir läuft:

#include <Wire.h>
#include <LCD.h>
#include <LiquidCrystal_I2C.h>                     // F. Malpartida's NewLiquidCrystal library

#define I2C_ADDR    0x27                           // I2C-Addresse PCF8574
//#define I2C_ADDR    0x3F                           // I2C-Addresse PCF8574A 0x38 - 0x3F

// Die Pin-Belegung des Displays
#define BACKLIGHT_PIN  3                          //7
#define En_pin  2                                 //6
#define Rw_pin  1                                 //5
#define Rs_pin  0                                 //4
#define D4_pin  4                                 //0
#define D5_pin  5                                 //1
#define D6_pin  6                                 //2
#define D7_pin  7                                 //3

#define  LED_OFF 0
#define  LED_ON  1

// Prototypen
LiquidCrystal_I2C
lcd(I2C_ADDR, En_pin, Rw_pin, Rs_pin, D4_pin, D5_pin, D6_pin, D7_pin);


//Display Anschluss:
//SCL = Analog IN 5, grün
//SDA = Analog IN 4, gelb

Gruss
Kurti

Hallo,

danke für deine Antwort.
Den I2C Scanner hab ich schon benutzt und die Adresse hab ich 0X27.
Deine Lib ist von https://bitbucket.org/fmalpartida/new-liquidcrystal/downloads oder?
Welche von denen hast du denn?

Ist gibt verschiedene Libs, die anscheinend nicht mit allen Displays kompatibel sind.

Bei mir geht die hier:
http://www.dfrobot.com/image/data/DFR0154/LiquidCrystal_I2Cv1-1.rar

Vielen dank Serenifly mit deiner Lib hat es geklappt.
Aber ich hatte die davor auch schon drauf nur ich hatte den fehler gemacht noch eine andere Lib drin zu lassen und drum bekamm ich bei der Lib wo jetzt geht lauter fehler. OH MANN

PICNIC = Problem In Chair, Not In Computer 8)

schön, das es jetzt funktioniert

leider ist das meistens so :confused: