Project: Musicbox mit Python - GPIO-Schnittstellenabfrage mit Push-Buttons:

Hier ein kl. Projekt zur Umstzung von 2 oder mehr Tasterabfragen auf dem GPIO-Board des Raspi zum Abspielen von Sounds:

Benötigt wird:

1 X Raspberry Pi - hier ein 3+
1 X Speicherkarte 8GB microSD
1 X Kartenleser für PC
1 X Rasbian lite aktueller Download unter: https://www.raspberrypi.org/downloads/raspbian/

Etcher zum Aufspielen der ISO auf die SD-Card

Ich gehe hier nicht weiter auf das Aufspielen eines Linux / Rasbian Images auf eine SDCard zur späteren Verwendung ein - dies sollte als Basis schon vorhanden sein. --> SSH-Server sollte aktiviert sein.

Zunächst werden die Voraussetzungen zur Verwendung von Python installiert:

apt-get install python3-pip
apt-get install python3-pygame
pip3 install adafruit-blinka

Folgende Verzeichnisse erstellen:

mkdir /home/pi/gpio-music-box/scripts
mkdir /home/pi/gpio-music-box/samples
 
Folgendes script im /home/pi/gpio-music-box/scripts-Verzeichnis ablegen:

# This script requires a Raspberry Pi 2, 3 or Zero. Circuit Python must
# be installed and it is strongly recommended that you use the latest
# release of Raspbian.

import time
import os
import board
import digitalio

print("Bitte Taster betaetigen")

button1 = digitalio.DigitalInOut(board.D4)
button1.direction = digitalio.Direction.INPUT
button1.pull = digitalio.Pull.UP

button2 = digitalio.DigitalInOut(board.D24)
button2.direction = digitalio.Direction.INPUT
button2.pull = digitalio.Pull.UP


while True:

    # omxplayer -o local <file>
    # omxplayer -o hdmi <file>
    # omxplayer -o both <file>
    if not button1.value:
        os.system('omxplayer /home/pi/gpio-music-box/samples/1.mp3 &')

    if not button2.value:
        os.system('omxplayer /home/pi/gpio-music-box/samples/2.mp3 &')


    time.sleep(.25)

Das Script soll nun nach Einschalten des Raspis automatisch gestartet werden:

Vor der Endzeile (exit 0) muss nun folgende Zeile eingefügt werden:

nano /etc/rc.local

python3 /home/pi/gpio-music-box/scripts/audio-button.py

abspeichern neu starten

 

 
© 2024 ziggymania.de Designed S.Wommer