samedi 20 juin 2015

Arduino LCD 1602 I2C Funduino - Configuration Installation et Test du LCD Arduino 1602

Arduino LCD I2C 1602 Funduino


Dans ce tutoriel je vais vous présenter l'écran LCD Arduino1602 Funduino, c'est un module que j'ai acheté sur le site aliexpress.com et j'ai eu  beaucoup de mal à le faire fonctionner sur ma carte Arduino MEGA2560.

C'est pourquoi j'ai décider de mettre en place ce tuto afin d'aider les personnes qui pourraient encore chercher à configurer cet écran Arduino LCD 1602 Funduino.

Pour réaliser ce montage il va vous falloir :

- Une carte Arduino MEGA2560
- Un LCD 1602 Funduino
- Des câbles Dupont Male/Femelle
- Un Câble usb pour connecter au PC

Voici l'écran LCD 1602 Funduino dont je vous parle :

Arduino Lcd I2C 1602 - Arduino Funduino Tuto - Lcd Arduino I2c
Lcd Arduino I2c - Tuto installation et configuration Arduino LCD I2C Funduino




Maintenant passons au branchement du LCD 1602 à la carte de programmation Arduino MEGA.

Sur le module 1602 nous avons les ports, SDA, SCL, GND et VCC.

Sur la carte Arduino vous allez brancher le VCC au 5V et le GND au GND, jusque la rien de bien compliquer, c'est pour le SDA et le SCL que ca peut s'avérer plus difficile à comprendre.

Dans un tutoriel en anglais j'ai vu que cette personne branche les câbles de cette façon :

- SDA ==> A4
- SCL ==> A5

Dans mon cas j'ai du connecter le SDA au SDA et le SCL au SCL de ma carte Arduino alors faites attention à vérifier vos branchements avant de modifier des lignes de code.

Afin de vérifier si votre écran LCD 1602 est bien détecter par votre carte Arduino vous pouvez charger le programme Scanner_I2C.
Il  va vous permettre de savoir si votre écran est bien brancher et d'identifier l'adresse du lcd à modifier ou non dans le programme du LCD.


Voici un exemple pour que vous compreniez mieux ce que je veux dire :

Arduino I2C LCD
Branchement sur les pins A4 et A5 qui ne fonctionne pas (No I2C devices found)
Arduino Lcd I2C
Branchement sur les pins SDA et SCL, cela fonctionne et l'adresse du LCD 1602 est 0x27 ! (I2C device found at address 0x27)

Une fois que vous aurez réussis à brancher correctement votre LCD au Arduino il faudra installer la librairie disponible pour celui-ci :

 Librairie LiquidCrystal_I2C

Lorsque vous aurez installer cette librairie, chargez ce code et voyez si un Hello World s'affiche à l'écran.

//Test Ecran LCD 1602 Funduino

// Librairies

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

// Adresse de L'ecran LCD 1602 Funduino
LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);  // Set the LCD I2C address


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

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

  lcd.begin(16,2);         // initialize the lcd for 20 chars 4 lines and 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: CHAR, LINE) 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");  

lcd.setCursor(0,0);

}/*--(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 ) */

Voila j’espère vous avoir aider à faire fonctionner votre ecran Arduino LCD 1602 Funduino, si vous avez des questions n'hésitez à m'en faire part en laissant un commentaire et j'y répondrais au plus vite.

3 commentaires:

  1. Bonsoir,
    J'ai copié le code, après avoir installé la librairie, mais message d'erreur à l'instruction :
    LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); // Set the LCD I2C address :

    'positive' was not declared in this scope

    merci de me dépanner !

    RépondreSupprimer
    Réponses
    1. Avez vous bien installer la librairie du lcd fournie dans le tuto ?
      si vous utilisez une autre librairie cela ne fonctionnera pas !
      Merci de me tenir au courant si vous n'avez pas réussi a vous dépanner ;)

      Supprimer
  2. Bonjour,
    J'ai eu le même problème que Olivier j'ai donc refais les démarches mai voici ce les message d’erreur affiché :

    C:\Users\PC TEST\Documents\Arduino\libraries\LiquidCrystal_I2C\I2CIO.cpp:35:26: fatal error: ../Wire/Wire.h: No such file or directory

    #include <../Wire/Wire.h>

    ^

    compilation terminated.

    exit status 1
    Error compiling for board Arduino/Genuino Mega or Mega 2560.

    Une Idée ? Merci

    RépondreSupprimer