...
La déclaration des fonctions qui seront appelées :
void setup() {
//Initialisation des variables en entrée
pinMode(EclairageJour, INPUT);
pinMode(EclairageMat, INPUT);
pinMode(ClignoGauche, INPUT);
pinMode(ClignoDroit, INPUT);
pinMode(Frein, INPUT);
pinMode(EclairageNuit, INPUT);
//Initialisation des variables en sortie
pinMode(Led_mat, OUTPUT);
pinMode(Led_ar_Haut, OUTPUT);
pinMode(Led_ar_Bas, OUTPUT);
pinMode(Led_av_adr, OUTPUT);
pinMode(Led_ar_adr, OUTPUT);
//renseignement des librairies avec le type de LED, les paramètres d'entrée LED_PIN et NUM_LED
FastLED.addLeds<WS2812B, Led_av_adr, GRB>(AV_leds, Num_leds); //bandeau avant
FastLED.addLeds<WS2812B, Led_ar_adr, GRB>(AR_leds, Num_leds); //bandeau arrière
}
//Fonction allumage des clignotants gauches
void ClignotantGauche (){
for (i = 0; i <= 47; i++){
AV_leds[fin-i] = CRGB (255,115,0); //Allumage des leds avant en orange
AR_leds[gauche+i] = CRGB (255,115,0); //Allumage des leds arrières en orange
FastLED.show();
delay(0);
}
for (i = 0; i <= 47; i++){
AV_leds[fin-i] = CRGB (0,0,0); //Extinction des leds avant
AR_leds[gauche+i] = CRGB (0,0,0); //Extinction des leds arrière
FastLED.show();
delay(0);
}
}
//Fonction allumage des clignotants droits
void ClignotantDroit() {
for (i = 0; i <= 47; i++) {
AV_leds[debut+i] = CRGB (255,115,0); //Allumage des leds avant en orange
AR_leds[droite-i] = CRGB (255,115,0); //Allumage des leds arrière en orange
FastLED.show();
delay(0);
}
for (i = 0; i <= 47; i++) {
AV_leds[debut+i] = CRGB (0,0,0); //Extinction des leds avant
AR_leds[droite-i] = CRGB (0,0,0); //Extinction des leds arrière
FastLED.show();
delay(0);
}
}
//Fonction allumage des feux de détresse
void FeuxDetresse() {
for(i = 0 ; i <= 47; i++){
AV_leds[fin-i] = CRGB (255,115,0); //Allumage des leds avant gauche en orange
AR_leds[gauche+i] = CRGB (255,115,0); //Allumage des leds arrière gauche en orange
AV_leds[debut+i] = CRGB (255,115,0); //Allumage des leds avant droite en orange
AR_leds[droite-i] = CRGB (255,115,0); //Allumage des leds arrière droite en orange
FastLED.show();
delay(0);
}
for(i = 0 ; i <= 47; i++){
AV_leds[fin-i] = CRGB (0,0,0); //Extinction des leds
AR_leds[gauche+i] = CRGB (0,0,0);
AV_leds[debut+i] = CRGB (0,0,0);
AR_leds[droite-i] = CRGB (0,0,0);
FastLED.show();
delay(0);
}
}
//Fonction allumage des feux de jour avant sur adr
void FeuxJourAvantCligno() {
FastLED.setBrightness(32);
for(i = 0 ; i <= 24; i++){
AV_leds[milieu+i] = CRGB (255, 255, 255); //Allumage des leds avant en blanc du milieu vers la gauche
AV_leds[milieu-i] = CRGB (255, 255, 255); //Allumage des leds avant en blanc du milieu vers la droite
FastLED.show();
}
for(i = 0 ; i <= 24; i++){
AV_leds[milieu+i] = CRGB (0, 0, 0); //Extinction des leds
AV_leds[milieu-i] = CRGB (0, 0, 0);
FastLED.show();
}
}
/*/Fonction allumage des feux de jour arrière sur adr
void FeuxJourArriereCligno(){
FastLED.setBrightness(32);
for(i = 0 ; i <= 24; i++){
AR_leds[milieu+i] = CRGB (255, 0, 0); //Allumage des leds arrière en rouge du milieu vers la gauche
AR_leds[milieu-i] = CRGB (255, 0, 0); //Allumage des leds arrière en rouge du milieu vers la droite
FastLED.show();
}
for(i = 0 ; i <= 24; i++){
AR_leds[milieu+i] = CRGB (0, 0, 0); //Extinction des leds
AR_leds[milieu-i] = CRGB (0, 0, 0);
FastLED.show();
}
}
*/
//Fonction allumage fixe des feux de jour avant adr et arrière adr lors de l'utilisation des indicateurs de direction
void FeuxJourFixe() {
FastLED.setBrightness(32);
for(i = 0 ; i <= 24; i++){
AV_leds[milieu+i] = CRGB (255, 255, 255); //Allumage fixe des leds avant en blanc
AV_leds[milieu-i] = CRGB (255, 255, 255); //Allumage fixe des leds avant en blanc
AR_leds[milieu+i] = CRGB (255, 0, 0); //Allumage fixe des leds arrière en rouge
AR_leds[milieu-i] = CRGB (255, 0, 0); //Allumage fixe des leds arrière en rouge
FastLED.show();
}
}
//Fonction allumage feux rouge arrière clignotant de jour
void Feuxjour12Vcligno(){
analogWrite(Led_ar_Bas, 128); //Allumage des leds rouges arrières clignotantes à 50% de puissance
analogWrite(Led_ar_Haut, 128);
delay(250);
analogWrite(Led_ar_Bas, 0); //Extinction des leds rouges arrières clignotantes
analogWrite(Led_ar_Haut, 0);
delay(250);
}
//Fonction allumage feux stop
void FeuxStopON(){
analogWrite(Led_ar_Haut, 255); //Allumage des leds rouges arrières hautes à 100% de puissance
analogWrite(Led_ar_Bas, 255); //Allumage des leds rouges arrières basses à 100% de puissance
}
void FeuxStopOFF(){
// digitalWrite(Led_ar_Haut, LOW); //Extinction des leds rouges arrières hautes
// digitalWrite(Led_ar_Bas, LOW); //Extinction des leds rouges arrières basses
analogWrite(Led_ar_Haut, 0); //Extinction des leds rouges arrières hautes
analogWrite(Led_ar_Bas, 0); //Extinction des leds rouges arrières basses
}
//Fonction allumage feux de nuit
void FeuxNuitON(){
analogWrite(Led_ar_Haut, 64); //Allumage des leds rouges arrières fixes à 50% de puissance
analogWrite(Led_ar_Bas, 64); //Allumage des leds rouges arrières cligno à 50% de puissance
}
//Fonction allumage du mat et des reports latéraux
void FeuxMatON(){
analogWrite(Led_mat, 210); //Allumage des leds à 75% de puissance (couleur définie par tansistors)
delay(250);
analogWrite(Led_mat, 0); //Extinction des leds
delay(250);
}
...