afficheur LCD 16X2

Bonjour tout le monde,

Ce petit post pour vous demander un petit coup de main sur un câblage pourtant simple :confused: :

aprés avoir réalisé mon câblage et tapé mon code mon afficheur affiche importe quoi (voir photo). Et voici mon code:

#include <LiquidCrystal.h>
LiquidCrystal lcd(10, 9, 5, 4, 3, 2);

void setup() 
{
 lcd.begin(16, 2);
 lcd.setCursor(0, 0);
 lcd.print("Mon LCD marche");
 lcd.setCursor(0, 1);
 lcd.print("bla bla bla"); 
}

void loop() 
{
 
}

Pour info j'ai refais mes câblage 20 fois au moins et même racheté un écran LCD identique en croyant que c'était celui ci qui fonctionnait mal.

Merci pour votre aide !

essayes avec RW piloté aussi par l'arduino ?

ou tout simplement avec RW au +5V plutot que la masse ?

merci de mettre ton code entre balise "code" !

Bonsoir,

Voici comment je cable mes LCD 1602 et 2004 :

RS ==> 8
E ==> 9
D4 ==> 5
D5 ==> 6
D6 ==> 7
D7 ==> 3
VSS ==> GND
VDD ==> +5v (pour les 20x4, +3.3v pour les 16x2)
VQ ==> R 2k (mais je vois que tu utilise un potar)
R/W ==> GND
A ==> +5v
K ==> GND

Suite à différents problèmes que j'ai eu à cause d'interférences de relais ou autres avec ces LCD qui peuvent afficher n'importe quoi, j'ajoute un condo 16v 2200µF sur le VIN et GND de la platine.

J'utilise toujours une alim externe pour les composants externes, et je couple les masses sur l'arduino.

Pour le code :

#include <LiquidCrystal.h>
LiquidCrystal lcd(8,9,5,6,7,3);

void setup(){
  Serial.begin(9600);
  lcd.begin(20,4);
  lcd.clear();
}

void loop(){
  lcd.setCursor(0,0);
  lcd.print("Hello World");
  lcd.setCursor(0,1);
  lcd.print("Test LCD");
}

Bon amusement avec ton écran :wink:

Aegnor1975 cette photo est pour toi !!!