Advertisement
FahmiG

Arduino RGB Strip

Nov 1st, 2014
460
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 5.85 KB | None | 0 0
  1. /*
  2. Controlling RGB led strip using arduino.
  3. Use uln2003 as driver for led strip.
  4.  
  5. https://www.youtube.com/watch?v=nipFJ5QvkOM
  6. */
  7.  
  8. int ledR = 3;    // LED connected to digital pin 9
  9. int ledG = 5;
  10. int ledB = 6;
  11.  
  12. void setup()  
  13. {
  14.   pinMode(ledR, OUTPUT);  
  15.   pinMode(ledG, OUTPUT);  
  16.   pinMode(ledB, OUTPUT);
  17. }
  18.  
  19. void loop()  
  20. {
  21.         //+++++++++++++++++++++++++++ Blink +++++++++++++++++++++++++++
  22.         analogWrite(ledR, 255);    
  23.         delay(300);
  24.         analogWrite(ledR, 0);  
  25.         delay(300);
  26.         analogWrite(ledG, 255);    
  27.         delay(300);
  28.         analogWrite(ledG, 0);  
  29.         delay(300);
  30.         analogWrite(ledB, 255);    
  31.         delay(300);
  32.         analogWrite(ledB, 0);  
  33.         delay(300);
  34.        
  35.         analogWrite(ledR, 255);    
  36.         delay(300);
  37.         analogWrite(ledR, 0);  
  38.         delay(300);
  39.         analogWrite(ledG, 255);    
  40.         delay(300);
  41.         analogWrite(ledG, 0);  
  42.         delay(300);
  43.         analogWrite(ledB, 255);    
  44.         delay(300);
  45.         analogWrite(ledB, 0);  
  46.         delay(300);
  47.        
  48.         //++++++++++ Fade +++++++++++++++++++
  49.  
  50.   // fade in from min to max in increments of 5 points:
  51.   for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
  52.     // sets the value (range from 0 to 255):
  53.     analogWrite(ledR, fadeValue);        
  54.     // wait for 30 milliseconds to see the dimming effect    
  55.     delay(30);                            
  56.   }
  57.  
  58.   // fade out from max to min in increments of 5 points:
  59.   for(int fadeValue = 255 ; fadeValue >= 0; fadeValue -=5) {
  60.     // sets the value (range from 0 to 255):
  61.     analogWrite(ledR, fadeValue);        
  62.     // wait for 30 milliseconds to see the dimming effect    
  63.     delay(30);                            
  64.   }
  65.  
  66.     // fade in from min to max in increments of 5 points:
  67.   for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
  68.     // sets the value (range from 0 to 255):
  69.     analogWrite(ledG, fadeValue);        
  70.     // wait for 30 milliseconds to see the dimming effect    
  71.     delay(30);                            
  72.   }
  73.  
  74.   // fade out from max to min in increments of 5 points:
  75.   for(int fadeValue = 255 ; fadeValue >= 0; fadeValue -=5) {
  76.     // sets the value (range from 0 to 255):
  77.     analogWrite(ledG, fadeValue);        
  78.     // wait for 30 milliseconds to see the dimming effect    
  79.     delay(30);                            
  80.   }
  81.  
  82.  
  83.     // fade in from min to max in increments of 5 points:
  84.   for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
  85.     // sets the value (range from 0 to 255):
  86.     analogWrite(ledB, fadeValue);        
  87.     // wait for 30 milliseconds to see the dimming effect    
  88.     delay(30);                            
  89.   }
  90.  
  91.   // fade out from max to min in increments of 5 points:
  92.   for(int fadeValue = 255 ; fadeValue >= 0; fadeValue -=5) {
  93.     // sets the value (range from 0 to 255):
  94.     analogWrite(ledB, fadeValue);        
  95.     // wait for 30 milliseconds to see the dimming effect    
  96.     delay(30);                            
  97.   }
  98.  
  99.   //+++++++++++++++ Rainbow +++++++
  100.   analogWrite(ledR, 255);  
  101.   analogWrite(ledG, 0);  
  102.   analogWrite(ledB, 0);  
  103.   delay(1000);  
  104.  
  105.   analogWrite(ledR, 255);  
  106.   analogWrite(ledG, 127);  
  107.   analogWrite(ledB, 0);  
  108.   delay(1000);
  109.  
  110.   analogWrite(ledR, 255);  
  111.   analogWrite(ledG, 255);  
  112.   analogWrite(ledB, 0);  
  113.   delay(1000);
  114.  
  115.   analogWrite(ledR, 0);  
  116.   analogWrite(ledG, 255);  
  117.   analogWrite(ledB, 0);  
  118.   delay(1000);
  119.  
  120.   analogWrite(ledR, 0);  
  121.   analogWrite(ledG, 0);  
  122.   analogWrite(ledB, 255);  
  123.   delay(1000);
  124.  
  125.   analogWrite(ledR, 75);  
  126.   analogWrite(ledG, 0);  
  127.   analogWrite(ledB, 130);  
  128.   delay(1000);
  129.  
  130.   analogWrite(ledR, 143);  
  131.   analogWrite(ledG, 0);  
  132.   analogWrite(ledB, 255);  
  133.   delay(1000);  
  134.  
  135.  
  136.   //+++++++++++ fade combine color +++++++++++++++++++++++
  137.       for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
  138.     // sets the value (range from 0 to 255):
  139.     analogWrite(ledB, fadeValue);  
  140.     analogWrite(ledG, 255-fadeValue);    
  141.     // wait for 30 milliseconds to see the dimming effect    
  142.     delay(100);                            
  143.   }
  144.   // fade in from min to max in increments of 5 points:
  145.   for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
  146.     // sets the value (range from 0 to 255):
  147.     analogWrite(ledR, fadeValue);  
  148.     analogWrite(ledB, 255-fadeValue);  
  149.     // wait for 30 milliseconds to see the dimming effect    
  150.     delay(100);                            
  151.   }
  152.       for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
  153.     // sets the value (range from 0 to 255):
  154.     analogWrite(ledG, fadeValue);  
  155.     analogWrite(ledR, 255-fadeValue);    
  156.     // wait for 30 milliseconds to see the dimming effect    
  157.     delay(100);                            
  158.   }
  159.   //++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
  160.         for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
  161.     // sets the value (range from 0 to 255):
  162.     analogWrite(ledB, fadeValue);  
  163.     analogWrite(ledG, 255-fadeValue);  
  164.     // wait for 30 milliseconds to see the dimming effect    
  165.     delay(100);                            
  166.   }
  167.   // fade in from min to max in increments of 5 points:
  168.   for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
  169.     // sets the value (range from 0 to 255):
  170.     analogWrite(ledR, fadeValue);  
  171.     analogWrite(ledB, 255-fadeValue);    
  172.     // wait for 30 milliseconds to see the dimming effect    
  173.     delay(100);                            
  174.   }
  175.       for(int fadeValue = 0 ; fadeValue <= 255; fadeValue +=5) {
  176.     // sets the value (range from 0 to 255):
  177.     analogWrite(ledG, fadeValue);  
  178.     analogWrite(ledR, 255-fadeValue);  
  179.     // wait for 30 milliseconds to see the dimming effect    
  180.     delay(100);                            
  181.   }
  182.  
  183. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement