260 likes | 399 Views
Sudoku EHG . Michelle Brown Matt Haggenmiller Thomas Troch CE Design Projects Design Review December 12, 2007. Outline. Sudoku EHG functionality User Interface Instruction Technical Details Input (keypad) Output (LCD) Control (microcontroller) Testing Strategies Hardware
E N D
SudokuEHG Michelle Brown Matt Haggenmiller Thomas Troch CE Design Projects Design Review December 12, 2007
Outline • SudokuEHG functionality • User Interface • Instruction • Technical Details • Input (keypad) • Output (LCD) • Control (microcontroller) • Testing Strategies • Hardware • Software • Cost Analysis • Feasibility
SudokuEHG Functionality • Allows users to electronically play Sudoku, a logic and reasoning game via a handheld device. • Features: • 2 types of Sudoku games • 3 difficulty levels each • Save up to 5 games • Timed play • Save current game while in progress Normal Sudoku Crazy Sudoku
User Interface • Menu interface • Select option with number keypad • Other keys are disabled Screen Keypads Example: Main Menu
User Interface • Game Interface • Use arrow keys to navigate grid • Use number keys to enter desired # • Use Erase key to erase an entered # • Use Main Menu key to go to the Main Menu • Enter key is disabled • Note: Fixed (given) #s will be bold and unchangeable Screen Keypads
User Instruction • Play a new game Screen Keypad 1. Power On – Main Menu, Press the 3 key to start a new game 2. Press the 1 key to chose a Normal game 3. Press the 2 key to choose the game difficulty 4. PLAY!
User Instruction • Game Completed: • All boxes filled Verify Puzzle • Correct Stop Timer • Incorrect Continue Timer
User Instruction • Save Game 1. Press Main Menu key 2. Press the 2 key to save current game 3. Press the 4 key to save current game to location 4 4. Back to the Main Menu
User Instruction • Open Game 2. Press the 4 key to retrieve desired game 3. Desired game opened 1. Press 2 key to open a game
Technical Details • Components of the System • Input - 2 donated keypads • Output - Crystalfontz LCD • Control - HCS12 microcontroller
Technical Details LCD • Overall Schematic Design Microcontroller Number Keypad Arrow Keypad
Technical Details • Input - 2 Keypads Number Keypad Arrows Keypad
Technical Details • Output - LCD (320 X 240 pixels)
Technical Details • Output - LCD (320 X 240 pixel)(Cont) • Epson S1D13305 Controller • 5 Control Bit & 8 Data Bits • Character Generator ROM • Multiple Display Mode
Technical Details • Control - HCS12 Microcontroller • CodeWarrior Development Tool • Provides desired I/O ports (22) PWM (0-3): Output to Keypad A/D (0-4): Input from Keypad Port A (0-7): LCD data Port B (0-4): LCD control
Testing Strategies • Hardware testing • Microcontroller • How: flash an LED • Keypad (w/ Microcontroller) • How: press button, use serial port to view status • LCD (w/ Microcontroller) • How: Display “hello” • Integrate 3 main components • How: press button on keypad, process using microcontroller, see effects on LCD
Testing Strategies • Software Testing • Keypad interrupt handling • Output to serial port if correct key was pressed • Game grids display • Visual inspection • Game menus display • Visual inspection • Sudoku game display • Visual inspection
Testing Strategies • Hardware/Software (Integration) Testing • Create a new game • Create new game from menu • Save & open a game • Save game into available slot, open saved game • Save game into non-available slot, message should be displayed for overwrite confirmation • Open current game • Insert #s on game board, power off/on, open current game
Testing Strategies SW (algorithm & state) Testbench (tests I/O) Some testing methods HW (keypad & LCD) SW (algorithm & state) HW (keypad & LCD)
Feasibility • LCD properly display • Interfacing LCD/Micro/Keypad • Have enough memory for code, saved games, game solutions