Intermediate Embedded and Real-Time Systems Course Final Project

UCR EE/CS 122A Fall 2012

This game is entitled Blocks³. The game consists of a hierarchical layout of blocks on a monitor, with one small block in motion, and a series of 8 LEDs along with a keypad. The goal of the game is to press a button to pause the moving block on the monitor within a tolerance of 20 pixel from the outer edges, then enter the correct decimal number of a binary representation blinked on the LEDs. Once the block has been paused 10 times and all binary numbers entered correctly, the game has been won!

This game was implemented using a Digilent Nexys4 FPGA and two Atmel ATmega32 microcontrollers. The FGPA drives the VGA monitor output and the microcontrollers run the binary to decimal conversion on the LEDs and keypad. The FPGA and microcontrollers have 2-way communication through a handshake protocol and the two microcontrollers communicate using the SPI protocol.

More details, including design specifications, state diagrams, and block diagrams are available upon request.