Author: Benjamin Denzler
This is a fully-functioning Pong game running on a microcontroller with an LED matrix! The entire game is written in C, and I programmed an ATMEGA1284P microcontroller using UCR's AVR Toolchain. The microcontroller takes input from several buttons and a potentiometer, and outputs to an 8x8 LED matrix and stand-alone LEDs.
The game has the following features:
- Complete ball physics: paddle center bounces straight, paddle edges bounce at an angle
- Changing ball speeds depending on where the ball is hit
- Single-player mode with a simple AI, player uses buttons
- Two-player mode that disables the AI, second player uses a potentiometer
- Seamless switching between single and two-player modes
- Score counter for each player (LEDs)
- Winning conditions: first to three wins, and the game is reset
- Reset button to clear the ball's position and proceed to next round
The following hardware was used for this project:
- Digilent Solderless Breadboard
- ATMEGA1284P Microcontroller
- Atmel-ICE AVR Programmer
- 8x8 LED Matrix
- 50K Potentiometer
- Miscellaneous wires, LEDs and resistors
See a demo of my game by clicking on the video below!