Difference between revisions of "ECE497 Project DotRun"
m (Moved to ECE497Fall2013) |
|||
(28 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | [[Category: | + | [[Category:ECE497Fall2013 |Project]] |
{{YoderHead}} | {{YoderHead}} | ||
Line 9: | Line 9: | ||
<pre style="color:red"> | <pre style="color:red"> | ||
− | + | 09 Executive Summary - Good, nice picture | |
− | + | 08 Installation Instructions - Good. I fixed some typos. | |
− | + | 09 User Instructions | |
− | + | 09 Highlights - The audio is in Chinese! | |
− | + | 08 Theory of Operation - Nice flow chart, but give some explanation too. | |
− | + | 09 Work Breakdown | |
− | + | 09 Future Work - I like the gravity sensor idea. | |
− | + | 09 Conclusions | |
− | + | 10 Demo | |
− | + | 10 Late - Not late | |
− | Comments: | + | Comments: It's a fun little game. |
− | Score: | + | Score: 90/100 |
</pre> | </pre> | ||
− | |||
== Executive Summary == | == Executive Summary == | ||
[[File:Image.jpeg|500px]] | [[File:Image.jpeg|500px]] | ||
+ | |||
+ | <span style="color:green">(Nice picture)</span> | ||
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. | 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. | ||
Line 32: | Line 33: | ||
== Packaging == | == Packaging == | ||
+ | To build up the hardware of this project, you need parts as follows: | ||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! Parts !! Quantity | ||
+ | |- | ||
+ | | BeagleBone Black || 1 | ||
+ | |- | ||
+ | | Adafruit's [http://www.adafruit.com/products/555 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 [http://www.adafruit.com/datasheets/ht1632cv120.pdf HT1632C LED driver]. | |
== Installation Instructions == | == Installation Instructions == | ||
+ | '''''Hardware''''' | ||
+ | |||
+ | 1. buttons | ||
+ | |||
+ | Buttons are wired to gpio pins(GPIO_20 and GPIO_7) and VCC. | ||
+ | <gallery> | ||
+ | File:Image_button.jpeg | ||
+ | </gallery> | ||
+ | |||
+ | 2. LED Matrix | ||
+ | |||
+ | {| class="wikitable" | ||
+ | |- | ||
+ | ! 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) | ||
+ | |} | ||
+ | |||
+ | <gallery> | ||
+ | File:Image ledwires.jpeg | ||
+ | </gallery> | ||
+ | |||
+ | 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 == | == User Instructions == | ||
− | Use the two buttons to control the dot run up or down. If the dot hit the bars, game over. The longer you survive, the higher score you get. | + | 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 == | == Highlights == | ||
− | + | [http://www.youtube.com/watch?v=9MiNc9LIiCU&feature=youtu.be Watch our project!] | |
− | |||
== Theory of Operation == | == Theory of Operation == | ||
− | + | [[File:Main Flow.jpg|500px]] | |
+ | |||
== Work Breakdown == | == Work Breakdown == | ||
− | + | Hardware build-up and Makefile: Yuxuan Zeng | |
+ | |||
+ | Softeware: Yang Liu | ||
− | |||
== Future Work == | == 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 == | == 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. |
Latest revision as of 05:40, 14 October 2014
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 08 Installation Instructions - Good. I fixed some typos. 09 User Instructions 09 Highlights - The audio is in Chinese! 08 Theory of Operation - Nice flow chart, but give some explanation too. 09 Work Breakdown 09 Future Work - I like the gravity sensor idea. 09 Conclusions 10 Demo 10 Late - Not late Comments: It's a fun little game. Score: 90/100
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.