A game console project on a self made embedded system.
- Designed PCB in Altium Designer
- Programmed in AVR Studio and C language
- Uses SPI for serial communication between microcontroller peripheral devices
- Uses interrupts for button actions
- Components
- ATMEGA16 microcontroller
- Soft Power switch (uses D-FlipFlop to store On/Off state)
- LCD Screen with Backlight
- Power Circuit with boost converter
- JTAG interface
8 bit AVR microcontroller ATMEGA16 settings reffered from documentation: https://www.gme.cz/data/attachments/dsh.958-112.1.pdf
Project File Structure
|-src
| |___
| |__backlight.c //Handles backlight control using PWM
| |__battery.c //Handles battery level checking
| |__character.h //Protoypes of Character Library
| |__character.c //Self Created Character Library
| |__etchasketch.c //etchASketch game implementation
| |__flappybird.c //Flappy Bird game implementation
| |__function_prototypes.h //Prototypes of misc functions
| |__game_console.h //Main Game Console function Prototypes
| |__game_console.c //Main Program
| |__game_interrupts.c //Handles interrupts in ATMEGA16
| |__guess.c //Monty Hall game implementation
| |__init_misc_components.c //Initializing Components on bootup
| |__LCD.c //Handles LCD communication via SPI
| |__pong.c //Implementation of Pong Game
| |__spi.c //Main functions for SPI communication
|
|-pcb
|__Game_Consol.PcbDoc //Altium Design Document
- Simple Pong Game with two programmed AI.