I2C LCD gibt nur die ersten 8 Zeichen aus und wiederholt dann die ersten 8 Zeich

Hallo, stehe ein wenig auf dem Schlauch. Beschäftige mich sein 2 Tagen damit das LCD an meinem Nano zum laufen zu bringen. Grundsätzlich funktioniert es, nur das sich alles nach acht Zeichen wiederholt. Denke das ich die richtige Library habe denn alle anderen funktionieren nicht oder nicht richtig. Habe auch schon mehrere IDE probiert aber leider ohne Erfolg. Vielleicht könnt ihr mir eine kleine Hilfestellung geben damit ich weiterkomme.

Gruss John

//YWROBOT
//Compatible with the Arduino IDE 1.0
//Library version:1.1
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,16,2); // set the LCD address to 0x27 for a 16 chars and 2 line display

void setup()
{
lcd.init(); // initialize the lcd

// Print a message to the LCD.
lcd.backlight();
lcd.setCursor(0,0);
lcd.print(“Hello, !”);
lcd.setCursor(0,1);
lcd.print(“Ywrobot”);

}

void loop()
{
}

Dann schreibe uns doch mal, was für ein Display du verwendest. Poste bitte einen Link deines Displays.

Vielen Dank für die Antwort, Sorry ich vergaß:

http://arduino-info.wikispaces.com/LCD-Blue-I2C#v1

Denke das es dieses ist

I2C LCD DISPLAY VERSION 1

gekauft bei

http://www.ebay.de/itm/272157230192

Bei mir funktioniert der folgende Kode auf einem Nano ohne Probleme oder Wiederholungen.

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2);  // set the LCD address to 0x27 for a 16 chars and 2 line display

void setup()
{
  lcd.init();                      // initialize the lcd
  lcd.backlight();
  lcd.setCursor(0, 0);
  lcd.print("1234567890123456");
  lcd.setCursor(0, 1);
  lcd.print("abcdefghijklmnop");
}
void loop() {}

Johnny-sh:
http://arduino-info.wikispaces.com/LCD-Blue-I2C#v1

Ich weiß jetzt nicht welche Library du verwendest, aber entsprechend deinem Link musst du das LCD so deklarieren:

#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); 

void setup()   
{
  lcd.begin(16,2); 
}

Das ist von deiner Library abhängig.

Danke für die Antworten,

egal welche Library ich verwende je nach Code sieht es so oder so ähnlich aus.

https://1drv.ms/f/s!AuRcUdDoHopKiJwe_wB35i3xdmwIQw

//YWROBOT
//Compatible with the Arduino IDE 1.0
//Library version:1.1
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,16,2); // set the LCD address to 0x27 for a 16 chars and 2 line display

void setup()
{
lcd.init(); // initialize the lcd
lcd.init();
// Print a message to the LCD.
lcd.backlight();
lcd.setCursor(0,0);
lcd.print(“Hello, world!”);
lcd.setCursor(0,1);
lcd.print(“Ywrobot Arduino!”);
//lcd.setCursor(0,2);
//lcd.print(“Arduino LCM IIC 2004”);
//lcd.setCursor(2,3);
//lcd.print(“Power By Ec-yuan!”);
}

void loop()
{
}

Dann schreibe doch mal, welche Library du verwendest. Poste einen Link.

Dein gezeigter Sketch sieht in der Deklaration wieder genau so aus wie zuvor.

Hast du mal mein Beispiel getestet?

Dieser Sketch

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27,16,2);  // set the LCD address to 0x27 for a 16 chars and 2 line display

void setup()
{
  lcd.init();                      // initialize the lcd
 
  // Print a message to the LCD.
  lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("Hello, Johnny!");
  lcd.setCursor(0,1);
  lcd.print("Ywrobot");
 }

void loop(){}

erzeugt diese Anzeige:

HalloJohnny.png

habe diese aktuell benutzt:

https://bitbucket.org/fmalpartida/new-liquidcrystal/downloads

die 1.3.4

Bei der Bibliothek mußt Du die Initialisierung wie in #4 machen!

Johnny-sh: habe diese aktuell benutzt:

https://bitbucket.org/fmalpartida/new-liquidcrystal/downloads

die 1.3.4

Wie agmue schon schrieb, warum machst du nicht das, was man dir vorschlägt?

Hab ich ja,

#include <LiquidCrystal_I2C.h>
#include <Wire.h>

LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);

void setup()
{
lcd.begin(16,2);
lcd.backlight();
lcd.setCursor(0,0);
lcd.print(“Hello, world!”);
lcd.setCursor(0,1);
lcd.print(“Ywrobot Arduino!”);

}
void loop(){}

kommt das bei raus

https://1drv.ms/i/s!AuRcUdDoHopKiJwhEDfWSsMcz8thXw

#include <LiquidCrystal_I2C.h>
#include <Wire.h>

LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);

void setup()
{
lcd.begin(16,2);
lcd.backlight();
lcd.setCursor(0,0);
lcd.print(“Hello”);
lcd.setCursor(0,1);
lcd.print(“Ywrobot”);

}
void loop(){}

und dabei das

https://1drv.ms/i/s!AuRcUdDoHopKiJwjxuopFTC3mWndlA

Würdest du bitte Fehlermeldungen oder Bilder hier im Forum posten. Diese Seiten kann ich nicht öffnen, Sicherheitshinweis.

OK, ich habe jetzt einen anderen Browser genommen. Dennoch ist es besser Bilder direkt hier zu posten, dann bleiben die am Thread. Also bitte zukünftig direkt posten.

Da du es mit den bei uns funktionierenden Libraries getestet hast, muss ein defekt vorliegen.

Ich vermute dein Display/Adapter ist defekt oder der Adapter (Zusatzplatine) ist nicht richtig verlötet.

vielen Dank für die Antwort, kurzer Blick uns siehe da.... I2C Platinenkontakt SCL mit LCD Widerstand R5 hatte Kontakt. Habe Kontakt unterbrochen aber denke irreparabler Schaden. Naja muss wohl ein neues her. Eine Frage hab ich noch zum Abschluss. Ist es möglich, vorrausgesetzt das LCD ist noch OK das I2C Modul auszulöten und das LCD ich glaube Serial zu verwenden ?

Gruß und schönen Abend

Johnny-sh: vielen Dank für die Antwort, kurzer Blick uns siehe da.... I2C Platinenkontakt SCL mit LCD Widerstand R5 hatte Kontakt. Habe Kontakt unterbrochen aber denke irreparabler Schaden. Naja muss wohl ein neues her. Eine Frage hab ich noch zum Abschluss. Ist es möglich, vorrausgesetzt das LCD ist noch OK das I2C Modul auszulöten und das LCD ich glaube Serial zu verwenden ?

Na, Hardwarefehler ist immer ärgerlich.

Ja, du kannst das Display direkt anschließen, ist aber parallel. Mit 4 oder 8 Bit, heißt auch du brauchst die entsprechenden Leitungen zum Arduino.

Oder du besorgst dir einen neuen Adapter, gibt es für ca. 1 €, z.B. hier.

Könntest du das Display nicht reklamieren?