Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Controlling an LED strip with a radial potentiometer
- #include <Adafruit_NeoPixel.h>
- #ifdef __AVR__
- #include <avr/power.h>
- #endif
- #define PIN A1
- #define NUMPIXELS 5
- int potPin = A0;
- int val = 0;
- int writeval = 0;
- Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
- //Color values for the whole strip between 0 and 255
- int R = 100;
- int redMap = 0;
- int G = 100;
- int greenMap = 0;
- int B = 100;
- int blueMap = 0;
- void setup() {
- pixels.begin();
- Serial.begin(9600);
- for(int i=0; i<5; i++){
- pixels.setPixelColor(i, pixels.Color(R,0,0));
- }
- pixels.show();
- }
- void loop() {
- val = analogRead(potPin);
- writeval = map(val, 0, 1023, 0, 6);
- Serial.println(val);
- if(val<206){ //Red stays 100, green goes from 0-100, blue stays 0
- greenMap = map(val, 0, 205, 0, 100);
- for(int i=0; i<5; i++){
- pixels.setPixelColor(i, pixels.Color(R,greenMap,0));
- }
- pixels.show();
- }
- else if(val<411 && val>205){ //Red goes from 100-0, green stays 100, blue stays 0
- redMap = map(val, 206, 410, 100, 0);
- for(int i=0; i<5; i++){
- pixels.setPixelColor(i, pixels.Color(redMap,G,0));
- }
- pixels.show();
- }
- else if(val<616 && val>410){ //Red stays 0, green goes from 100-0, blue goes from 0-100
- greenMap = map(val, 411, 615, 100, 0);
- blueMap = map(val, 411, 615, 0, 100);
- for(int i=0; i<5; i++){
- pixels.setPixelColor(i, pixels.Color(0,greenMap,blueMap));
- }
- pixels.show();
- }
- else if(val<821 && val>615){ //Red goes from 0-100, green stays 0, blue stays 100
- redMap = map(val, 616, 820, 0, 100);
- for(int i=0; i<5; i++){
- pixels.setPixelColor(i, pixels.Color(redMap,0,B));
- }
- pixels.show();
- }
- else{
- for(int i=0; i<5; i++){ //Red stays 100, green stays 0, blue goes from 100-0
- blueMap = map(val, 821, 1023, 100, 0);
- pixels.setPixelColor(i, pixels.Color(R,0,blueMap));
- }
- pixels.show();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement