Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <Adafruit_NeoPixel.h>
- #define PIN 5
- #define NombreLeds 32
- int SensDuVent;
- int PositionLedSensDuVent;
- int PositionLedSensDuVentOpp;
- int Val;
- bool CAS1 =LOW;
- bool CAS2 =LOW;
- bool CAS3 =LOW;
- bool CAS4 =LOW;
- Adafruit_NeoPixel ring (NombreLeds, PIN, NEO_BGR + NEO_KHZ800);
- void setup()
- {
- ring.begin();
- ring.clear();
- ring.setBrightness(0);
- ring.show();
- Serial.begin(9600);
- }
- void loop()
- {
- Val = analogRead (A3);
- delay (10);
- if (Val >1023)
- {
- Val = 1023;
- }
- SensDuVent = (int) map(Val, 0, 1023, 0, 360);
- PositionLedSensDuVent = (int)(NombreLeds*SensDuVent/360);
- //if (PositionLedSensDuVent == 32 || PositionLedSensDuVent == 0)
- if ( (0 < PositionLedSensDuVent +1 && PositionLedSensDuVent > 31) || (0 <= PositionLedSensDuVent <= 0))
- {
- PositionLedSensDuVent = 0;
- PositionLedSensDuVentOpp = 16;
- CAS1 =HIGH;
- CAS2 =LOW;
- CAS3 =LOW;
- CAS4 =LOW;
- cas1();
- }
- //if ( 0 < PositionLedSensDuVent < 16)
- if ( 0 < PositionLedSensDuVent && PositionLedSensDuVent < 16)
- {
- PositionLedSensDuVentOpp = PositionLedSensDuVent + 16;
- CAS1 =LOW;
- CAS2 =HIGH;
- CAS3 =LOW;
- CAS4 =LOW;
- cas2();
- }
- //if (PositionLedSensDuVent == 16)
- if (15 < PositionLedSensDuVent && PositionLedSensDuVent < 17)
- {
- PositionLedSensDuVentOpp = 0;
- CAS1 =LOW;
- CAS2 =LOW;
- CAS3 =HIGH;
- CAS4 =LOW;
- cas3();
- }
- if (PositionLedSensDuVent > 16)
- {
- PositionLedSensDuVentOpp = PositionLedSensDuVent - 16;
- if ( 15 < PositionLedSensDuVent && PositionLedSensDuVent < 17)
- {
- PositionLedSensDuVentOpp = 32;
- }
- if( 16 < PositionLedSensDuVent && PositionLedSensDuVent <= 31)
- {
- PositionLedSensDuVentOpp = PositionLedSensDuVent -16;
- }
- CAS1 =LOW;
- CAS2 =LOW;
- CAS3 =LOW;
- CAS4 =HIGH;
- cas4();
- }
- delay (5);
- Serial.print ("SensDuVent = ");
- Serial.println (SensDuVent);
- Serial.print (" ");
- Serial.print ("PositionLedSensDuVent = ");
- Serial.println (PositionLedSensDuVent);
- Serial.print (" ");
- Serial.print ("PositionLedSensDuVentOpp = ");
- Serial.println (PositionLedSensDuVentOpp);
- Serial.print (" ");
- }
- void cas1 ()
- {
- //+++++++++++++++++++++++++++++++CAS1+++++++++++++++++++++++++++++
- if (CAS1 == HIGH)
- {
- delay (10);
- //CAS1 =HIGH;
- CAS2 =LOW;
- CAS3 =LOW;
- CAS4 =LOW;
- ring.setBrightness (255);
- ring.setPixelColor(PositionLedSensDuVent, 255, 0, 0); //BLUE
- ring.setPixelColor(PositionLedSensDuVentOpp, 0, 255, 0); //RED
- ring.show();
- for (int i = 1; i < PositionLedSensDuVentOpp; i++)
- {
- ring.setBrightness (255);
- ring.setPixelColor(i, 0, 0, 2); //GREEN
- ring.show();
- }
- for (int i = PositionLedSensDuVentOpp+1; i < NombreLeds; i++)
- {
- ring.setBrightness (255);
- ring.setPixelColor(i, 0, 0, 2); //GREEN
- ring.show();
- }
- }
- }
- void cas2 ()
- {
- //+++++++++++++++++++++++++++++++CAS2+++++++++++++++++++++++++++++
- if (CAS2 == HIGH)
- {
- delay (10);
- //PositionLedSensDuVentOpp = ((int) PositionLedSensDuVent +(NombreLeds/2));
- CAS1 =LOW;
- //CAS2 =LOW;
- CAS3 =LOW;
- CAS4 =LOW;
- ring.setBrightness (255);
- ring.setPixelColor (PositionLedSensDuVent, 255, 0, 0);
- ring.setPixelColor (PositionLedSensDuVentOpp, 0, 255, 0);
- ring.show();
- for (int i = 0; i < PositionLedSensDuVent; i++) // ******** De position zéro à position sens du vent -1 *******************
- //for (int i < PositionLedSensDuVent; i++)
- {
- ring.setBrightness (255);
- ring.setPixelColor(i, 0, 0, 2);
- ring.show();
- }
- for (int i = PositionLedSensDuVent+1; i < PositionLedSensDuVentOpp; i++) // ******** De position sens du vent +1 à position sens du vent Opposé -1 *******************
- //for (int i > PositionLedSensDuVent; i < PositionLedSensDuVentOpp; i++)
- {
- ring.setBrightness (255);
- ring.setPixelColor(i, 0, 0, 2);
- ring.show();
- }
- for (int i = PositionLedSensDuVentOpp+1; i < NombreLeds; i++) // ******** De position sens du vent Opposé +1 à nombre de leds -1 *******************
- //for (int i > PositionLedSensDuVentOpp+; i < NombreLeds; i++)
- {
- ring.setBrightness (255);
- ring.setPixelColor(i, 0, 0, 2);
- ring.show();
- }
- }
- }
- void cas3 ()
- {
- //+++++++++++++++++++++++++++++++CAS3+++++++++++++++++++++++++++++
- if (CAS3 == HIGH)
- {
- delay (10);
- //int PositionLedSensDuVentOpp = 0;
- CAS1 =LOW;
- CAS2 =LOW;
- //CAS3 =LOW;
- CAS4 =LOW;
- ring.setBrightness (255);
- ring.setPixelColor(PositionLedSensDuVent, 255, 0, 0);
- ring.setPixelColor(PositionLedSensDuVentOpp, 0, 255, 0);
- ring.show();
- for (int i = 1; i < PositionLedSensDuVent; i++) // ******** De position supérieure zéro à position sens du vent -1 *******************
- {
- ring.setBrightness (255);
- ring.setPixelColor(i, 0, 0, 2);
- ring.show();
- }
- for (int i = PositionLedSensDuVent+1; i < NombreLeds; i++) // ******** De position supérieure zéro à position sens du vent -1 *******************
- //for (int i > PositionLedSensDuVent; i < NombreLeds; i++)
- {
- ring.setBrightness (255);
- ring.setPixelColor(i, 0, 0, 2);
- ring.show();
- }
- for (int i = 1; i = PositionLedSensDuVent-1; i++) // ******** De position supérieure zéro à position sens du vent -1 *******************
- //for (int i >= 1; i <= PositionLedSensDuVent; i++)
- {
- ring.setBrightness (255);
- ring.setPixelColor(i, 0, 0, 2);
- ring.show();
- }
- }
- }
- void cas4 ()
- {
- //+++++++++++++++++++++++++++++++CAS4+++++++++++++++++++++++++++++
- if (CAS4 == HIGH)
- {
- delay (10);
- CAS1 =LOW;
- CAS2 =LOW;
- CAS3 =LOW;
- //CAS4 =LOW;
- ring.setBrightness (255);
- ring.setPixelColor(PositionLedSensDuVent, 255, 0, 0);
- ring.setPixelColor(PositionLedSensDuVentOpp, 0, 255, 0);
- ring.show();
- //for (int i > PositionLedSensDuVentOpp; i < PositionLedSensDuVent; i++) // ******** De position supérieure zéro à position sens du vent -1 *******************
- for (int i = PositionLedSensDuVentOpp +1; i < PositionLedSensDuVent; i++)
- {
- ring.setBrightness (255);
- ring.setPixelColor(i, 0, 0, 2);
- ring.show();
- }
- for (int i = PositionLedSensDuVent+1; i < NombreLeds; i++) // ******** De position sens du vent +1 àà position sens du vent Opposé -1 *******************
- {
- ring.setBrightness (255);
- ring.setPixelColor(i, 0, 0, 2);
- ring.show();
- }
- for (int i = 0; i < PositionLedSensDuVentOpp; i++) // ******** De position sens du vent Opposé +1 à nombre de leds -1 *******************
- {
- ring.setBrightness (255);
- ring.setPixelColor(i, 0, 0, 2);
- ring.show();
- }
- }
- delay (10);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement