LiquidCrystal_I2C ne fonctionne pas

Accueil Forums ESP8266 / ESP32 LiquidCrystal_I2C ne fonctionne pas

4 sujets de 1 à 4 (sur un total de 4)
  • Auteur
    Messages
  • #2895
    Rolf Ziegler
    Participant

    Bonjour à tous,

    J’ai reçu mon display avec le module I2C. Je l’ai branché comme suit:
    LCD GND -> ESP GND
    LCD VCC -> ESP Vin
    LCD SDA pin on -> ESP D2
    LCD SDL pin on -> ESP D1

    Utilisé la librairie LiquidCrystal_I2C.h

    La compilation se fait bien, juste un petit warning :

    WARNING: library LiquidCrystal_I2C claims to run on [avr] architecture(s) and may be incompatible with your current board which runs on [esp8266] architecture(s).

    L’ upload aussi fonctionne bien, le fond du display clignote, mais les textes ne s’affichent pas!
    J’ai joué sur le pot du contraste. Le problème ne semble pas venir de là!

    #include <ESP8266WiFi.h>
    #include <LiquidCrystal_I2C.h>

    // Adresse testée : 0x3F 0x27
    LiquidCrystal_I2C lcd(0x27, 16, 2);

    void setup() {
    lcd.init();
    }

    void loop() {
    delay(800);
    lcd.noBacklight();
    lcd.setCursor(0,0);
    lcd.print(« HELLO »);
    delay(800);
    lcd.backlight();
    lcd.setCursor(0,0);
    lcd.print(« LIGNE 1 »);
    lcd.setCursor(0,1);
    lcd.print(« LIGNE 2 »);
    delay(2500);
    }

    Ou y a t-il une erreur? Est-ce mon display qui est défectueux?
    Tout est dans Dropbox : MicroClub\LiquidCrystal_I2C\

    Salutations et de joyeuses fêtes à tous
    Otto

     

     

     

    #2896
    Rolf Ziegler
    Maître des clés

    Salut Otto,
    J’ai fais la même expérience!!  Comment as-tu alimenté ton circuit ? 3.3v  ne fonctionne pas, cet écran a besoins de 5v. Il faut donc un convertisseur pour les 2 lignes i2c. Je l’ai réalisé selon le plan suivant avec 2 transistors: https://plus.google.com/110064457081979999172/posts/WS3xjQ2rbXQ

     

    #2897
    Rolf Ziegler
    Participant

    Salut Rolf,

    Merci pour ton aide. J’ai trouvé cet exemple sur le web.
    https://www.losant.com/blog/how-to-connect-lcd-esp8266-nodemcu
    sur la pin Vin, j’ai 4.6v cela devrait être donc suffisant!
    J’ai recommandé un display avec interface arduino sur http://www.ebay.com/itm/252088343252.
    Dans mon cas j’ai soudé moi-même l’interface i2c un LCD 1602A!

     

    #2898
    Rolf Ziegler
    Maître des clés

    Otto,

    Pour moi cette source n’est pas sérieuse, on ne met pas de ligne i2c 5v sur une entrée i2c ESP 3.3v ce qui peut détruire le module ESP, à voir ou sont les pull-up, tu dois en avoir des 2 côtés, sur le LCD et sur le module ESP. Pour ce qui est du code, je n’arrive pas a compiler ton code car les guillemets ne sont pas justes. Corrections plus bas. Afficher Hello avec noBacklight() avant n’affiche rien, l’affichage fonctionne chez moi avec ton code mais seulement à partir de l’affichage « ligne 1 » et « ligne 2″. J’ai remplacé lcd.noBacklight() par lcd.backlight() et j’ai le le HELLO qui s’affiche également.

    Pour terminer, j’ai copié mon code sur notre dropbox. En principe les problèmes I2C sont liés à 2 problèmes:

    1. Pas de pull-up sur SDA et SCL ( je te conseille de dé-souder ceux qui sont côté 5v et de ne laisser que ceux côté 3.3v ce qui devrait fonctionner également.

    2. les lignes SCL et SDA sont croisées.

    Comme indiqué avant, ton code fonctionne chez moi avec les modifications ci-dessous (à l’adresse x20).

    Joyeux Noël
    Rolf

     

     

    lcd.noBacklight();

    lcd.print( » HELLO « );
    delay(800);
    lcd.backlight();
    lcd.setCursor(0,0);
    lcd.print( » LIGNE 1 « );
    lcd.setCursor(0,1);
    lcd.print( » LIGNE 2 « );

4 sujets de 1 à 4 (sur un total de 4)
  • Vous devez être connecté pour répondre à ce sujet.