Software
- Event Service Configure
- Uncle Ed State Machine Module
- Wrench Module
- Pipe Segment Module
- Audio Modules
- Bucket Service Module
- LCD Modules
- Button Debounce Modules
Event Service Configure
- ES_Configure
- Header
Event Service Configure is the header file for the software framework used to control our DAM.
Uncle Ed State Machine Module
- Uncle Ed Service
- Pseudo-code
- Source
- Header
Uncle Ed Service handles the game timer, listens to start button, manages the LCD module and celebrates at the end of the game.
Wrench Module
- Wrench Service
- Pseudo-code
- Source
- Header
- Wrench Helper Functions
- Pseudo-code
- Source
- Header
Wrench Service takes care of the interaction with the player with the wrench. It controls the Red LED indicators and checks if the player reaches the goals.
Pipe Segment Module
- Pipe Segment Service
- Pseudo-code
- Source
- Header
Pipe Segment service is in charge of randomly bursting either Pipe 1 or Pipe 2 and listening to the Pipe buttons for recovery of the pipes. It takes care of any events related to Pipe down mode.
Audio Modules
- Audio 1 Service
- Pseudo-code
- Source
- Header
- Audio 2 Service
- Pseudo-code
- Source
- Header
Audio service provides feedback to player 1 and player 2. It will output success or failure sounds according to how the player is doing. It also plays songs at the beginning and end of the game.
Bucket Service Module
- Bucket Service
- Pseudo-code
- Source
- Header
Bucket Service takes care of the interaction with the player with the bucket. It controls the speed at which the water drops fall and listens for whether the player catches the water drops.
LCD Modules
- LCD Shift Register
- Pseudo-code
- Source
- Header
- Shift Register Functions
- Pseudo-code
- Source
- Header
- LCD Message
- Pseudo-code
- Source
- Header
- LCD Service
- Pseudo-code
- Source
- Header
LCD Module interfaces to the Shift register to write messages to the LCD screen.
Button Debounce Modules
- Start Button Service
- Pseudo-code
- Source
- Header
Button Debounce Modules service events coming from the three buttons: start, pipe 1 and pipe 2. Start button starts the game, pipe 1 and pipe 2 buttons recover from their respective pipe bursts.