ECE497 Project DotRun
Embedded Linux Class by Mark A. Yoder
Team members: Yang Liu, Yuxuan Zeng
Contents
Grading Template
I'm using the following template to grade. Each slot is 10 points. 0 = Missing, 5=OK, 10=Wow!
09 Executive Summary - Good, nice picture 00 Installation Instructions - Not done 08 User Instructions 00 Highlights - Not done 00 Theory of Operation 00 Work Breakdown 00 Future Work 00 Conclusions 00 Demo 00 Late Comments: I'm looking forward to seeing this. Score: 10/100
(Inline Comment)
Executive Summary
(Nice picture)
This project is an electrical game on a 16*24 LED matrix playing with two buttons.There is a dot in the central of matrix and bars coming from right or left side of matrix. You can control the dot to move up and down to avoid the bars by clicking the buttons. Clicking on buttons will cause a voltage change on gpio pins, which will result the movement of dot. Bars are generated according to several patterns. The longer the game lasts, the faster bars are generated and the higher the score you get.
Packaging
To build up the hardware of this project, you need parts as follows:
Parts | Quantity |
---|---|
BeagleBone Black | 1 |
Adafruit's 16x24 Red LED Matrix Panel | 1 |
buttons | 2 |
220 ohm Resistors | 2 |
wires | some |
My BBB is running v3.8.13 Linux. And the LED Matrix uses the HT1632C LED driver.
Installation Instructions
Hardware
1. buttons
Buttons are wired to gpio pins(GPIO_20 and GPIO_7) and VCC.
2. LED Matrix
BBB Pins | Panel Pins(wire color) |
---|---|
1 (GND) | GND(brown) |
3 (VDD_3V3EXP) | VCC(red) |
15 (R13/GPIO1_16) | CS0(orange) |
23 (V14/GPIO1_17) | WR(yellow) |
12 (A14/GPIO1_28) | DATA(green) |
Reference: http://elinux.org/Adafruit:_16x24_Red_LED_Matrix_Panel
Software requirements:
get source on BeagleBone and make
beagle$ git clone git@github.com:yuxuanzeng/project.git beagle$ cd project/prj beagle$ make
Then you can run the program by
beagle$ ./matrix16x24
User Instructions
Use the two buttons to control the dot run up or down. Clicking left button makes dot run up, clicking right button makes dot run down.If the dot hit the bars, game over. The longer you survive, the higher score you get.
Highlights
Theory of Operation
Work Breakdown
Hardware build-up and Makefile: Yuxuan Zeng
Softeware: Yang Liu
Future Work
The project can be improved by adding properties as follows:
1. Rebuild the software so that when you hold the button down, the dot keeps moving. At present the dot responses upon click, which means if you want to make the dot keeps moving, you have to click the button continuously.
2. Building a gravity sensor to control the dot instead of buttons. That will be more fun.
3. Add a music player to BBB so that we can play background music while playing game.
Conclusions
Our project builds several basic features of the DotRun game, such as controlling dot by buttons, generation of bars and the automatically speed-up.
More features can be added to the project to make it more fun, such as the best record, background music, gravity-sensor and so on.