In an embedded software course, I wrote the software to implement Simon and Tic-Tac-Toe games for a microcontroller with a color touch screen. The source code is written in C and can be found by clicking here. That source code is representative of my coding quality.
Tic-Tac-Toe is based on a state machine that minimizes the delays between user input and system response. Even though the games were developed for microprocessors, which have limited computational resources, there is no noticeable delay. I implemented some basic artificial intelligence by programming the “Computer Player” to play according to a recursive minimax algorithm. I also programmed the screen’s graphics to update smoothly. The Simon game contains many similar elements, but it is more complex and uses several state machines that interact with each other.
This work included the following:
1) Writing real time software
2) Documenting source code to allow others to understand the program
3) Adherence to a community coding standard
4) Basic artificial intelligence algorithm