Lecture d'une trame Néopixel WS8212

Objectif

La communication des informations est souvent abstraite lorsqu'elle est traitée en AD. le but de ce TP est de visualiser en manipulant des composants pour améliorer votre compréhension du fonctionnement de la transmission d'information.

Dans cette expérimentation, vous réaliserez le pilotage d'un stick 10 LED avec un microcontrôleur ESP

Les trames de pilotage sont envoyées à l'ensemble des leds.

Chaque LED récupère l'information qui lui est destinée

On cherche ici à visualiser le signal transmit au module Néopixel

Voir aide oscilloscope, en utilisant le mode unique

Méthode

  1. Mettre hors tension la carte (débrancher la prise USB du PC)

  2. Brancher la masse de la voie 1 sur le GND

  3. Brancher la voie CH1 sur la broche 5

    Brancher la prise USB sur le PC

  4. Charger le programme ci-dessous dans l'ESP

1
# Programme essai néopixel
2
import machine, neopixel, time
3
# importation des bibliothèques de l'ESP, néopixel, temporisation
4
n = 3 # nombre de led du stick
5
p = 5 # n° broche sur laquelle on branche le stick
6
np = neopixel.NeoPixel(machine.Pin(p), n)
7
# np sera l'objet néopixel correspondant à la broche 5 avec 3 LEDs dans cet exemple
8
9
#allumer la première led en vert(faible intensité)
10
np[0] = (0, 25, 0) # réglage à partir d'une liste
11
np.write() # envoie du pilotage néopixel
12
print ("vert")
13
time.sleep(1)
14
15
#allumer la deuxième led en bleu(faible intensité)
16
np[1] = (0, 0, 25)
17
np.write()
18
print ("bleu")
19
time.sleep(1)
20
21
#allumer la deuxième led en rouge(forte intensité)
22
np[1] = (255, 0, 0)
23
np.write()
24
print ("rouge2")
25
time.sleep(1)
26
27
#allumer la première led en rouge(faible intensité)
28
np[0] = (25, 0, 0)
29
np.write()
30
print ("rouge1")
31
time.sleep(1)
32

Q1. Compléter le document réponse pour la partie câblage