Files
Chromacase/scorometer/old/leds.py
2023-01-03 15:27:36 +09:00

57 lines
1.1 KiB
Python
Executable File

#!/usr/bin/python3
import board
import neopixel
import time
import sys
import asyncio
colorToFill = (0, 0, 0)
pixels = neopixel.NeoPIxel(board.D18, 20, brightness=0.01)
notePixels = { 'si': [0, 1],
'la#': [2, 3],
'la': [4, 5],
'sol#':[6],
'sol':[7, 8, 9],
'fa#':[10],
'fa':[11, 12, 13],
'mi':[14, 15, 16],
're#':[17],
're':[18, 19],
'do#':[],
'do':[]}
def playNote(color, secondsToStay, pixelsToFill):
for pixelIndex in pixelsToFill:
pixels[pixelIndex] = color
time.sleep(secondsToStay)
def launchMusic(noteList):
pixels.fill(0,0,0)
pixels.write()
for notes, tempo in noteList:
for note in notes:
playNote((255, 0, 0), tempo, notePixels[note.lower()])
pixels.fill(colorToFill)
pixels.write()
music = [
(['sol'], 1),
(['sol'], 1),
(['sol'], 1),
(['re#'], 1),
(['la#'], 0.5),
(['sol'], 0.5),
(['re#'], 1),
(['la#'], 0.5),
]
launchMusic(music)