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