Untitled
unknown
plain_text
3 years ago
4.4 kB
4
Indexable
#include <Adafruit_NeoPixel.h> #define PIN 44 #define NUMPIXELS 32 // number of neopixels in Ring Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); int send_route = 28; int send_croisement = 38; int send_gauche = 40; int send_droit = 26; int send_plaf = 7; bool feux_route = false; bool feux_croisement = false; int read_route = 12;//12 int read_croisement = 13;//13 int read_gauche = 11; int read_warning = 10;//10 int read_droit = 9;//9 int read_plaf = 6;//6 void setup() { Serial.begin(9600); pixels.begin(); } void loop() { if (digitalRead(read_route) == 1) { route(); Serial.println("Route"); while (digitalRead(read_route) == 1) { delay(100); } } if (digitalRead(read_croisement) == 1) { croisement(); Serial.println("Croisement"); while (digitalRead(read_croisement) == 1) { delay(100); } } if (digitalRead(read_gauche) == 1) { gauche(); Serial.println("Gauche"); while (digitalRead(read_gauche) == 1) { delay(100); } } if (digitalRead(read_warning) == 1) { warning(); Serial.println("Warning"); while (digitalRead(read_warning) == 1) { delay(100); } } if (digitalRead(read_droit) == 1) { droit(); Serial.println("Droit"); while (digitalRead(read_droit) == 1) { delay(100); } } if (digitalRead(read_plaf) == 1) { plaf(); Serial.println("Plaff"); while (digitalRead(read_plaf) == 1) { delay(100); } } digitalWrite(send_gauche, LOW); digitalWrite(send_droit, LOW); } void route() { if (feux_route == false) { feux_route = true; feux_croisement = false; digitalWrite(send_route, HIGH); for(int i=0;i<9;i++){ pixels.setPixelColor(i, pixels.Color(255, 255, 255)); pixels.show(); } for(int i=16;i<25;i++){ pixels.setPixelColor(i, pixels.Color(255, 255, 255)); pixels.show(); } } else { feux_route = false; digitalWrite(send_route, LOW); for(int i=0;i<9;i++){ pixels.setPixelColor(i, pixels.Color(0, 0, 0)); pixels.show(); } for(int i=16;i<25;i++){ pixels.setPixelColor(i, pixels.Color(0, 0, 0)); pixels.show(); } } } void croisement() { if (feux_croisement == false) { feux_croisement = true; feux_route = false; digitalWrite(send_croisement, HIGH); for(int i=0;i<9;i++){ pixels.setPixelColor(i, pixels.Color(50, 50, 50)); pixels.show(); } for(int i=16;i<25;i++){ pixels.setPixelColor(i, pixels.Color(50, 50, 50)); pixels.show(); } } else { feux_croisement = false; digitalWrite(send_croisement, LOW); for(int i=0;i<9;i++){ pixels.setPixelColor(i, pixels.Color(0, 0, 0)); pixels.show(); } for(int i=16;i<25;i++){ pixels.setPixelColor(i, pixels.Color(0, 0, 0)); pixels.show(); } } } void gauche() { for (int i; i<3; i++) { for(int i=25;i<32;i++){ pixels.setPixelColor(i, pixels.Color(255, 180, 0)); pixels.show(); } digitalWrite(send_gauche, HIGH); delay(500); for(int i=25;i<32;i++){ pixels.setPixelColor(i, pixels.Color(0, 0, 0)); pixels.show(); } digitalWrite(send_gauche, LOW); delay(500); } } void droit() { for (int i; i<3; i++) { for(int i=9;i<16;i++){ pixels.setPixelColor(i, pixels.Color(255, 180, 0)); pixels.show(); } digitalWrite(send_droit, HIGH); delay(500); for(int i=9;i<16;i++){ pixels.setPixelColor(i, pixels.Color(0, 0, 0)); pixels.show(); } digitalWrite(send_droit, LOW); delay(500); } } void warning() { for (int i; i<3; i++) { for(int i=9;i<16;i++){ pixels.setPixelColor(i, pixels.Color(255, 180, 0)); pixels.show(); } for(int i=25;i<32;i++){ pixels.setPixelColor(i, pixels.Color(255, 180, 0)); pixels.show(); } digitalWrite(send_droit, HIGH); digitalWrite(send_gauche, HIGH); delay(500); for(int i=9;i<16;i++){ pixels.setPixelColor(i, pixels.Color(0, 0, 0)); pixels.show(); } for(int i=25;i<32;i++){ pixels.setPixelColor(i, pixels.Color(0, 0, 0)); pixels.show(); } digitalWrite(send_droit, LOW); digitalWrite(send_gauche, LOW); delay(500); } } void plaf() { digitalWrite(send_plaf, HIGH); delay(5000); digitalWrite(send_droit, LOW); } }
Editor is loading...