[Résolu]erreur compilation LCD surement dû aux librairies

J'ai un problème lors de la compilation de mon code. J'importe une bibliothèque pour pouvoir utiliser un écran grove-lcd (#include "rgb_lcd.h" ), puis je le renomme (rgb_lcd ecran;). un message d'erreur apparait lors de la compilation:

Arduino : 1.8.12 (Windows Store 1.8.33.0) (Windows 10), Carte : "Arduino Uno"

In file included from C:\Users\QBourbon\Desktop\sketch_feb24a\sketch_feb24a.ino:2:0:

C:\Users\QBourbon\Documents\Arduino\libraries\Grove_LCD_RGB_Backlight-master/rgb_lcd.h:99:3: warning: 'setup()::rgb_lcd::rgb_lcd()' used but never defined

rgb_lcd();

^~~~~~~

C:\Users\QBourbon\AppData\Local\Temp\ccikQhtS.ltrans0.ltrans.o: In function `setup':

C:\Users\QBourbon\Desktop\sketch_feb24a/sketch_feb24a.ino:3: undefined reference to `setup::rgb_lcd::rgb_lcd()'

collect2.exe: error: ld returned 1 exit status

exit status 1
Erreur de compilation pour la carte Arduino Uno

Je ne comprend pas grand chose à ces message d'erreur. Pourrais t on m'aider?

Pas facile sans voir le code. Tu utilises la bibliothèque Grove_LCD_RGB_Backlight : as-tu suivi les instructions d’installation fournies ici ?

As-tu testé l’exemple “hello world” (disponible dans les exemples de la bibli ou dans la même page que plus haut) ?

J’importe une bibliothèque pour pouvoir utiliser un écran grove-lcd (#include “rgb_lcd.h” ), puis je le renomme (rgb_lcd ecran;).

Chez moi ça compile bien, sous réserve de bien changer tous les ‘lcd.’ en ‘ecran.’ :

#include <Wire.h>
#include "rgb_lcd.h"

rgb_lcd ecran;

const int colorR = 255;
const int colorG = 0;
const int colorB = 0;

void setup() 
{
    // set up the LCD's number of columns and rows:
    ecran.begin(16, 2);

    ecran.setRGB(colorR, colorG, colorB);

    // Print a message to the LCD.
    ecran.print("hello, world!");

    delay(1000);
}

void loop() 
{
    // set the cursor to column 0, line 1
    // (note: line 1 is the second row, since counting begins with 0):
    ecran.setCursor(0, 1);
    // print the number of seconds since reset:
    ecran.print(millis()/1000);

    delay(100);
}

Merci pour ta réponse, grâce à toi j ai trouver mon erreur. En effet j’ai oublier la ligne “#include <Wire.h>”. Je serais plus attentif avant de venir vous solliciter pour des broutilles.

Dans certaines bibliothèques LCD (genre la I2C) le wire.h est dejà inclus. Donc ce type d’erreur est facile à faire, mais un coup d’oeil au contenu de la bibliothèque te permet d’en etre sur.

Apres, le role d’une communauté c’est l’entraide, et pas de blamer donc pas de soucis. Ca m’arrive aussi de pas etre assez rigoureux :slight_smile: et puis quand on a la tete dans le guidon, des fois on voit pas des trucs qui sont pourtant evidents.