Francisco Olguin, graphiste du Chili. Je fais mon dernier projet à mon université. En ce moment j'ai assigné des sons aux boutons en utilisant Python sur un raspberrypi 3. Voici le code que j'utilise.affecter plus d'une fonction à un bouton en utilisant Python
import RPi.GPIO as GPIO
import os
GPIO.setmode(GPIO.BCM)
GPIO.setup(4, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.setup(5, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.setup(6, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.setup(7, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.setup(8, GPIO.IN, pull_up_down=GPIO.PUD_UP)
while True:
input_state = GPIO.input(4)
if input_state == False:
print('Tutorial')
os.system('killall mpg123')
os.system('mpg123 -q audio1.mp3 &')
time.sleep(0.2)
input_state = GPIO.input(5)
if input_state == False:
print('I Regíon')
os.system('killall mpg123')
os.system('mpg123 -q audio2.mp3 &')
time.sleep(0.2)
input_state = GPIO.input(6)
if input_state == False:
print('II Regíon')
os.system('killall mpg123')
os.system('mpg123 -q audio3.mp3 &')
time.sleep(0.2)
input_state = GPIO.input(7)
if input_state == False:
print('XI Regíon')
os.system('killall mpg123')
os.system('mpg123 -q audio4.mp3 &')
time.sleep(0.2)
input_state = GPIO.input(8)
if input_state == False:
print('X Regíon')
os.system('killall mpg123')
os.system('mpg123 -q audio5.mp3 &')
time.sleep(0.2)
Ceci affecte 5 audios aux boutons qui sont lus lorsque vous les appuyez. De là tout est bien mais voici mon problème/question. J'ai 5 boutons avec des audios assignés, donc je veux savoir s'il est possible d'assigner 5 autres audios aux mêmes boutons en appuyant sur un autre bouton (j'espère que vous comprenez). Pour expliquer cela, j'ai cette image:
L'idée est que, en appuyant sur la touche « 1 », vous pouvez jouer les sons a1b1c1d1e1 (correspondant aux 5 touches attribuées aux sons) presssing le « 2 "bouton, vous pouvez jouer les sons a2b2c2d2e2 et ainsi de suite jusqu'à ce que le" 5 "bouton.
si quelqu'un sait d'une certaine façon d'être en mesure de le faire d'une manière « facile » serait génial (je ne sais pas beaucoup sur python autre que ce que je l'ai déjà fait)
Un grand merci à l'avance et désolé pour mon mauvais anglais
Vous pouvez passer une liste directement à la commande 'mpg123' pour lire les fichiers mp3 dans l'ordre. Y a-t-il un problème à le faire de cette façon? –
En outre, 'input_state' ne devrait-il pas être vrai si un bouton a été poussé pour cette broche ou est-ce que le fait de pousser votre bouton a d'autres effets secondaires sur d'autres broches d'entrée? –