Afficheur alphanumérique I2C

Par rapport au afficheurs alphanumériques vus précédemment le mode de connexion est grandement simplifié.

Ils nécessitent uniquement l'activation du mode bus I2C (les broches A4 et A5 ne sont alors plus disponibles en tant qu’entrée analogique). Dans ce mode, en utilisant seulement 2 broches de l'Arduino, il est facile de connecter plusieurs afficheurs, des capteurs etc...

De fait, l'électronique des module est plus complexe, mais ceci a permis de rajouter quelques fonctionnalités ( affichage ou rétroéclairage en couleur... )

MéthodeUtilisation d'un afficheur alphanumérique en mode I2C

Dans ce cas la mis en œuvre est très simple.

Il faut relier le connecteur (type grove) au bus I2C de la carte Arduino, pour cela il existe des cordons spécifiques avec des longueurs comprises entre 5 et 50 cm.

Certain constructeur propose des cartes compatible Arduino équipées d'un connecteur 'grove' pour le le bus I2C (Seeeduino par exemple)

La carte Arduino Uno ne disposant pas de cette connectique il faudra utiliser un shield de connexion grove et relier le cordon à un des connecteurs notés I2C

Configuration et initialisation de l'afficheur

Dans ce mode il n'existe pas de bibliothèque standard pour gérer l'afficheur, il faudra par conséquent utiliser la bibliothèque fourni par le fabriquant du module d'affichage.

Il nous faut la bibliothèque : lcd rgb .... : Vous pouvez vous aider avec la vidéo suivante.

  1. Ouvrir le gestionnaire de bibliothèque : Croquis \ Inclure une bibliothèque \ gérer les bibliothèques

  2. rechercher ' grove lcd rgb'

  3. Si la bibliothèque est notée 'INSTALLED' passé à la suite ,sinon installer la bibliothèque Grove

Vous trouverez des exemple de programme dans :Fichier --> Exemples ...

Pour utiliser cette bibliothèque, il est nécessaire :

  • d'ajouter au début du programme les directives:

    • #include <Wire.h>

    puis :

    • #include <rgb_lcd.h>

  • de créer l'afficheur (ce sera un objet appartenant à la classe rgb_lcd) , pour cela il faut lui donner un nom (pas d'autres paramètres).

    ex : rgb_lcd monAfficheur ; va créer l'objet 'monAfficheur (appartenant à la classe rgb_lcd)

    cette ligne est à écrire à la suite de la précédente.

  • d'initialiser l'afficheur avec la méthode 'begin' en indiquant le nombre de caractère par ligne et le nombre de ligne disponibles.

    ex ; monAfficheur.begin(16, 2); va initialiser l'objet monAfficheur en mode 2 lignes de 16 caractères

    cette ligne est à écrire dans la fonction setup() du programme.

Méthodes utilisables pour les objets de la classe rgb_lcd :

  • On y retrouve les méthodes principales déja vu:clear(),home(),setCursor(),print(),write()

  • Ainsi que des méthodes moins courante (qui existe aussi sur les modèles alphanumériques //) : noDisplay(), display(), noBlink(), blink(), noCursor(), cursor(), scrollDisplayLeft(), scrollDisplayRight(), leftToRight(), rightToLeft(), autoscroll(), noAutoscroll(),createChar(). (ces méthodes sont décrites dans "aide / Référence.-> libraries page -> LiquidCrystal")

  • Et des méhtodes spécifiques :

    • setRGB(r, v, b) --> permet de choisir la couleur du fond de l'écran avec pour r,v,b (pour rouge,vert, bleu) des valeurs comprises entre 0 et 255.

    • blinkLED() -->permet de faire clignoter le rétroéclairage de l'écran

    • noBlinkLED()-->arrête le clignotement du rétroéclairage.

Une documentation est disponible sure le site seeedstudio , ainsi que de nombreux exemples dans : Fichiers \ Exemple \Grove_LCD_RGB_Backlight....