Micropython-neotrellis-multi
MultiTrellis
MultiTrellis est une classe permettant de combiner plusieurs NeoTrellis en mosaïque/damier et de pouvoir accéder aux différents boutons/NeoPixels à partir d'un système de coordonnées X et Y commun.
L'exemple multitrellistest.py visible ci-dessous indique comment combiner plusieurs NeoTrellis.
Comme pour l'utilisation d'un NeoTrellis seul, le script une instance du bus I2C et les instances de NeoTrellis.
Une nuance cependant, les NeoTrellis sont répertoriés dans la variable trelli, une liste (un entrée par ligne) contenant des sous-listes (ayant un entrée NeoTrellis pour chaque colonne).
Chaque NeoTrellis est créé en précisant l'adresse de chaque dalle (Note: le paramètre False correspond au paramètre interrupt).
import time
from machine import I2C, Pin
from neotrellis import NeoTrellis
from neotrellis.multitrellis import MultiTrellis
i2c = I2C( 1, sda=Pin.board.GP6, scl=Pin.board.GP7 )
trelli = [
# 1iere ligne de 2 NeoTrellis de gauche à droite
[NeoTrellis(i2c, False, addr=0x2E), NeoTrellis(i2c, False, addr=0x2F)], # 2 colonnes
]
Une fois la structure des dalles définie, il est possible de créer une instance MultiTrellis.
La classe MultiTrellis expose une interface similaire à celle de NeoTrellis.
Chaque appel de méthode sur MultiTrellis est réparti entre les différentes instances NeoTrellis renseignées.
trellis = MultiTrellis(trelli)
trellis.brightness = 0.5
# Définition de couleurs
OFF = (0, 0, 0)
RED = (255, 0, 0)
YELLOW = (255, 150, 0)
GREEN = (0, 255, 0)
CYAN = (0, 255, 255)
BLUE = (0, 0, 255)
PURPLE = (180, 0, 255)
Comme pour les autres exemples, une fonction de rappel est associée à chaque bouton. La fonction de rappel fournie à MultiTrellis doit recevoir des paramètres supplémentaires ('
Traduction augmentée réalisée par Meurisse. D pour shop.MCHobby.be - Licence CC-BY-SA.