Abdiramen / cpe3150-project-3

Space Invaders, Penrose Menu, binary counter, and music for the Intel 8051 Microcontroller.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Project III — CpE 3150

This is the third and final project for Computer Engineering 3150, Introduction to Microcontrollers and Embedded Systems at Missouri University of Science and Technology. The formal description can be found under assets/CpE 3150 - Project 3.pdf. Although this can serve as a reference, because of the teacher’s transfer and hardware being replaced, this code verbatim cannot be used.

The hardware required to run the code is an 8051 microcontroller. The only required software is a GCC compiler; however, to alter code related to the microcontroller, Kiel and Flash Magic is required.

Please note because this project is already evaluated, it will be treated as legacy. Further support will be discontinued.

The Codebase

There are two, independently code bases, we will discuss them individually.

Space Invaders

The original intention for Space Invaders was to serially communicate the game logic from the microcontroller to a computer monitor; however, the microcontroller only has 8k of memory. Our hex file was over 30k. Because of this, our game only runs in the terminal with curses.

Space Invaders

There are many known issues with the game — namely, the aliens don’t shot nor move. We did not have enough time to fix these issues.

Penrose and Music

The Penrose and music portion of the code prints an elegant menu for selecting different actions that can be performed on microcontroller. The actions are as follows:

  • A musical keyboard that plays different notes that correspond to different buttons.
  • A song (Hurricane’s Eye).
  • A binary counter that uses the top three lights on the microcontroller.

Penrose Menu

Assets contain all the documentation for the microcontroller, Kiel and Flashmagic. These documents are properties of Missouri S&T, no copyright infringement intended.

The Report

The report details what occurred in the project, what struggles we faced, how we used the microcontroller, etc. Because it is in LaTeX, it requires some setup to alter. You can read the documentation here.

Group Members

The following were the original members of this project:

About

Space Invaders, Penrose Menu, binary counter, and music for the Intel 8051 Microcontroller.

License:MIT License


Languages

Language:C 59.2%Language:TeX 21.5%Language:C++ 15.4%Language:Objective-C 3.3%Language:Makefile 0.6%