LCD 2004A (20x4) n'affiche rien

Bonjour à toutes et tous !

Je rencontre actuellement un soucis avec un écran LCD 20x4 de référence : https://www.amazon.fr/gp/product/B0723HMWHQ/ref=oh_aui_detailpage_o01_s00?ie=UTF8&psc=1

En gros le LCD s'allume mais il m'est impossible d'afficher quoique ce soit (aucun caractère visible).

J'ai essayé :

  • sur un arduino Uno en mettant le SDA sur le A4 et le SCL sur le A5 -> l'écran s'allume mais aucun affichage
  • sur un arduino Mega en mettant le SDA sur le 20 ou sur le SDA de la R3 et le SCL sur le 21 ou le SCL de la R3 -> l'écran s'allume mais aucun affichage
  • pour les deux arduino j'ai essayé les librairies issues d'ici : https://bitbucket.org/fmalpartida/new-liquidcrystal/downloads/ et d'autres issues de divers sites ainsi que l'officiel depuis le gestionnaire arduino -> rien n'y fait, aucun fichier exemple ne marche ! Au mieux j'ai l'écran qui s'allume, au pire il clignote ou ne s'allume pas.

Lors que je fais un scan de l'adresse j'obtiens cette dernière : 0x3F correspondant apparemment au chip PCF8574.

Quelqu'un aurait-il rencontré ce problème ou aurait une idée ? Apparemment c'est un soucis récurrent, mais la résolution du problème n'est jamais réellement explicitée...

Merci à toutes et tous !

En utilisant ce code par exemple avec la librairie NewliquidCrystal_1.3.5.zip :

/* YourDuino.com Example Software Sketch
 20 character 4 line I2C Display
 Backpack Interface labelled "YwRobot Arduino LCM1602 IIC V1"
 Connect Vcc and Ground, SDA to A4, SCL to A5 on Arduino
 terry@yourduino.com */

/*-----( Import needed libraries )-----*/
#include <Wire.h>  // Comes with Arduino IDE
// Get the LCD I2C Library here: 
// https://bitbucket.org/fmalpartida/new-liquidcrystal/downloads
// Move any other LCD libraries to another folder or delete them
// See Library "Docs" folder for possible commands etc.
#include <LiquidCrystal_I2C.h>

/*-----( Declare Constants )-----*/
/*-----( Declare objects )-----*/
// set the LCD address to 0x27 for a 20 chars 4 line display
// Set the pins on the I2C chip used for LCD connections:
//                    addr, en,rw,rs,d4,d5,d6,d7,bl,blpol
LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);  // Set the LCD I2C address


/*-----( Declare Variables )-----*/


void setup()   /*----( SETUP: RUNS ONCE )----*/
{
  Serial.begin(9600);  // Used to type in characters

  lcd.begin(20,4);         // initialize the lcd for 20 chars 4 lines, turn on backlight

// ------- Quick 3 blinks of backlight  -------------
  for(int i = 0; i< 3; i++)
  {
    lcd.backlight();
    delay(250);
    lcd.noBacklight();
    delay(250);
  }
  lcd.backlight(); // finish with backlight on  

//-------- Write characters on the display ------------------
  // NOTE: Cursor Position: Lines and Characters start at 0  
  lcd.setCursor(3,0); //Start at character 4 on line 0
  lcd.print("Hello, world!");
  delay(1000);
  lcd.setCursor(2,1);
  lcd.print("From YourDuino");
  delay(1000);  
  lcd.setCursor(0,2);
  lcd.print("20 by 4 Line Display");
  lcd.setCursor(0,3);
  delay(2000);   
  lcd.print("http://YourDuino.com");
  delay(8000);
  // Wait and then tell user they can start the Serial Monitor and type in characters to
  // Display. (Set Serial Monitor option to "No Line Ending")
  lcd.setCursor(0,0); //Start at character 0 on line 0
  lcd.print("Start Serial Monitor");
  lcd.setCursor(0,1);
  lcd.print("Type chars 2 display");  


}/*--(end setup )---*/


void loop()   /*----( LOOP: RUNS CONSTANTLY )----*/
{
  {
    // when characters arrive over the serial port...
    if (Serial.available()) {
      // wait a bit for the entire message to arrive
      delay(100);
      // clear the screen
      lcd.clear();
      // read all the available characters
      while (Serial.available() > 0) {
        // display each character to the LCD
        lcd.write(Serial.read());
      }
    }
  }

}/* --(end main loop )-- */


/* ( THE END ) */

Mon écran clignote 4 fois (allumé/éteint) puis se stabilise sur allumé mais sans caractères affichés.

Bonjour,

Chez moi cette librairie fonctionne très bien.

Bonjour,

Question bête, avez-vous « joué » avec le potentiomètre au dos de l'écran pour modifier le contraste ?
Si le contraste est au minimum, l'écran semble ne pas afficher de caractères alors qu'ils sont bien présents.

Cordialement.

hello
as tu passé un scan pour vérifier si l'adresse que tu donnes dans ton init lcd est la bonne?

Résolu, effectivement problème avec le potentiomètre (je l'ai à peine touché et paf ça c'est affiché)

MB_F_45:
Bonjour,

Question bête, avez-vous « joué » avec le potentiomètre au dos de l'écran pour modifier le contraste ?
Si le contraste est au minimum, l'écran semble ne pas afficher de caractères alors qu'ils sont bien présents.

Cordialement.