Skip to content

Final project for my ECE 3710 class on microcontrollers. Implements the classic board game Mastermind using a WS2812B LED array.

Notifications You must be signed in to change notification settings

CodeTriangle/ece3710-final

Repository files navigation

Mastermind

This project implements a digital version classic 2-player board game Mastermind. It requires:

  • The STM32L476RG microcontroller
  • a 16x16 pixel WS2812B LED array
  • six push buttons (as currently written, the code assumes they will be red, yellow, green, blue, orange, and purple, in that order)

The project is a direct copy of the Keil uVision project (the IDE and build system used for the class). As such, the majority of the files here were created by Keil.

Notable files I authored:

  • main.c: Startup procedure that creates the game context.
  • asm_procs.s: An optimized assembly procedure to print to the board within the very strict time limits imposed by the LED array.
  • LED.c: A low-level graphics API for the LED array.
  • Button.c: Functions to get input from the buttons.

Notable files authored by my partner:

  • game.c: Game logic for Mastermind.

All other files are generated or were not made specifically for this project.

About

Final project for my ECE 3710 class on microcontrollers. Implements the classic board game Mastermind using a WS2812B LED array.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published