Advertisement
LeventeDaradici

Blinking LED next level ! Christmas lights ! - Arduino for beginners

Dec 9th, 2021
286
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 8.64 KB | None | 0 0
  1. //String 1
  2. #define pinR1 11
  3. #define pinG1 10
  4. #define pinB1 9
  5.  
  6. //String 2
  7. #define pinR2 6
  8. #define pinG2 5          
  9. #define pinB2 3
  10.  
  11. //String 3
  12. #define pinR3 A0
  13. #define pinG3 A1
  14. #define pinB3 A2
  15.  
  16. //String 4
  17. #define pinR4 A3
  18. #define pinG4 A4          
  19. #define pinB4 A5
  20.  
  21.  
  22. void setup() {
  23.  
  24.   pinMode(pinR1, OUTPUT);
  25.   pinMode(pinG1, OUTPUT);
  26.   pinMode(pinB1, OUTPUT);
  27.   pinMode(pinR2, OUTPUT);
  28.   pinMode(pinG2, OUTPUT);
  29.   pinMode(pinB2, OUTPUT);
  30.   pinMode(pinR3, OUTPUT);
  31.   pinMode(pinG3, OUTPUT);
  32.   pinMode(pinB3, OUTPUT);
  33.   pinMode(pinR4, OUTPUT);
  34.   pinMode(pinG4, OUTPUT);
  35.   pinMode(pinB4, OUTPUT);
  36. }
  37.  
  38. void loop()
  39. {
  40.   Anim1(150,15);
  41.   Anim2(200,40);
  42.   Anim3(250,40);
  43.   Anim4(200,40);
  44.   Anim5(250,20);
  45.   Anim6(3,3);
  46.   Anim7(5,1);
  47. }                  
  48.  
  49.  
  50. void Anim1(int wait, int durata)
  51. {
  52.   for(int d = 1; d < durata; d++)
  53.      {
  54.      for(int r = 1; r <= 4; r++)
  55.        {
  56.          Led(r,255,0,0);
  57.          delay(wait);
  58.          Led(r,0,0,0);
  59.        }
  60.      }
  61.   for(int d = 1; d <= durata; d++)
  62.      {
  63.      for(int r = 1; r <= 4; r++)
  64.        {
  65.          Led(r,0,255,0);
  66.          delay(wait);
  67.          Led(r,0,0,0);
  68.        }
  69.      }
  70.   for(int d = 1; d <= durata; d++)
  71.      {
  72.      for(int r = 1; r <= 4; r++)
  73.        {
  74.          Led(r,0,0,255);
  75.          delay(wait);
  76.          Led(r,0,0,0);
  77.        }
  78.      }
  79.   for(int d = 1; d <= durata; d++)
  80.      {
  81.      for(int r = 1; r <= 4; r++)
  82.        {
  83.          Led(r,255,0,255);
  84.          delay(wait);
  85.          Led(r,0,0,0);
  86.        }
  87.      }
  88.   for(int d = 1; d <= durata; d++)
  89.      {
  90.      for(int r = 1; r <= 4; r++)
  91.        {
  92.          Led(r,0,255,255);
  93.          delay(wait);
  94.          Led(r,0,0,0);
  95.        }
  96.      }
  97.   for(int d = 1; d <= durata; d++)
  98.      {
  99.      for(int r = 1; r <= 4; r++)
  100.        {
  101.          Led(r,255,255,0);
  102.          delay(wait);
  103.          Led(r,0,0,0);
  104.        }
  105.      }
  106.   for(int d = 1; d <= durata; d++)
  107.      {
  108.      for(int r = 1; r <= 4; r++)
  109.        {
  110.          Led(r,255,255,255);
  111.          delay(wait);
  112.          Led(r,0,0,0);
  113.        }
  114.      }
  115. }
  116.  
  117. void Anim2(int wait, int rep)
  118. {
  119.   for(int i = 0; i < rep; i++)
  120.   {
  121.   int str = rand() % 5;
  122.   int r = rand() % 256;
  123.   int g = rand() % 256;
  124.   int b = rand() % 256;
  125.   Led(str, r, g, b);
  126.   delay(wait);
  127.   }  
  128. }
  129.  
  130. void Anim3(int wait, int rep)
  131. {
  132.   for(int i = 0; i < rep; i++)
  133.   {
  134.   int str = rand() % 5;
  135.   int r = rand() % 256;
  136.   int g = rand() % 256;
  137.   int b = rand() % 256;
  138.   Led(1, r, g, b);
  139.   Led(2, r, g, b);
  140.   Led(3, r, g, b);
  141.   Led(4, r, g, b);
  142.   delay(wait);
  143.   }  
  144. }
  145.  
  146. void Anim4(int wait, int durata)
  147. {
  148.   int comparator;
  149.   int comparator2;
  150.   int comparator3;
  151.   for(int d = 1; d < durata; d++)
  152.      {
  153.      for(int r = 1; r <= 4; r++)
  154.        {
  155.          Led(r,255,0,0);
  156.  
  157.          comparator = r-1;
  158.          if (comparator < 1) comparator = comparator + 4;
  159.          Led(comparator,0,255,0);
  160.  
  161.          comparator2 = r-2;
  162.          if (comparator2 < 1) comparator2 = comparator2 + 4;
  163.          Led(comparator2,0,0,255);
  164.  
  165.          comparator3 = r-3;
  166.          if (comparator3 < 1) comparator3 = comparator3 + 4;
  167.          Led(comparator3,255,255,255);
  168.          delay(wait);
  169.          Led(r,0,0,0);
  170.        }
  171.      }
  172. }
  173.  
  174. void Anim5(int wait, int durata)
  175. {
  176.   int comparator;
  177.   int comparator2;
  178.   int comparator3;
  179.   for(int d = 1; d < durata; d++)
  180.      {
  181.      for(int r = 1; r <= 4; r++)
  182.        {
  183.          Led(r,255,0,0);
  184.  
  185.          comparator = r-1;
  186.          if (comparator < 1) comparator = comparator + 4;
  187.          Led(comparator,255,0,0);
  188.  
  189.          comparator2 = r-2;
  190.          if (comparator2 < 1) comparator2 = comparator2 + 4;
  191.          Led(comparator2,0,0,255);
  192.  
  193.          comparator3 = r-3;
  194.          if (comparator3 < 1) comparator3 = comparator3 + 4;
  195.          Led(comparator3,0,0,255);
  196.          delay(wait);
  197.          Led(r,0,0,0);
  198.          delay(wait);
  199.        }
  200.      }
  201. }
  202.  
  203. void Anim6(int wait, int durata)
  204. {
  205.   Led(1,0,0,0);
  206.   Led(2,0,0,0);
  207.   Led(3,0,0,0);
  208.   Led(4,0,0,0);
  209.   for(int d = 0; d < durata; d++)
  210.      {
  211.        int x = 1;
  212.            for (int i = 0; i > -1; i = i + x)
  213.                {
  214.                   Led(1,i,0,0);
  215.                   Led(2,i,0,0);
  216.                   if (i == 255) x = -1;            
  217.                   delay(wait);
  218.                }
  219.      }
  220.  
  221.   for(int d = 0; d < durata; d++)
  222.      {
  223.        int x = 1;
  224.            for (int i = 0; i > -1; i = i + x)
  225.                {
  226.                   Led(1,0,i,0);
  227.                   Led(2,0,i,0);
  228.                   if (i == 255) x = -1;            
  229.                   delay(wait);
  230.                }
  231.      }
  232.  
  233.   for(int d = 0; d < durata; d++)
  234.      {
  235.        int x = 1;
  236.            for (int i = 0; i > -1; i = i + x)
  237.                {
  238.                   Led(1,0,0,i);
  239.                   Led(2,0,0,i);
  240.                   if (i == 255) x = -1;            
  241.                   delay(wait);
  242.                }
  243.      }
  244.  
  245.   for(int d = 0; d < durata; d++)
  246.      {
  247.        int x = 1;
  248.            for (int i = 0; i > -1; i = i + x)
  249.                {
  250.                   Led(1,i,0,i);
  251.                   Led(2,i,0,i);
  252.                   if (i == 255) x = -1;            
  253.                   delay(wait);
  254.                }
  255.      }
  256.  
  257.   for(int d = 0; d < durata; d++)
  258.      {
  259.        int x = 1;
  260.            for (int i = 0; i > -1; i = i + x)
  261.                {
  262.                   Led(1,i,i,0);
  263.                   Led(2,i,i,0);
  264.                   if (i == 255) x = -1;            
  265.                   delay(wait);
  266.                }
  267.      }
  268.  
  269.   for(int d = 0; d < durata; d++)
  270.      {
  271.        int x = 1;
  272.            for (int i = 0; i > -1; i = i + x)
  273.                {
  274.                   Led(1,i,i,i);
  275.                   Led(2,i,i,i);
  276.                   if (i == 255) x = -1;            
  277.                   delay(wait);
  278.                }
  279.      }
  280.  
  281. }
  282.  
  283. void Anim7(int wait, int durata)
  284. {
  285.   Led(1,0,0,0);
  286.   Led(2,0,0,0);
  287.   Led(3,0,0,0);
  288.   Led(4,0,0,0);
  289.   for(int d = 0; d < durata; d++)
  290.      {
  291.        int x = 1;
  292.            for (int i = 0; i > -1; i = i + x)
  293.                {
  294.                   Led(1,i,0,0);
  295.                   Led(2,i,0,0);                  
  296.                   Led(3,i,0,0);
  297.                   Led(4,i,0,0);
  298.                   if (i == 255) x = -1;            
  299.                   delay(wait);
  300.                }
  301.      }
  302.  
  303.   for(int d = 0; d < durata; d++)
  304.      {
  305.        int x = 1;
  306.            for (int i = 0; i > -1; i = i + x)
  307.                {
  308.                   Led(1,0,i,0);
  309.                   Led(2,0,i,0);
  310.                   Led(3,0,i,0);
  311.                   Led(4,0,i,0);
  312.                   if (i == 255) x = -1;            
  313.                   delay(wait);
  314.                }
  315.      }
  316.  
  317.   for(int d = 0; d < durata; d++)
  318.      {
  319.        int x = 1;
  320.            for (int i = 0; i > -1; i = i + x)
  321.                {
  322.                   Led(1,0,0,i);
  323.                   Led(2,0,0,i);
  324.                   Led(3,0,0,i);
  325.                   Led(4,0,0,i);
  326.                   if (i == 255) x = -1;            
  327.                   delay(wait);
  328.                }
  329.      }
  330.  
  331.   for(int d = 0; d < durata; d++)
  332.      {
  333.        int x = 1;
  334.            for (int i = 0; i > -1; i = i + x)
  335.                {
  336.                   Led(1,i,0,i);
  337.                   Led(2,i,0,i);
  338.                   Led(3,255,0,i);
  339.                   Led(4,255,0,i);
  340.                   if (i == 255) x = -1;            
  341.                   delay(wait);
  342.                }
  343.      }
  344.  
  345.   for(int d = 0; d < durata; d++)
  346.      {
  347.        int x = 1;
  348.            for (int i = 0; i > -1; i = i + x)
  349.                {
  350.                   Led(1,i,i,0);
  351.                   Led(2,i,i,0);
  352.                   Led(3,i,i,0);
  353.                   Led(4,i,i,0);
  354.                   if (i == 255) x = -1;            
  355.                   delay(wait);
  356.                }
  357.      }
  358.  
  359.   for(int d = 0; d < durata; d++)
  360.      {
  361.        int x = 1;
  362.            for (int i = 0; i > -1; i = i + x)
  363.                {
  364.                   Led(1,i,i,i);
  365.                   Led(2,i,i,i);
  366.                   Led(3,i,i,i);
  367.                   Led(4,i,i,i);
  368.                   if (i == 255) x = -1;            
  369.                   delay(wait);
  370.                }
  371.      }
  372.  
  373. }
  374.  
  375.  
  376.  
  377. void Led(int Number, int Red, int Green, int Blue)
  378. {
  379.   if(Number == 1)
  380.   {
  381.     analogWrite(pinR1, Red);
  382.     analogWrite(pinG1, Green);
  383.     analogWrite(pinB1, Blue);
  384.   }
  385.   if(Number == 2)
  386.   {
  387.     analogWrite(pinR2, Red);
  388.     analogWrite(pinG2, Green);
  389.     analogWrite(pinB2, Blue);
  390.   }
  391.     if(Number == 3)
  392.   {
  393.     analogWrite(pinR3, Red);
  394.     analogWrite(pinG3, Green);
  395.     analogWrite(pinB3, Blue);
  396.   }
  397.   if(Number == 4)
  398.   {
  399.     analogWrite(pinR4, Red);
  400.     analogWrite(pinG4, Green);
  401.     analogWrite(pinB4, Blue);
  402.   }
  403. }
  404.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement