General description:
Speed test game consists of four non-latching colored light buttons and a four-digit 7-segment display installed in a box along with display and controller PCBs. Controller board has a buzzer to generate sound signals.
There are three modes of play: Easy Speed Test, Hard Speed Test and a Memory Game. If none of these modes is selected, game will be in demo mode. Red button will activate the display of high scores and the other three select the modes of game.
Each mode of operation and the associated states of the software will be described separately.
Player shall try to press the buttons in correct sequence after game lights them up in random sequence. Player may lag behind by maximum of 10 light flashes after the last light.
Game starts with approximately 1s delay between the light in Easy Speed test mode. Delay decreases along with increasing number of presses and game ends if the sequence becomes incorrect or maximum lag is reached.
Hard Speed test mode is similar to Easy Speed test but starts directly from 100 points (presses) with corresponding (shorter) initial delay.
Game permanently stores the high scores both for speed test and memory game.
Software is implemented using a PIC18F442 microcontroller. 4- digit 7-segment display is driven by SAA1064 which communicates via an I2C bus with the microcontroller.
Unit uses external 12VDC supply for operation.
Function description:
Hardware:
Software:
Module |
Function |
Main program, state machine |
|
delay routines |
|
i2c initialization and write routines |
|
7- segment driver i2c software interface |
Module |
Function |
i2c header |
|
delays header |
|
saa1064.h | saa1064 driver header |
Documents:
Schematic- controller
Schematic- display
PCB
Functional description (In progress)