Я просто пытаюсь сделать эту действительно простую вещь, где я хочу воспроизвести два разных звуковых файла в зависимости от сенсорного датчика.Проблема, с которой я столкнулся на данный момент, заключается в том, что хотя датчик работает, программа не изменяет аудиофайл ... Итак, я сейчас не знаю, какая помощь?Заранее спасибо, Лола
import pygame
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)
GPIO.setup(7, GPIO.IN)
pygame.mixer.pre_init(44100, -16, 12, 512)
pygame.mixer.init()
pygame.init()
fastbeat = pygame.mixer.Sound('/home/pi/gpio-music-box/samples/fastbeat.ogg')
fastbeat.set_volume(.4);
slowbeat = pygame.mixer.Sound('/home/pi/gpio-music-box/samples/slowbeat.ogg')
slowbeat.set_volume(.4)
while True:
if(GPIO.input(7)): #interrupt pin is high
print ('touched')
fastbeat.play()
else: # Interupt pin is low
print ('not touched')
slowbeat.play()
Теперь я изменил свой код на:
import pygame
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)
GPIO.setup(7, GPIO.IN)
pygame.mixer.pre_init(44100, -16, 12, 512)
pygame.mixer.init()
pygame.init()
fastbeat = pygame.mixer.Sound('/home/pi/gpio-music-box/samples/fastbeat.ogg')
fastbeat.set_volume(.4);
slowbeat = pygame.mixer.Sound('/home/pi/gpio-music-box/samples/slowbeat.ogg')
slowbeat.set_volume(.4)
while True:
if(GPIO.input(7)): #interrupt pin is high
print ('touched')
slowbeat.stop()
fastbeat.play()
else: # Interupt pin is low
print ('not touched')
fastbeat.stop()
slowbeat.play()
, и он работает для меня, но есть другой вопрос, могу ли я изменить свою команду if-ifчтобы он проигрывал только быстрый удар, а затем снова переключался на медленный?
привет лола