diff options
author | Christopher Baines <cbaines8@gmail.com> | 2011-09-12 15:50:50 +0100 |
---|---|---|
committer | Christopher Baines <cbaines8@gmail.com> | 2011-09-12 15:50:50 +0100 |
commit | 223480547e0c3e54f729356dce80bd40d401cf79 (patch) | |
tree | 21a97738f589a6dd9850d89b4106e19764d34b11 | |
parent | b872e8aaf1f429d9422498cab25d5638e4158502 (diff) | |
download | punchingbag-223480547e0c3e54f729356dce80bd40d401cf79.tar punchingbag-223480547e0c3e54f729356dce80bd40d401cf79.tar.gz |
Kinda working stuff.
-rw-r--r-- | Arduino/LEDMatrix/LEDMatrix.pde | 30 | ||||
-rw-r--r-- | PunchingBag/src/PunchingBag.java | 32 | ||||
-rw-r--r-- | PunchingBag/src/PunchingBagGUI.java | 6 |
3 files changed, 41 insertions, 27 deletions
diff --git a/Arduino/LEDMatrix/LEDMatrix.pde b/Arduino/LEDMatrix/LEDMatrix.pde index 5aada79..1a709be 100644 --- a/Arduino/LEDMatrix/LEDMatrix.pde +++ b/Arduino/LEDMatrix/LEDMatrix.pde @@ -24,26 +24,29 @@ void setup ( ) void loop ( ) { - buffer[0] = 127; - buffer[1] = 0b10101010; - buffer[2] = 0b01010101; - for (int i=3; i<(chips * 8); i++) { - buffer[i] = 0;//random(-128,127); // Just Green 0b10101010 - } - matrix.Update(); - - /* + /*buffer[0] = 127; + buffer[1] = 0b10101010; + buffer[2] = 0b01010101; + for (int i=3; i<(chips * 8); i++) { + buffer[i] = 0;//random(-128,127); // Just Green 0b10101010 + } + matrix.Update();*/ + + while (true) { int read = Serial.read(); if ((byte) read == (byte) 108) { - for (int b=0; b< (chips * 8); b++) { - buffer[b] = (byte) Serial.read(); + for (int b=0; b< (chips * 8); ) { + if ((read = Serial.read()) != -1) { + buffer[b] = (byte) read; + b++; + } } break; } } - matrix.Update();*/ - + matrix.Update(); + } @@ -57,3 +60,4 @@ void loop ( ) + diff --git a/PunchingBag/src/PunchingBag.java b/PunchingBag/src/PunchingBag.java index a7b7070..ef5cb18 100644 --- a/PunchingBag/src/PunchingBag.java +++ b/PunchingBag/src/PunchingBag.java @@ -8,6 +8,7 @@ import java.awt.Rectangle; import java.awt.geom.Area; import java.io.IOException; +import java.math.BigInteger; import java.util.ArrayList; import java.util.Arrays; @@ -400,13 +401,11 @@ public class PunchingBag implements Runnable { for (int y = 0; y < 8; y++) { if ((y % 2) == 0) { if (leds[1 + x][(grid * 4) + (y/2)] == Colour.Green || leds[1 + x][(grid * 4) + (y/2)] == Colour.Yellow ) { - //System.out.println("X: " + (x+1) + " Y: " + ((grid * 4) + (y/2)) + " : Green"); - //printlnByte((byte) (1 << (8-y))); - rawLeds[(grid*8) + x] = (byte) (rawLeds[(grid*8) + x] | (1 << (8-y))); + rawLeds[(grid*8) + x] = (byte) (rawLeds[(grid*8) + x] | (1 << (7-y))); } } else { if (leds[1 + x][(grid * 4) + (y/2)] == Colour.Red || leds[1 + x][(grid * 4) + (y/2)] == Colour.Yellow ) { - rawLeds[(grid*8) + x] = (byte) (rawLeds[(grid*8) + x] | (1 << (8-y))); + rawLeds[(grid*8) + x] = (byte) (rawLeds[(grid*8) + x] | (1 << (7-y))); } } } @@ -477,6 +476,13 @@ public class PunchingBag implements Runnable { } public boolean connectToArduinos() { + try { + ledArduino.connect("COM6"); + buttonArduino.connect("COM7"); + } catch (Exception e1) { + // TODO Auto-generated catch block + e1.printStackTrace(); + } HashSet<CommPortIdentifier> serialPorts = Arduino .getAvailableSerialPorts(); for (Iterator iter = serialPorts.iterator(); iter.hasNext();) { @@ -487,9 +493,8 @@ public class PunchingBag implements Runnable { System.out.println(comPort.getName()); } try { - ledArduino.connect(comPort.getName()); - // System.out.println("ID: " + buttonArduino.getID()); + System.out.println(comPort.getName()); } catch (Exception e) { e.printStackTrace(); } @@ -532,9 +537,12 @@ public class PunchingBag implements Runnable { } private void printByte(byte b) { + //System.out.println("Byte: " + b); String str; for (int j = 0; j < 8; j++) { - if ((b & (1 << (8 - j))) > 0) { + byte val = (byte) (b & (1 << (7-j))); + //System.out.println("Val: " + val + " " + (1 << (7-j))); + if (val > 0) { str = "1"; } else { str = "0"; @@ -587,7 +595,7 @@ public class PunchingBag implements Runnable { // sb.append((char) read); } // System.out.println(""); - readAccelData(str); + //readAccelData(str); // String[] nums = sbString.trim().split(" "); // System.out.println(nums); // for (int x=0; x<4; x++) { @@ -615,11 +623,13 @@ public class PunchingBag implements Runnable { } } calculateRawLeds(); - /*String str; + String str; for (int i = 0; i < (6 * 8); i++) { - printByte(rawLeds[i]); + //printByte(rawLeds[i]); } - System.out.println("");*/ + //System.out.println(""); + + //Arrays.fill(rawLeds, (byte) -42); if (ledArduino.out != null) { //calculateRawLeds(); try { diff --git a/PunchingBag/src/PunchingBagGUI.java b/PunchingBag/src/PunchingBagGUI.java index adf30b0..b62c820 100644 --- a/PunchingBag/src/PunchingBagGUI.java +++ b/PunchingBag/src/PunchingBagGUI.java @@ -48,7 +48,6 @@ public class PunchingBagGUI implements MouseListener, MouseMotionListener, final boolean useDebugScreen = true;
public static void main(String[] args) throws InterruptedException {
-
new PunchingBagGUI();
}
@@ -535,14 +534,15 @@ public class PunchingBagGUI implements MouseListener, MouseMotionListener, @Override
public void buttonPressed(int x, int y) {
System.out.println("Button Pressed: " + x + " " + y);
- // bag.circleExpand(x, y, 16);
+ //bag.circleExpand(x, y, 16);
+ bag.setLED(x, y, PunchingBag.Colour.Red);
//bag.noise(new Rectangle(0, 0, 9, 20), 5000);
/*for (int bx=0; bx<bag.ledWidth; bx++) {
for (int by=0; by<bag.ledHeight; by++) {
bag.setLED(bx, by, PunchingBag.Colour.Red);
}
}*/
- bag.squareExpand(x,y, 16, PunchingBag.Colour.Red);
+ //bag.squareExpand(x,y, 16, PunchingBag.Colour.Red);
}
@Override
|