Difference between revisions of "ECE497 Project DotRun"

From eLinux.org
Jump to: navigation, search
(Created page with "== Grading Template == I'm using the following template to grade. Each slot is 10 points. 0 = Missing, 5=OK, 10=Wow! <pre style="color:red"> 00 Executive Summary 00 Installa...")
 
m (Grading Template)
 
(37 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
[[Category:ECE497 |Project]]
 +
{{YoderHead}}
 +
 +
Team members: [[user:FreeTymeKiyan|Yang Liu]], [[user:Yuxuan|Yuxuan Zeng]]
 +
 
== Grading Template ==
 
== Grading Template ==
 
I'm using the following template to grade.  Each slot is 10 points.
 
I'm using the following template to grade.  Each slot is 10 points.
Line 4: Line 9:
  
 
<pre style="color:red">
 
<pre style="color:red">
00 Executive Summary
+
09 Executive Summary - Good, nice picture
00 Installation Instructions  
+
08 Installation Instructions - Good.  I fixed some typos.
00 User Instructions
+
09 User Instructions
00 Highlights
+
09 Highlights - The audio is in Chinese!
00 Theory of Operation
+
08 Theory of Operation - Nice flow chart, but give some explanation too.
00 Work Breakdown
+
09 Work Breakdown
00 Future Work
+
09 Future Work - I like the gravity sensor idea.
00 Conclusions
+
09 Conclusions
00 Demo
+
10 Demo
00 Late
+
10 Late - Not late
Comments: I'm looking forward to seeing this.
+
Comments: It's a fun little game.
  
Score:  10/100
+
Score:  90/100
 
</pre>
 
</pre>
  
<span style="color:red">(Inline Comment)</span>
+
== Executive Summary ==
 +
[[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.
 +
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:
 +
{| 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 ==
 +
'''''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 ==
 +
 
 +
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 ==
 +
 
 +
[http://www.youtube.com/watch?v=9MiNc9LIiCU&feature=youtu.be Watch our project!]
 +
 
 +
== Theory of Operation ==
 +
 
 +
[[File:Main Flow.jpg|500px]]
 +
 
 +
== 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.

Latest revision as of 13:45, 19 November 2013

thumb‎ Embedded Linux Class by Mark A. Yoder


Team members: Yang Liu, Yuxuan Zeng

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

Image.jpeg

(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

Watch our project!

Theory of Operation

Main Flow.jpg

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.