Git Product home page Git Product logo

asm-project's Introduction

A Game for the AVR - Written in Assembler Language

The purpose of this assignment is to write a small memory game in assembler code. The MCU to be used is the AVR ATmega2560 mounted on the STK600 development board. The game could also be developed on an Arduino Mega connected to some leds and switches.

Description of the Game

The game is a turn-based memory game. The player will at the beginning of a turn be presented with a sequence of flashes on the leds that the player must then try to remember and input correctly on the buttons. If input correctly the round is won and the game continues, if not, the game is lost and restarted. Gradually the difficulty increases (the sequence getting longer).

  • The UI of the game must be implemented with 8 leds
  • User input must be implemented using 8 switches
  • The user should get feedback from the game when a game is started (and restarted) and when a round is won.
  • The sequence of flashes represents a sequence of numbers from 0 to 7. The sequence can contain the same numbers multiple times.

Requirements

Analysis and Design

You must analyse the problem and describe it on diagram form before implementing it. Use for instance Activity or State Machine diagrams for this purpose.

Test

Make a plan for testing your implementation. The plan should provide details on how to test the individual components or actions of your implementation.

Implementation

Implement the game in AVR assembler. The code must be well-structured and extensively commented.

Practical Information

Definition of Done

The game should be demonstrated for me on class and your implementation code handed in on github. See section below for details on how to hand in on github.

All group members should have participated actively in producing code and thus it should be possible to find all group members in the git commit history.

Deadline

5th of April by the end of the lesson (2.20pm)

Github

Before starting to commit any code, this repository should be forked to the github account of a group member. This forked repository is where you are going to create your Atmel Studio project and commit your assembler code. Eventually you can "Hand in" by creating a pull request. This will enable me to see your code and provide you comments on your project.

If you are unsure of the details, ask me or a fellow student og go watch a video (like this: https://www.youtube.com/watch?v=_NrSWLQsDL4) or read the documentation.

asm-project's People

Contributors

sandbeck avatar letodk avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.