From c01bc2b62f76a5d417e5ed13dcb0c047a4f67224 Mon Sep 17 00:00:00 2001 From: Cristian Maglie Date: Sun, 6 Jan 2013 18:38:03 +0100 Subject: Merged upcoming 1.0.4 and updated revision log --- .../Beginners/EsploraLedShow2/EsploraLedShow2.ino | 55 ++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 libraries/Esplora/Beginners/EsploraLedShow2/EsploraLedShow2.ino (limited to 'libraries/Esplora/Beginners/EsploraLedShow2/EsploraLedShow2.ino') diff --git a/libraries/Esplora/Beginners/EsploraLedShow2/EsploraLedShow2.ino b/libraries/Esplora/Beginners/EsploraLedShow2/EsploraLedShow2.ino new file mode 100644 index 0000000..8f9f8a2 --- /dev/null +++ b/libraries/Esplora/Beginners/EsploraLedShow2/EsploraLedShow2.ino @@ -0,0 +1,55 @@ +/* + Esplora Led/Microphone + + This simple sketch reads the microphone, light sensor, and slider. + Then it uses those readings to set the brightness of red, green and blue + channels of the RGB LED. The red channel will change with the loudness + "heared" by the microphone, the green channel changes as the + amount of light in the room and the blue channel will change + with the position of the slider. + + Created on 22 november 2012 + By Enrico Gueli + Modified 24 Nov 2012 + by Tom Igoe +*/ + +#include + +void setup() { + // initialize the serial communication: + Serial.begin(9600); +} + +int lowLight = 400; // the light sensor reading when it's covered +int highLight = 1023; // the maximum light sensor reading +int minGreen = 0; // minimum brightness of the green LED +int maxGreen = 100; // maximum brightness of the green LED + +void loop() { + // read the sensors into variables: + int mic = Esplora.readMicrophone(); + int light = Esplora.readLightSensor(); + int slider = Esplora.readSlider(); + + // convert the sensor readings to light levels: + byte red = constrain(mic, 0, 255); + byte green = constrain( + map(light, lowLight, highLight, minGreen, maxGreen), + 0, 255); + byte blue = slider/4; + + // print the light levels (to see what's going on): + Serial.print(red); + Serial.print(' '); + Serial.print(green); + Serial.print(' '); + Serial.println(blue); + + // write the light levels to the LED. + // note that the green value is always 0: + Esplora.writeRGB(red, green, blue); + + // add a delay to keep the LED from flickering: + delay(10); +} -- cgit v1.2.3-18-g5258