Projet avec strip led et hall sensor

Bonjour, j'aurai besoin d'aide pour un code arduino qui utilise un strip led ( WS2812b ) ainsi qu'un capteur a effet de hall.

Le principe du code est que le strip led sera allumé et connecter avec le capteur a effet de hall. lorsque le capteur hall est à 1 alors le strip de led changera de couleurs ou bien il sera différent à son état initiale.

Merci.

Ou est ton code?On ne va pas le faire a ta place!
Fais une ébauche et on t'aide ensuite...
Bon courage!
flix09 :space_invader:

Tu trouveras des tutos sur lr net pour les bandes leds.

Cela me semble claire, mais tu ne dis pas ce qui te plaise problème ou comment on peut t'aider ?

Un probléme n'est jamais plaisant :smiley:

Merci de m'avoir répondu, j'ai oublié d'introduire le code dans mon message. Le problème que j'ai rencontré lors de mon essai, c'est que ma bande de led allume les deux leds ( leds[20] et leds[15] ) et pas la 20ème led quand le capteur est à 0...

#include <FastLED.h>
#define NUM_LEDS 24
#define DATA_PIN 13
#define CLOCK_PIN 0
const int hallPin = 3;
CRGB leds[NUM_LEDS];
void setup() {
  Serial.begin(9600);
  while (!Serial) {}

  delay(2000);
  FastLED.addLeds<WS2812B, DATA_PIN, RGB>(leds, NUM_LEDS);  // GRB ordering is typical
  pinMode(hallPin, INPUT);  // Définir le pin du capteur Hall comme entrée
}
void loop() {
  int hallValue = digitalRead(hallPin);

  if (hallValue == LOW) {
    Serial.println("le capteur est à 1");
    delay(500);
    leds[20] = CRGB::Red;
    FastLED.show();
    delay(30);  // Pilotage d'une leds individuel.
  }    else {
    Serial.println("le capteur est à 0");
    delay(500);
    leds[15] = CRGB::Blue;
    FastLED.show();
    delay(30);  // Pilotage d'une leds individuel.
  }
}

Bonjour,

Il faut éteindre l'autre led

    leds[20] = CRGB::Red;
    leds[15] = CRGB::Black;

De même

    leds[15] = CRGB::Blue;
    leds[20] = CRGB::Black;

Ah oui merde, j'y ai pas pensé...
Pour l'instant tout fonctionne, mais je voulais savoir comment je peux faire pour que j'allume une colonne de led ( de leds 0 à 15 en bleu quand le capteur est à 0 et de leds 16 à 25 en rouge si le capteur est 1 ) ?

dois-je utiliser une boucle for ?

Oui, il faut utiliser une boucle for.
Attention tu n'as déclaré que 24 leds donc dans le deuxième cas les indices vont de 16 à 23.

1 Like

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.