#LED from apa102 import APA102 #BOUTON import RPi.GPIO as GPIO import time # Initialisation des LEDs num_leds = 12 led = APA102(num_led=num_leds) # Initialisation Bouton BUTTON = 17 GPIO.setmode(GPIO.BCM) GPIO.setup(BUTTON, GPIO.IN) etat = {'mute': False} ## LED def set_couleur(couleur): couleur = couleur.upper() # Dictionnaire des couleurs couleurs_rgb = { 'R': (255, 0, 0), # Rouge 'V': (0, 255, 0), # Vert 'B': (0, 0, 255), # Bleu 'J': (255, 255, 0), # Jaune 'VI': (128, 0, 128), # Violet 'RO': (255, 105, 180), # Rose 'O': (255, 165, 0), # Orange } rgb = couleurs_rgb.get(couleur, (0, 0, 0)) # Éteindre si couleur inconnue for i in range(num_leds): led.set_pixel(i, *rgb) led.show() def eteindre_led(): set_couleur("") # Couleur inconnue → éteint def cleanup_led(): led.cleanup() ##BOUTON # Bascule mute/unmute def toggle_mute(channel): etat['mute'] = not etat['mute'] if etat['mute']: set_couleur('VI') # Rouge = mute else: set_couleur('') # Vert = unmute # Event du bouton préssé GPIO.add_event_detect(BUTTON, GPIO.FALLING, callback=toggle_mute, bouncetime=300) try: while True: time.sleep(1) # Le programme tourne sans rien faire except KeyboardInterrupt: print("Nettoyage GPIO") cleanup_led() GPIO.cleanup()