We are about to switch to a new forum software. Until then we have removed the registration on this forum.
HI,
Currently I am working on the project with PIR motion sensor.
Code process I want to make:
Two code successfully tested. (*from web, edited a bit)
I'm struggling to deal with two code above, try to combine "play mp3" code to "arduino-processing"code. but There're always too many errors!
Do you guyz have any idea to solve this code? Is there anyone who already tried a similar project ? :P
*code 1 (Graph)
// Graphing sketch
// This program takes ASCII-encoded strings
// from the serial port at 9600 baud and graphs them. It expects values in the
// range 0 to 1023, followed by a newline, or newline and carriage return
// Created 20 Apr 2005
// Updated 18 Jan 2008
// by Tom Igoe
// This example code is in the public domain.
import processing.serial.*;
Serial myPort; // The serial port
int xPos = 1; // horizontal position of the graph
void setup () {
// set the window size:
size(400, 300);
// List all the available serial ports
println(Serial.list());
// I know that the first port in the serial list on my mac
// is always my Arduino, so I open Serial.list()[0].
// Open whatever port is the one you're using.
myPort = new Serial(this, Serial.list()[0], 9600);
// don't generate a serialEvent() unless you get a newline character:
myPort.bufferUntil('\n');
// set inital background:
background(0);
}
void draw () {
// everything happens in the serialEvent()
}
void serialEvent (Serial myPort) {
// get the ASCII string:
String inString = myPort.readStringUntil('\n');
if (inString != null) {
// trim off any whitespace:
inString = trim(inString);
// convert to an int and map to the screen height:
float inByte = float(inString);
inByte = map(inByte, 0, 1023, 0, height);
// draw the line:
stroke(127, 34, 255);
line(xPos, height, xPos, height - inByte);
// at the edge of the screen, go back to the beginning:
if (xPos >= width) {
xPos = 0;
background(0);
}
else {
// increment the horizontal position:
xPos++;
}
}
}
*code2 (mp3)
import ddf.minim.*;
Minim minim;
AudioPlayer sound;
int value;
void setup()
{
size(400, 400);
minim = new Minim(this);
}
void draw() {
background(0);
}
void mousePressed() {
if (mouseX < 0 && mouseY < 400 || mouseX < 400 && mouseY > 0) {
sound = minim.loadFile("edith.mp3");
sound.play();
value = 0;
}
}
Answers
Can you give a few examples of the errors you get? What exactly are you trying to do?
Hint: if you do ctrl+t in Processing, it will automatically format the code for you, which makes it easier to read here.