How the Circuit Works.
Power is supplied via the 9Volt battery and dropped down and regulated at 5Volts (required by the digital circuits) by the 7805 regulator.
The circuit is all based around the PIC 18f4550 microcontroller which has been my microcontroller of choice for over a year now. They are inexpensive, have plenty of input / output ports, RAM, program memory and even some ROM which comes in handy when saving high scores.
Helping out with the graphics on the 8x8 Matrix are four 74373 chips which each contain eight data flip flops and eight tri-state buffers on their outputs. Basically the screen is drawn one column at a time (for a total of eight columns) all four of the 74373’s are connected to an eight bit port of the microcontroller (which effectively acts as a data bus) to draw one complete frame, the microcontroller will send out eight bits of red data and will save it to the red 74373. It will then send out eight bits of green data and save it to the green 74373, it will then send out eight bits of blue data and save it to the blue 74373. Once all three Color 74373’s have their data, we will send eight bits to the fourth 74373 and this will determine which column will actually display this data.
Once all four chips have their memory stored within them, the microcontroller will enable the tri-state buffers within the 74373’s which will send the data to the LED matrix and will light up certain Red Green and Blue segments in one particular column. the microcontroller repeats this process seven more times to complete one full picture. This happens many times a second so to the human eye, it looks like a steady picture.
Throughout this process, the microcontroller is constantly checking the game buttons to determine if one or more has been pressed. If it has, it will call a specific sub routine within the program memory to update the display in the required fashion (I.E. move the graphics left or right, or make the player jump or shoot etc...) The microcontroller will also send certain data to the Monofonic Audio Chip to tell it to play the required sound.
The Microcontroller also sends out specific data to the LCD screen to update it with specific information such as the players score, lives remaining and current level.