Search this site
Embedded Files
Ryan Lange
  • Home
  • Project
  • IoT
  • PCs
Ryan Lange
  • Home
  • Project
  • IoT
  • PCs
  • More
    • Home
    • Project
    • IoT
    • PCs

CodeGolf

GitHub: https://github.com/glimped/CodeGolf

Abstract

CodeGolf is a mini-golf game through an FPGA board. The game takes directional input from the Nexys DDR4 board and hit-power input from the PMOD NumPad to allow the user to play mini-golf.

Project Workflow

  1. Brainstorm ideas and select a project (DONE)

  2. Develop abstract, project deliverable, and materials (DONE)

  3. Develop finite state machine / logic (DONE)

  4. Write VHDL code (DONE)

  5. Synthesize (DONE)

  6. Implement (DONE)

  7. Generate bit stream (DONE)

  8. Program board (DONE)

  9. If time permits, make more levels & implement potentiometer (NOT IMPLEMENTED)

Project Materials

  • Nexys DDR4 Board

  • PMOD NumpPad

  • VGA Monitor

Finite State Machine (FSM) Model

VHDL Code

Goals of Code:

  • Ball's direction is determined by directional buttons on FPGA

  • Ball's power level is determined by potentiometer

  • Design walls and "hole" for each level/course

  • Create logic for wall bounces / Game Over Case

    • Game over screen / Restart

  • Total stroke counter

    • Use seven-segment display for strokes

Future Ideas

  • Pinball

  • Additional courses

  • Max stroke count

Research

  • Drawing shapes: https://projectf.io/posts/fpga-shapes/

  • Frogger: https://github.com/e-c-cone/CPE487/blob/main/Frogger%20Work/sources_1/new/froggie.vhd

Working Code

IMG_0138.MOV
Google Sites
Report abuse
Page details
Page updated
Google Sites
Report abuse