Mise en oeuvre de modules Grove LED RGB chaînables

Ce tutoriel explique comment mettre en oeuvre trois modules Grove LED RGB chaînables avec MicroPython.

Matériel requis

  1. La carte NUCLEO-WB55
  2. Une carte d’extension de base Grove
  3. Trois modules Grove LED RGB chaînables
  4. Une carte X-NUCLEO IKS01A3

Le module Grove LED RGB chaînables :

Grove - RGB LCD

Crédit image : Seeed Studio

Objectifs de l’exercice

Connecter (en série) trois modules LED RGB chaînables et leur faire afficher dans cet ordre “bleu” (première LED), “blanc” (deuxième LED) et “rouge” (troisième LED).

Dans cet ordre …

  1. Connecter la carte Grove Base Shield pour Arduino sur la NUCLEO-WB55.
  2. Connecter la carte X-NUCLEO-IKS01A3 sur la carte NUCLEO-WB55.
  3. Construire et connecter la chaîne de modules selon la figure ci-dessous :


Grove - RGB LED chain


Le code MicroPython

Les scripts présentés ci-après sont disponibles dans la zone de téléchargement.

Copier la bibliothèque p9813.py dans le dossier PYBFLASH et le code suivant dans le fichier main.py situé également dans le dossier PYBFLASH :

# Objet du script : câbler ensemble trois modules Grove LED RGB chaînables
# et leur faire afficher dans cet ordre "bleu" (première LED), "blanc" 
# (deuxième LED) et "rouge" (troisième LED)

from machine import Pin # Pour gérer les entrées / sorties
import p9813 # Pour gérer les LED chaînables
from time import sleep # Pour temporiser

# Correspond au connecteur D7 du Grove base shield
pin_clk = Pin('D7', Pin.OUT) # Broche d'horloge
pin_data = Pin('D8', Pin.OUT) # Broche de données

# Nombre de modules LED RGB
num_led = 3

# Instanciation d'une chaîne de 3 modules LED RGB 
chain = p9813.P9813(pin_clk, pin_data, num_led)

# Eteint toutes les LED
chain.reset()

# Temporisation d'une seconde
sleep(1)

# Première LED en bleu
chain[0] = (0, 0, 255)

# Deuxième LED en blanc
chain[1] = (255, 255, 255)

# Troisième LED en rouge
chain[2] = (255, 0, 0)

# Applique les paramètres, allume les LED
chain.write()

# Change la couleur de toutes les LED en rouge
#chain.fill((0,0,255))
#chain.write()

Mise en oeuvre

Appuyez sur CTRL+D dans le terminal PuTTY. Si vous avez correctement suivi les indications les couleurs du drapeau français devraient s’afficher de gauche à droite sur la chaîne de modules.