SOUND REACTIVE CUBE
#include "FastLED.h" //fast led library | |
#define NUM_LEDS 10 //total no. of leds used | |
#define DATA_PIN 5 //digital pin at which the data pin is connected | |
#define mic A5 //analog input from mic module | |
int mic_Value; //to save raw value from mic | |
int red, green, blue; //to store RGB color values | |
CRGB leds[NUM_LEDS]; //fast led function | |
void setup() { | |
FastLED.addLeds<UCS1903B, DATA_PIN, RGB>(leds, NUM_LEDS); //as our led IC is UCS1903B,fast led support lots of ICs, find more | |
//FastLED.addLeds<WS2812B, DATA_PIN, RGB>(leds, NUM_LEDS); //if you are using WS2812B insted of UCS1903B | |
LEDS.setBrightness(200); //setting brightness of LED (0 to 255) //info at fastled.io | |
randomSeed(analogRead(0));// for generating random no. by taking noise from analog pin 0 | |
for (int i = 0; i <= 9; i++) //for changing color of all 10 LEDs | |
{ | |
leds[i] = CRGB(200, 200, 200); //for initial white color | |
LEDS.show(); //fastled function, without this function the colors won't be updated | |
} | |
} | |
void loop() { | |
mic_Value = analogRead(mic); //storing analog values from mic to mic_value | |
if(mic_Value>100) //to avoid small noise | |
{ | |
for(int i=0;i<=9;i++)//for changing color of all 10 LEDs | |
{ | |
red=random(255); //random red color value between 0 to 255 | |
green=random(255); //random green color value between 0 to 255 | |
blue=random(255); //random blue color value between 0 to 255 | |
leds[i]=CRGB(red,green,blue); //assigning color values to LEDs | |
LEDS.show(); | |
} | |
} | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment