top of page

LE MODULE BARGRAPH

Le module bargraph comporte 8 led vertes, 1 jaune et 1 rouge pilotées par un contrôleur de led MY9221 permettant de câbler plusieurs modules en cascade. Nous pouvons ainsi afficher le niveau de tension d'une entrée analogique.

Ce module doit être relié à un connecteur numérique de la base et les deux broches correspondantes de l'Arduino sont utilisées.

La bibliothèque gérant ce module est téléchargeable ici et ses principales fonctions sont :

  • Grove_LED_Bar bargraph(CLK, donnée, sens)  où CLK représente la broche du signal d'horloge, donnée la broche du signal de données et sens, le sens d'allumage des led.

       Orientation peut prendre les valeurs 0 (du vert vers le rouge) ou 1 (du rouge vers le vert).

       Cette fonction permet de créer l'objet.

  • bargraph.begin() initialise l'objet.

  • bargraph.setGreenToRed(sens) où sens représente le sens d'allumage des led (sens=0 allumage du vert vers le rouge et sens=1 allumage du rouge vers le vert). Cette fonction permet de modifier le sens d'allumage des led.

  • bargraph.setLevel(niveau) où niveau représente le niveau à afficher. Cette fonction permet d'allumer toutes les led jusqu'à celle représentant

  • bargraph.setBits(valeur) où valeur représente la valeur des led à allumer. Cette fonction permet d'activer l'allumage ou l'extinction des led.

Exemple :

Nous souhaitons allumer les led du bargraph du rouge vers le vert avec une pause de 300 ms entre chaque led puis de revenir dans l'autre sens.

Liste du matériel :

Câblage :

Module "Grove"

Module bargraph

Connecteur Base

D2

Programme :

/* Bargraph_Grove est un programme qui allume successivement les led d'un bargraph dans un sens puis dans l'autre */

#include <Grove_LED_Bar.h>                                   // appel de la bibliothèque
              
#define CLK 3                                                             // affectation des broches  
#define DATA 2
#define sens 0

Grove_LED_Bar bargraph(CLK, DATA, sens);         // création de l'objet bargraph

void setup()
{
   bargraph.begin();
}

void loop()
{
  for (int i = 0; i <= 10; i++)                                       // on allume les led une par une en commençant par la rouge
  {
    bargraph.setLevel(i);
    delay(300);
  }
  bargraph.setLevel(0);                                            // on éteint les led
  bargraph.setGreenToRed(1);                                // on change de direction
  for (int i = 0; i <= 10; i++)                                      // on allume les led une par une en commençant par les vertes
  {
    bargraph.setLevel(i);
    delay(300);
  }
  bargraph.setLevel(0);                                           // on éteint les led
  bargraph.setGreenToRed(0);                               // on change de direction
}

bottom of page