Ok I now have a complete code with no errors when i verify it I uploaded it to my board and it does not work.. I have a 10kOhm Resistor running from pin 7 to ground and a switch running from pin 7 to +5v and I am pretty darn sure that is how that is supposed to be.. but when the switch is flipped or not flipped it only runs the fader code...
here is the finished code with no errors.. any idea why this is not working... oh and the two codes work fine by themselves
int rpin = 9;
int gpin = 10;
int bpin = 11;
int potpin = 2;
int readPin = 7;
float h;
int h_int;
int r = 0, g = 0, b = 0;
int val = 0;
void h2rgb(float h, int& R, int& G, int& B);
void fadeUp(int pin, int d = 10)
{
int i;
for (i = 255; i >= 0; i--)
{
analogWrite(pin, i);
delay(d);
}
}
void fadeDown(int pin, int d = 20)
{
int i;
for (i = 0; i <= 255; i++)
{
analogWrite(pin, i);
delay(d);
}
}
void setup()
{
Serial.begin(9600);
pinMode(rpin, OUTPUT);
pinMode(gpin, OUTPUT);
pinMode(bpin, OUTPUT);
pinMode(readPin, INPUT);
analogWrite(rpin, 255);
analogWrite(gpin, 255);
analogWrite(bpin, 255);
}
boolean wayOne = true;
void loop()
{
if(digitalRead(7) == HIGH)
{
wayOne = !wayOne;
}
if(wayOne)
loop1();
else
loop2();
}
void loop1()
{
fadeUp(bpin);
fadeUp(gpin);
fadeDown(bpin);
fadeUp(rpin);
fadeDown(gpin);
fadeUp(bpin);
fadeDown(rpin);
}
void loop2()
{
val = analogRead(potpin);
h = ((float)val)/1024;
h_int = (int) 360*h;
h2rgb(h,r,g,b);
Serial.print("POT value: ");
Serial.print(val);
Serial.print(" = Hue of ");
Serial.print(h_int);
Serial.print(" degrees. RGB values: ");
Serial.print(r);
Serial.print(" ");
Serial.print(g);
Serial.print(" ");
Serial.println(b);
analogWrite(rpin, r);
analogWrite(gpin, g);
analogWrite(bpin, b);
}
void h2rgb(float h, int& R, int& G, int& B) {
int var_i;
float S=1, V=1, var_1, var_2, var_3, var_h, var_r, var_g, var_b;
if ( S == 0 )
{
R = V * 255;
G = V * 255;
B = V * 255;
}
else
{
var_h = h * 6;
if ( var_h == 6 ) var_h = 0;
var_i = int( var_h ) ;
var_1 = V * ( 1 - S );
var_2 = V * ( 1 - S * ( var_h - var_i ) );
var_3 = V * ( 1 - S * ( 1 - ( var_h - var_i ) ) );
if ( var_i == 0 ) {
var_r = V ;
var_g = var_3 ;
var_b = var_1 ;
}
else if ( var_i == 1 ) {
var_r = var_2 ;
var_g = V ;
var_b = var_1 ;
}
else if ( var_i == 2 ) {
var_r = var_1 ;
var_g = V ;
var_b = var_3 ;
}
else if ( var_i == 3 ) {
var_r = var_1 ;
var_g = var_2 ;
var_b = V ;
}
else if ( var_i == 4 ) {
var_r = var_3 ;
var_g = var_1 ;
var_b = V ;
}
else {
var_r = V ;
var_g = var_1 ;
var_b = var_2 ;
}
R = (1-var_r) * 255;
G = (1-var_g) * 255;
B = (1-var_b) * 255;
}
}