je sais pas — Arduino Uno simulation

An interactive Arduino Uno circuit simulation you can run free in your browser on Velxio, by rown.

Components

Sketch code

#include <Adafruit_NeoPixel.h>

const int trigPin = 9;
const int echoPin = 10;
const int ledPin = 7;     // Broche connectée au signal du ruban LED (SIG)
const int numPixels = 60; // Nombre de LEDs sur le ruban
#define PIN    4       // Broche Arduino connectée au Data In des NeoPixels
#define NUM    60      // Nombre total de LEDs dans la bande

// Déclaration de l'objet NeoPixel
Adafruit_NeoPixel strip(numPixels, ledPin, NEO_GRB + NEO_KHZ800);

long duration;
int distance;
int numGreen = 60;
int numOrange = 50;
int numRed = 30;

void setup() {
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  Serial.begin(9600);
  
  strip.begin();           // Initialisation de la bande
  strip.show();            // Éteint toutes les LEDs
  strip.setBrightness(50); // Réglage de la luminosité (0-255)
}

void loop() {
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);
  
  duration = pulseIn(echoPin, HIGH);
  distance = duration * 0.034 / 2;
  
  Serial.print("Distance: ");
  Serial.print(distance);
  Serial.println(" cm");
  delay(500);
  if(distance <= 30) {
        strip.clear();
        for(int i = 0; i < numRed; i++){
            strip.setPixelColor(i, strip.Color(255, 0, 0));
            strip.show();
        }
  } else if(distance <= 50) {
        strip.clear();
        for(int i = 0; i < numOrange; i++){
            strip.setPixelColor(i, strip.Color(255, 165, 0));
            strip.show();

        }
  }else if(distance > 50){
        strip.clear();
        for(int i = 0; i < numGreen; i++) {
            strip.setPixelColor(i, strip.Color(0, 255, 0));
            strip.show();
        }
  }
}