INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
2 LCDs und eins geht nur
07.06.2015, 13:28
Beitrag #1
2 LCDs und eins geht nur
einen schonen Sontag,

Wieder habe ich mal ein Problem woch ich mir schon 2 tage die Harre ausreise.

hatte am freitag meine I2C Shields in der post gehabt und diese auch schön verlötet und angeschlossen.
Der chipsatz ist der "PCF8547T" der das eigendliche problem nicht ist, nach dem ich dann die adressen rausbekommen habe (0x27 und 0x26( nach brücke löten )) wollte ich beide auch ansteuern.

Nach dem Umgraben von Familie Google habe ich das eine oder andere ausprobiert
Leider bekomme ich das 2te LCD nicht angesteuert oder ich mache wie das üblich ist einen fehler

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

LiquidCrystal_I2C lcd1(0x26,20,4);  // set the LCD address to 0x20(Cooperate with 3 short circuit caps) for a 16 chars and 2 line display
LiquidCrystal_I2C lcd2(0x27,20,4);  // set the LCD address to 0x20(Cooperate with 3 short circuit caps) for a 16 chars and 2 line display

void setup(){
  
  lcd1.init();                      // initialize the lcd
  lcd1.backlight();
  
  lcd1.home();
  
  lcd1.setCursor(4, 0);
  lcd1.print("test1");
  lcd1.setCursor(0, 1);
  lcd1.print("test2");
  lcd1.setCursor(1, 2);
  lcd1.print("test3");
  lcd1.setCursor(2, 3);
  lcd1.print("test4");
  while(1);

  lcd2.init();                      // initialize the lcd
  lcd2.backlight();
  
  lcd2.home();
  
  lcd2.setCursor(4, 0);
  lcd2.print("test5");
  lcd2.setCursor(0, 1);
  lcd2.print("test6");
  lcd2.setCursor(1, 2);
  lcd2.print("test7");
  lcd2.setCursor(2, 3);
  lcd2.print("test8");
  while(1);



}

int backlightState1 = LOW;
int backlightState2 = LOW;
long previousMillis = 0;
long interval = 1000;
  
void loop(){
  
  unsigned long currentMillis = millis();

  if(currentMillis - previousMillis > interval) {
    previousMillis = currentMillis;  

    if (backlightState1 == LOW)
      backlightState1 = HIGH;
    else
      backlightState1 = LOW;

    if(backlightState1 == HIGH)  lcd1.backlight();
    else lcd1.noBacklight();
  }



  if(currentMillis - previousMillis > interval) {
    previousMillis = currentMillis;  

    if (backlightState2 == LOW)
      backlightState2 = HIGH;
    else
      backlightState2 = LOW;

    if(backlightState2 == HIGH)  lcd2.backlight();
    else lcd2.noBacklight();
  }


}


Hat jemand ein Rat ?

danke schon mal im vorraus
Thomas
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.06.2015, 13:59
Beitrag #2
RE: 2 LCDs und eins geht nur
setze beide auf eine Adresse und teste. Sind beide I.O.

Nicht jeder Neuling in einem Forum hat keine Ahnung über die Materie!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.06.2015, 14:05
Beitrag #3
RE: 2 LCDs und eins geht nur
Hallo Fraju

Ja sind sie

waren beide im Urzustand auf 0x27 und haben beide was angezeigt
selbst wenn ich

LiquidCrystal_I2C lcd1(0x26,20,4);
LiquidCrystal_I2C lcd2(0x27,20,4);
in
LiquidCrystal_I2C lcd1(0x27,20,4);
LiquidCrystal_I2C lcd2(0x26,20,4);
tausche geht das auch

Gruss Thomas
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.06.2015, 14:08
Beitrag #4
RE: 2 LCDs und eins geht nur
Welches LCD zeigt in deinen Prog was an(Adresse) und das andere nichts?

Nicht jeder Neuling in einem Forum hat keine Ahnung über die Materie!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.06.2015, 14:12
Beitrag #5
RE: 2 LCDs und eins geht nur
alles was als lcd2 ausgegeben werden soll das wird nicht angezeigt
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.06.2015, 14:17
Beitrag #6
RE: 2 LCDs und eins geht nur
Kommentiere mal alles mit LCD1 aus.
Dann muss LCD2 anzeigen.

Nicht jeder Neuling in einem Forum hat keine Ahnung über die Materie!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.06.2015, 14:23
Beitrag #7
RE: 2 LCDs und eins geht nur
Macht er aber wieso nicht test 1- 4 auf LCD1 und 5 -8 auf LCD 2 ¿

muss ich 2 loopschleifen setzen ?

danke schon mal
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
07.06.2015, 14:40
Beitrag #8
RE: 2 LCDs und eins geht nur
Auf die schnelle
Code:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>

void setup(){
  
LiquidCrystal_I2C lcd1(0x26,20,4);  // set the LCD address to 0x20(Cooperate with

  lcd1.init();                      // initialize the lcd
  lcd1.backlight();
  
  lcd1.home();
  
  lcd1.setCursor(4, 0);
  lcd1.print("test1");
  lcd1.setCursor(0, 1);
  lcd1.print("test2");
  lcd1.setCursor(1, 2);
  lcd1.print("test3");
  lcd1.setCursor(2, 3);
  lcd1.print("test4");
  while(1);
LiquidCrystal_I2C lcd2(0x27,20,4);  // set the LCD address to 0x20(Cooperate with

  lcd2.init();                      // initialize the lcd
  lcd2.backlight();

  lcd2.home();
  
  lcd2.setCursor(4, 0);
  lcd2.print("test5");
  lcd2.setCursor(0, 1);
  lcd2.print("test6");
  lcd2.setCursor(1, 2);
  lcd2.print("test7");
  lcd2.setCursor(2, 3);
  lcd2.print("test8");
  while(1);



}

int backlightState1 = LOW;
int backlightState2 = LOW;
long previousMillis = 0;
long interval = 1000;
  
void loop(){
  LiquidCrystal_I2C lcd1(0x27,20,4);  // set the LCD address to 0x20(Cooperate wi

  unsigned long currentMillis = millis();

  if(currentMillis - previousMillis > interval) {
    previousMillis = currentMillis;  

    if (backlightState1 == LOW)
      backlightState1 = HIGH;
    else
      backlightState1 = LOW;

    if(backlightState1 == HIGH)  lcd1.backlight();
    else lcd1.noBacklight();
  }

LiquidCrystal_I2C lcd2(0x27,20,4);  // set the LCD address to 0x20(Cooperate with


  if(currentMillis - previousMillis > interval) {
    previousMillis = currentMillis;  

    if (backlightState2 == LOW)
      backlightState2 = HIGH;
    else
      backlightState2 = LOW;

    if(backlightState2 == HIGH)  lcd2.backlight();
    else lcd2.noBacklight();
  }


}

Zeigt kein Fehler ,sonst nicht getestet.
Versuchs mal

Nicht jeder Neuling in einem Forum hat keine Ahnung über die Materie!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
Lightbulb Wie geht das? :) Mischa 4 917 02.06.2016 10:38
Letzter Beitrag: SkobyMobil
  Analoges Signal Eins-zu-Eins übertragen Stadtbilderklaerer 5 2.852 02.03.2014 18:41
Letzter Beitrag: Stadtbilderklaerer

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste