bananenkeyboard/Pi/s.py

54 lines
1.9 KiB
Python
Executable File

#!/usr/bin/python3
import serial
import pygame
pygame.mixer.pre_init(buffer=32)
pygame.init()
pygame.mixer.quit()
pygame.mixer.init(buffer=32)
#SoundC = pygame.mixer.Sound('ogg/C3v16.ogg')
#SoundA = pygame.mixer.Sound('ogg/A3v16.ogg')
#SoundFF = pygame.mixer.Sound('ogg/F#3v16.ogg')
Sound = [pygame.mixer.Sound('guitar/guitar_C4_very-long_forte_normal.wav'),
pygame.mixer.Sound('guitar/guitar_D4_very-long_forte_normal.wav'),
pygame.mixer.Sound('guitar/guitar_E4_very-long_forte_normal.wav'),
pygame.mixer.Sound('guitar/guitar_F4_very-long_forte_normal.wav'),
pygame.mixer.Sound('guitar/guitar_G4_very-long_forte_normal.wav'),
pygame.mixer.Sound('guitar/guitar_A4_very-long_forte_normal.wav'),
pygame.mixer.Sound('guitar/guitar_H4_very-long_forte_normal.wav'),
pygame.mixer.Sound('guitar/guitar_C5_very-long_forte_normal.wav')
]
#SoundC = pygame.mixer.Sound('guitar/guitar_C4_very-long_forte_normal.wav')
#SoundD = pygame.mixer.Sound('guitar/guitar_D4_very-long_forte_normal.wav')
#SoundE = pygame.mixer.Sound('guitar/guitar_E4_very-long_forte_normal.wav')
#SoundF = pygame.mixer.Sound('guitar/guitar_F4_very-long_forte_normal.wav')
#SoundG = pygame.mixer.Sound('guitar/guitar_G4_very-long_forte_normal.wav')
#SoundA = pygame.mixer.Sound('guitar/guitar_A4_very-long_forte_normal.wav')
#SoundH = pygame.mixer.Sound('guitar/guitar_H4_very-long_forte_normal.wav')
#SoundC2 = pygame.mixer.Sound('guitar/guitar_C5_very-long_forte_normal.wav')
# port = serial.Serial("/dev/ttyS0", baudrate=115200, timeout=.001)
port = serial.Serial("/dev/ttyS0", baudrate=115200)
# port = serial.Serial("/dev/ttyAMA0", baudrate=115200)
oldrcv = port.read()
while True:
# rcv decodieren
rcv = port.read()
i=0
# Zustand merken, und nur "neu" starten, wenn sich etwas von 0 auf 1 veraendert hat.
for cs in Sound:
if rcv[0] & ( 1 << i ) :
if not oldrcv[0] & ( 1 << i ):
print(i)
cs.stop()
cs.play()
i+=1
else:
cs.stop()
rcvstate0 = False
oldrcv = rcv