Tuesday, April 26, 2011

New code

Code including the BlinkM. To be tested later today. 


#include <Wire.h>
#include "BlinkM_funcs.h"

int blinkm_addr = 9;//address to blinkM
byte r,g,b;

int analogPin = 0;
int analogPin2 = 1;
int analogPin3 = 2;

int val_a;
int val_b;
int val_c;


void setup() {
  pinMode(analogPin, INPUT);
  pinMode(analogPin2, INPUT);
  pinMode(analogPin3, INPUT);
  BlinkM_beginWithPower();
  BlinkM_stopScript(blinkm_addr);//stop the BlinkM
  BlinkM_setFadeSpeed(blinkm_addr, 1);//set up fade param for a smooth fade
}


void loop(){ 
val_a = analogRead(analogPin);
val_b = analogRead(analogPin2);
val_c = analogRead(analogPin3);


  if (val_b > 500 && val_c > 500) {              
    displayColor(0);

  }
  else if (val_b > 500 && val_c < 500) {              
    displayColor(1);
  }
 
  else if (val_a > 500 && val_b <500) {         
    displayColor(2);

  }
   else if (val_a < 300) {   
    displayColor(3);
}
}
void displayColor(int val)
{

  switch(val)
  {
    case 0:
      //0;34;102 Royal Blue 5
      r = 0;
      g = 34;
      b = 102;
      break;
    case 1:
      //255;0;0 RED
      r = 40;
      g = 30;
      b = 102;
    break;
     case 2:
      //0;34;102 Royal Blue 5
      r = 100;
      g = 0;
      b = 40;
      break;
       case 3:
      //255;0;0 RED
      r = 255;
      g = 0;
      b = 0;
      break;
   }
   BlinkM_fadeToRGB(blinkm_addr, r,  g,  b);//call which fades to desired color

   }

No comments:

Post a Comment