Lekki launcher w Python/Pygame dla RPi z ekranem dotykowym i 8 przyciskami GPIO.
- Python 3.9–3.11
- Ekran 800x480 (7") lub większy
- 8 przycisków podłączonych do GPIO z rezystorem pull-up lub pull-down
- RPi 3B+
- Główne:
pygame - GPIO na RPi:
gpiozero(zależne odRPi.GPIO) – zainstaluj tylko na RPi
Instalacja na RPi (rekomendowane):
sudo apt update
sudo apt install python3-gpiozero python3-pip
python3 -m pip install --upgrade pip
python3 -m pip install pygame==2.5.2Lokalne uruchomienie (bez GPIO, z klawiaturą jako mock):
python3 -m pip install --upgrade pip
python3 -m pip install pygame==2.5.2python3 -m src.app- Fizyczne przyciski (kolejno piny z
config.BUTTON_PINS):- Select / Start
- Back
- Up
- Down
- Left
- Right
- Alt A (gra)
- Alt B (gra)
- Tryb mock (desktop): klawisze
1-8odpowiadają przyciskom 1-8.
src/app.py– pętla główna Pygame, routing widokówsrc/input_manager.py– asynchroniczny odbiór wejść (GPIO lub mock)src/menu.py– menu wyboru giersrc/games/button_tester.py– przykładowa gra/test przyciskówsrc/games/clickinator.py– klikacz 1-3 graczy, 30 s wyścigu na przyciski BTN1/AltA/AltB
W src/config.py ustaw SCREEN_WIDTH i SCREEN_HEIGHT pod swój ekran (fullscreen nadpisze je rozdzielczością ekranu).
- Domyślnie używany jest
pull_up=Truewgpiozero.Button. Jeśli masz inne okablowanie, zmień wconfig.py. - Program sam wykryje brak
gpiozeroi przełączy się w tryb mock (klawiatura), więc można rozwijać na desktopie.