Arduino Forum

International => Français => Tutoriels et cours => Topic started by: manghao on Jul 09, 2017, 07:51 pm

Title: Transformer un écran LDC en écran LCD I²C
Post by: manghao on Jul 09, 2017, 07:51 pm
Bonjour,
aujourd'hui nouveau tutoriel de ma part après un long moment d'absence sur le forum et dans le monde de l'Arduino.

Il existe déjà des écrans LCD I²C pour arduino, mais c'est plus drôle et intéressant quand c'est nous qui faisons !

Ce tutoriel a pour but de transformer un écran LCD en écran LDC I²C. Pourquoi faire ça ? Et bien, si vous avez un écran LCD vous savez qu'il y a énormément de broches à câbler, ça prend donc plusieurs E/S de la carte, si vous avez une Nano ou une carte de ce type, il y a moins de broches que sur les autres :).

Le principe de l'I²C ne sera pas expliqué ici.

L'I²C permet de n'avoir que 2 E/S d'utilisées, il faut câbler les pins de l'écran au PCF8574 mais la finalité a pour but de libérer des E/S sur la carte.

Pour ce faire, nous utiliserons ici un PCF8574 qui nous permet de faire de l'I²C.

Vous trouverez ci-dessous le schéma de câblage de l'écran sur le PCF8574 et du PCF8574 à l'Arduino :
(https://img15.hostingpics.net/pics/891942LCDI2Cschma.png)


Voici un tableau détaillant les pins à relier :
(https://img15.hostingpics.net/pics/380656Tableaudecblage.png)


Pour le code, c'est la que c'est simple :)

Il faut utiliser les bibliothèques:
Code: [Select]

- [url=https://github.com/fdebrabander/Arduino-LiquidCrystal-I2C-library]LiquidCrystal_I2C[/url]
- Wire


Nous avons donc ce code :
Code: [Select]

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


Il faut maintenant initialiser l'adresse de l'écran donc l'adresse du PCF8574 et les dimensions de l'écran :
Code: [Select]

// 0x20 : Adresse du PCF8574
// 20 : colonnes de l'écran
// 4 : lignes de l'écran
LiquidCrystal_I2C lcd(0x20, 20, 4);


A l'aide de la fonction setup nous allons initialiser l'écran :
Code: [Select]

void setup() {
  // Initialisation de l'écran
  lcd.begin();

  // Affichage d'un texte à l'initialisation
  lcd.print("LCD I2C avec PCF8574");

  // Délais en fin d'initialisation de la carte
  delay(100);
}


Pour afficher du texte sur l'écran LCD maintenant en I²C utilise les mêmes fonctions qu'un écran LCD classique, donc setCursor et print, exemple :
Code: [Select]

void loop() {
  lcd.setCursor(0, 0);
  lcd.print("Test d'affichage sur");
  lcd.setCursor(0, 1);
  lcd.print("l'afficheur LCD en");
  lcd.setCursor(0, 2);
  lcd.print("I2C avec un PCF8574");
}


Voici le code du programme au complet :
Code: [Select]

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

LiquidCrystal_I2C lcd(0x20, 20, 4);

void setup() {
  lcd.begin();
  lcd.print("LCD I2C avec PCF8574");
  delay(100);
}

void loop() {
  lcd.setCursor(0, 0);
  lcd.print("Test d'affichage sur");
  lcd.setCursor(0, 1);
  lcd.print("l'afficheur LCD en");
  lcd.setCursor(0, 2);
  lcd.print("I2C avec un PCF8574");
}


Voilà le tutoriel est fini, j'espère qu'il vous sera utile.

Cordialement Manghao.
Title: Re: Transformer un écran LDC en écran LCD I²C
Post by: Col68 on Aug 19, 2017, 10:40 pm
Bonjour, je vous remercie pour chaque seconde passé afin d'éclairer les utilisateurs Arduino, étant nouveau et novice je garde ce tuto en favoris, mon projet est justement d'utiliser un écran shield à bouton avec un funduino uno r3 afin de gérer la température dans un frigo d'affinage en utilisant dht11 et module 2 relais ou canaux, merci encore.
Title: Re: Transformer un écran LDC en écran LCD I²C
Post by: hehu on Oct 03, 2018, 06:58 pm
Bonjour,

Je n'arrive pas à ouvrir vos photo, serai t il possible de les remettre ou me les adresser par courriel .

xxxxxxxxx

Merci
Amicalement



Edit de JFS : Adresse mail supprimée par JFS
Title: Re: Transformer un écran LDC en écran LCD I²C
Post by: 68tjs on Oct 03, 2018, 07:20 pm
Probablement que les photos étaient hébergées sur un site qui les a purgé.

Méthode à suivre :
1) placer les photos en pièce jointe
faire un Preview pour faire apparaitre le menu "Attachments"
choisir les photos
poster le message -> les photos sont maintenant sur le serveur arduino

2) survoler le lien de chaque photo à la souris et copier son adresse.
3) ouvrir le message en édition et utiliser l'icone "Ecran" à gauche de la "chaine"
y copier l'adresse de la photo

Recommencer autant de fois qu'il le faut.

@hehu  : édite vite ton post et supprime ton adresse email , ce que tu as fait est super dangereux.
Title: Re: Transformer un écran LDC en écran LCD I²C
Post by: hehu on Oct 05, 2018, 05:54 pm
Bonjour,
Merci,  mais les photo son illisible.

Amicalement
Title: Re: Transformer un écran LDC en écran LCD I²C
Post by: 68tjs on Oct 05, 2018, 06:32 pm
Non pour moi elles ont  disparu dans les grands ménages des sites où soit disant on peut déposer des photos.