first commit see n say code
This commit is contained in:
parent
85e2c3e5f4
commit
73cc7791fe
1 changed files with 48 additions and 0 deletions
48
See_N_Say/code.py
Normal file
48
See_N_Say/code.py
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
# SPDX-FileCopyrightText: 2023 John Park for Adafruit Industries
|
||||
#
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
import os
|
||||
import audiocore
|
||||
import board
|
||||
import audiobusio
|
||||
import audiomixer
|
||||
from digitalio import DigitalInOut, Pull
|
||||
from adafruit_debouncer import Button
|
||||
|
||||
button_pins = (
|
||||
board.D2, board.D3, board.D4, board.D5,
|
||||
board.D6, board.D7, board.D8, board.D9,
|
||||
board.D10, board.MOSI, board.MISO, board.SCK,
|
||||
)
|
||||
buttons = [] # will hold list of Debouncer button objects
|
||||
for pin in button_pins: # set up each pin
|
||||
tmp_pin = DigitalInOut(pin) # defaults to input
|
||||
tmp_pin.pull = Pull.UP # turn on internal pull-down resistor
|
||||
buttons.append(Button(tmp_pin, value_when_pressed=False))
|
||||
|
||||
# get the filenames in aplha order from files in the 'wavs' directory
|
||||
sounds = []
|
||||
for filename in sorted(os.listdir("/wavs")):
|
||||
filename = filename.lower()
|
||||
if filename.endswith(".wav") and not filename.startswith("."):
|
||||
sounds.append(filename)
|
||||
|
||||
audio = audiobusio.I2SOut(bit_clock=board.A1, word_select=board.A2, data=board.A3)
|
||||
mixer = audiomixer.Mixer(voice_count=1, sample_rate=11025, channel_count=1,
|
||||
bits_per_sample=16, samples_signed=True)
|
||||
|
||||
audio.play(mixer)
|
||||
mixer.voice[0].level = 0.5
|
||||
|
||||
def play_sound(sound_number):
|
||||
wave_file = open(("wavs/" + sounds[sound_number]), "rb")
|
||||
wave = audiocore.WaveFile(wave_file)
|
||||
mixer.voice[0].play(wave, loop=False)
|
||||
|
||||
|
||||
while True:
|
||||
for i in range(len(buttons)):
|
||||
buttons[i].update()
|
||||
if buttons[i].pressed:
|
||||
play_sound(i)
|
||||
Loading…
Reference in a new issue