57 lines
1.3 KiB
Python
Executable File
57 lines
1.3 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')
|
|
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')
|
|
|
|
# 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()
|
|
|
|
# Zustand merken, und nur "neu" starten, wenn sich etwas von 0 auf 1 veraendert hat.
|
|
|
|
if rcv[0] & ( 1 << 2 ) :
|
|
if not oldrcv[0] & ( 1 << 2 ):
|
|
print("1");
|
|
SoundE.stop()
|
|
SoundE.play()
|
|
else:
|
|
SoundE.stop()
|
|
rcvstate0 = False
|
|
|
|
if rcv[0] & ( 1 << 1 ) :
|
|
if not oldrcv[0] & ( 1 << 1 ):
|
|
print("1");
|
|
SoundD.stop()
|
|
SoundD.play()
|
|
else:
|
|
SoundD.stop()
|
|
rcvstate0 = False
|
|
|
|
if rcv[0] & ( 1 << 0 ) :
|
|
if not oldrcv[0] & ( 1 << 0 ):
|
|
print("0");
|
|
SoundC.stop()
|
|
SoundC.play()
|
|
else:
|
|
SoundC.stop()
|
|
|
|
oldrcv = rcv
|