top of page

Codes

#include <FastLED.h>
#define trigPin 8 
#define echoPin 9 
#define DATA_PIN    3
#define LED_TYPE    WS2812
#define COLOR_ORDER GRB
#define NUM_LEDS    24
CRGB leds[NUM_LEDS];

#define BRIGHTNESS          96
#define FRAMES_PER_SECOND  120


void setup() 
{
  delay(3000);
  FastLED.addLeds<LED_TYPE,DATA_PIN,COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
  FastLED.setBrightness(BRIGHTNESS);
  Serial.begin (9600); 
  pinMode(trigPin, OUTPUT); 
  pinMode(echoPin, INPUT); 
 
  }
   uint8_t gHue = 0;
 
  void loop() 
  { 
    long duration, distance; 
    digitalWrite(trigPin, LOW); 
    delayMicroseconds(2); 
    digitalWrite(trigPin, HIGH); 
    delayMicroseconds(10); 
    digitalWrite(trigPin, LOW); 
    duration = pulseIn(echoPin, HIGH); 
    distance = (duration/2) / 29.1; 
    
    if (distance <= 5) 
    {
     FastLED.show();
     FastLED.delay(1000/FRAMES_PER_SECOND);
     EVERY_N_MILLISECONDS( 20 ) { gHue++; }
      fill_rainbow( leds, NUM_LEDS, gHue, 7);
     
      } 
      else
      { 
       FastLED.clear();
    
        
        }
        
        }

bottom of page