Gra PONG stworzona z użyciem sensorów odległości i analogowego wyświetlacza.
Celem projektu było przygotowanie systemu wbudowanego służącego do gry PONG sterowanej przy użyciu ultradźwiękowych czujników odległości. Dodatkowo interfejs gry wyświetlany miał być na wyświetlaczu sterowanym sygnałem analogowym generowanym programowo. Projekt objął przygotowanie programu dla Raspberry pico, który na port szeregowy przyjmuje pozycje paletek oraz piłki w sposób asynchroniczny a następnie generuje sygnał analogowy dla złącza VGA monitora. Dane dla modułu raspberry pico są generowane przez skrypt uruchomiony na raspberry pi 4b. Zadaniem tego modułu jest sczytywanie odległości z dwóch czujników, obliczanie pozycji piłki na planszy (i całej logiki gry), serializacja tych danych i wysyłanie ich w pętli na łącze szeregowe do raspberry pico..
Do zbudowania projektu na użyliśmy Dockera
Budowa obrazu kontenera:
cd docker sudo docker build --network host -t pong .
Uruchomienienie kontenera (z folderu głownego projektu)
cd .. sudo docker run -it .:/pong pong bash
Kompilacja projekt (z poziomu kontenera)
cd pong cmake -S . -B build (cd build && make)
Plik wykonywalny pong.elf znajduje się w folderze build. Skopiuj go na Raspberry Pico