diff --git a/build/shared/examples/08.Strings/StringToIntRGB/StringToIntRGB.ino b/build/shared/examples/08.Strings/StringToIntRGB/StringToIntRGB.ino deleted file mode 100644 index f79b95283..000000000 --- a/build/shared/examples/08.Strings/StringToIntRGB/StringToIntRGB.ino +++ /dev/null @@ -1,235 +0,0 @@ -/* - Serial RGB controller - - Reads a serial input string looking for three comma-separated - integers with a newline at the end. Values should be between - 0 and 255. The sketch uses those values to set the color - of an RGB LED attached to pins 9 - 11. - - The circuit: - * Common-anode RGB LED cathodes attached to pins 9 - 11 - * LED anode connected to pin 13 - - To turn on any given channel, set the pin LOW. - To turn off, set the pin HIGH. The higher the analogWrite level, - the lower the brightness. - - created 29 Nov 2010 - by Tom Igoe - - This example code is in the public domain. - */ - -String inString = ""; // string to hold input -int currentColor = 0; -int red, green, blue = 0; - -void setup() { - // Open serial communications and wait for port to open: - Serial.begin(9600); - while (!Serial) { - ; // wait for serial port to connect. Needed for Leonardo only - } - - // send an intro: - Serial.println("\n\nString toInt() RGB:"); - Serial.println(); - // set LED cathode pins as outputs: - pinMode(9, OUTPUT); - pinMode(10, OUTPUT); - pinMode(11, OUTPUT); - // turn on pin 13 to power the LEDs: - pinMode(13, OUTPUT); - digitalWrite(13, HIGH); -} - -void loop() { - int inChar; - - // Read serial input: - if (Serial.available() > 0) { - inChar = Serial.read(); - } - - if (isDigit(inChar)) { - // convert the incoming byte to a char - // and add it to the string: - inString += (char)inChar; - } - - // if you get a comma, convert to a number, - // set the appropriate color, and increment - // the color counter: - if (inChar == ',') { - // do something different for each value of currentColor: - switch (currentColor) { - case 0: // 0 = red - red = inString.toInt(); - // clear the string for new input: - inString = ""; - break; - case 1: // 1 = green: - green = inString.toInt(); - // clear the string for new input: - inString = ""; - break; - } - currentColor++; - } - // if you get a newline, you know you've got - // the last color, i.e. blue: - if (inChar == '\n') { - blue = inString.toInt(); - - // set the levels of the LED. - // subtract value from 255 because a higher - // analogWrite level means a dimmer LED, since - // you're raising the level on the anode: - analogWrite(11, 255 - red); - analogWrite(9, 255 - green); - analogWrite(10, 255 - blue); - - // print the colors: - Serial.print("Red: "); - Serial.print(red); - Serial.print(", Green: "); - Serial.print(green); - Serial.print(", Blue: "); - Serial.println(blue); - - // clear the string for new input: - inString = ""; - // reset the color counter: - currentColor = 0; - } - -} - - -/* -Here's a Processing sketch that will draw a color wheel and send a serial - string with the color you click on: - - // Subtractive Color Wheel with Serial - // Based on a Processing example by Ira Greenberg. - // Serial output added by Tom Igoe - // - // The primaries are red, yellow, and blue. The secondaries are green, - // purple, and orange. The tertiaries are yellow-orange, red-orange, - // red-purple, blue-purple, blue-green, and yellow-green. - // - // Create a shade or tint of the subtractive color wheel using - // SHADE or TINT parameters. - - // Updated 29 November 2010. - - - - import processing.serial.*; - - int segs = 12; - int steps = 6; - float rotAdjust = TWO_PI / segs / 2; - float radius; - float segWidth; - float interval = TWO_PI / segs; - - Serial myPort; - - void setup() { - size(200, 200); - background(127); - smooth(); - ellipseMode(RADIUS); - noStroke(); - // make the diameter 90% of the sketch area - radius = min(width, height) * 0.45; - segWidth = radius / steps; - - // swap which line is commented out to draw the other version - // drawTintWheel(); - drawShadeWheel(); - // open the first serial port in your computer's list - myPort = new Serial(this, Serial.list()[0], 9600); - } - - - void drawShadeWheel() { - for (int j = 0; j < steps; j++) { - color[] cols = { - color(255-(255/steps)*j, 255-(255/steps)*j, 0), - color(255-(255/steps)*j, (255/1.5)-((255/1.5)/steps)*j, 0), - color(255-(255/steps)*j, (255/2)-((255/2)/steps)*j, 0), - color(255-(255/steps)*j, (255/2.5)-((255/2.5)/steps)*j, 0), - color(255-(255/steps)*j, 0, 0), - color(255-(255/steps)*j, 0, (255/2)-((255/2)/steps)*j), - color(255-(255/steps)*j, 0, 255-(255/steps)*j), - color((255/2)-((255/2)/steps)*j, 0, 255-(255/steps)*j), - color(0, 0, 255-(255/steps)*j), - color(0, 255-(255/steps)*j, (255/2.5)-((255/2.5)/steps)*j), - color(0, 255-(255/steps)*j, 0), - color((255/2)-((255/2)/steps)*j, 255-(255/steps)*j, 0) - }; - for (int i = 0; i < segs; i++) { - fill(cols[i]); - arc(width/2, height/2, radius, radius, - interval*i+rotAdjust, interval*(i+1)+rotAdjust); - } - radius -= segWidth; - } - } - - - void drawTintWheel() { - for (int j = 0; j < steps; j++) { - color[] cols = { - color((255/steps)*j, (255/steps)*j, 0), - color((255/steps)*j, ((255/1.5)/steps)*j, 0), - color((255/steps)*j, ((255/2)/steps)*j, 0), - color((255/steps)*j, ((255/2.5)/steps)*j, 0), - color((255/steps)*j, 0, 0), - color((255/steps)*j, 0, ((255/2)/steps)*j), - color((255/steps)*j, 0, (255/steps)*j), - color(((255/2)/steps)*j, 0, (255/steps)*j), - color(0, 0, (255/steps)*j), - color(0, (255/steps)*j, ((255/2.5)/steps)*j), - color(0, (255/steps)*j, 0), - color(((255/2)/steps)*j, (255/steps)*j, 0) - }; - for (int i = 0; i < segs; i++) { - fill(cols[i]); - arc(width/2, height/2, radius, radius, - interval*i+rotAdjust, interval*(i+1)+rotAdjust); - } - radius -= segWidth; - } - } - - void draw() { - // nothing happens here - } - - void mouseReleased() { - // get the color of the mouse position's pixel: - color targetColor = get(mouseX, mouseY); - // get the component values: - int r = int(red(targetColor)); - int g = int(green(targetColor)); - int b = int(blue(targetColor)); - // make a comma-separated string: - String colorString = r + "," + g + "," + b + "\n"; - // send it out the serial port: - myPort.write(colorString ); - } - -*/ - - - - - - - - - -