I want to convert the code (below) from Processing into Arduino but I am getting errors with the syntax, basically what I want to do is to get a vibration motor to start, reach maximum speed and slow down again in the shape of a curve. I have it working in processing (using the Arduino Lib) but I would like to have it working also in the Arduino IDE as I want to disconnect the arduino from the computer...any help will be appreciated ...thanks in advance...
int xspacing = 32; // How far apart should each horizontal location be spaced
int w; // Width of entire wave
float theta = 0.0; // Start angle at 0
float dx; // Value for incrementing X, a function of period and xspacing
float[] yvalues; // Using an array to store height values for the wave
void setup() {
w = 320;
dx = 0.40212387;
yvalues = new float[w/xspacing];
}
void loop() {
background(0);
Generatewave();
}
void Generatewave() {
// Increment theta (try different values for 'angular velocity' here
theta += 0.002;
// For every x value, calculate a y value with sine function
float x = theta;
for (int i = 0; i < yvalues.length; i++) {
yvalues[i] = sin(x)*10.0;
println(yvalues[i]);
x+=dx;
}
}
@AWOL I made that change but when I verify the code below I am now getting the following error: incompatible types in assignment of 'float*' to 'float [10]'
**@PaulS Sorry,I was not being greedy:) and well spotted, I did leave some remnants of Java behind:)...
int xspacing = 32; // How far apart should each horizontal location be spaced
int w; // Width of entire wave
float theta = 0.0; // Start angle at 0
float dx; // Value for incrementing X, a function of period and xspacing
//float[] yvalues; // Using an array to store height values for the wave
float yvalues [10];
void setup() {
w = 320;
dx = 0.40212387;
yvalues = new float[10];
Serial.begin(9600);
}
void loop() {
Generatewave();
}
void Generatewave() {
// Increment theta (try different values for 'angular velocity' here
theta += 0.002;
// For every x value, calculate a y value with sine function
float x = theta;
for (int i = 0; i < yvalues.length; i++) {
yvalues[i] = sin(x)*10.0;
Serial.println(yvalues[i]);
x+=dx;
}
}