Neopixel lauflicht mit taster Starten?

Hallo, hab mir ein kleines Programm für Arduino geschrieben, welches einen Neopixel Led streifen leuchten lässt. Jetzt würde ich gerne das ganze über einen Tastendruck starten anstatt ein Dauerleuchten zu haben. Leider verzweifele ich an der Taster Funktion ;( Villt kann mir das jemand in meinen Code einbauen.

Danke

    #include <Adafruit_NeoPixel.h>
    #ifdef __AVR__
      #include <avr/power.h>
    #endif
    
    
    #define PIN            6
    #define NUMPIXELS      10
    #define BRIGHTNESS 255
    
    // When we setup the NeoPixel library, we tell it how many pixels, and which pin to use to send signals.
    // Note that for older NeoPixel strips you might need to change the third parameter--see the strandtest
    // example for more information on possible values.
    Adafruit_NeoPixel pixels = Adafruit_NeoPixel(10, 6, NEO_GRB + NEO_KHZ800);
    
    
    int delayval = 50; // delay for half a second
    
    void setup() 
    {
      pixels.begin(); // This initializes the NeoPixel library.
    }
    
    void loop() {
    
      
      for(int i=0;i<NUMPIXELS;i++) // For a set of NeoPixels the first NeoPixel is 0, second is 1, all the way up to the count of pixels minus one.
    
      {  
    
        // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255
        pixels.setPixelColor(i, pixels.Color(255,130,0)); // Led Gelb
    
        pixels.show(); // This sends the updated pixel color to the hardware.
    
        delay(delayval); // Delay for a period of time (in milliseconds).
    
      }
       for(int i=0;i<NUMPIXELS;i++) // For a set of NeoPixels the first NeoPixel is 0, second is 1, all the way up to the count of pixels minus one.
    
      {  
    
        // pixels.Color takes RGB values, from 0,0,0 up to 255,255,255
        pixels.setPixelColor(i, pixels.Color(0,0,0)); // Led Off 
    
        pixels.show(); // This sends the updated pixel color to the hardware.
    
        delay(delayval); // Delay for a period of time (in milliseconds).
    
      }
    }
Arduino
Arduino. Motorgeschwindigkeit mit Ultraschallsensor regeln?

Moin Leute, Ich bin gerade dabei ein Programm für ein Schulprojekt zu schreiben. Das ganze soll eine Höhenreglung für einen Quadrocopter werden, allerdings wollen wir zunächst nur einen Motor kontrollieren um die Sache für den Anfang zu vereinfachen.

Der Motor ist über einen ESC mit dem Arduino UNO verbunden und soll nun wie folgt von dem Ultraschallsensor in seiner Geschwindigkeit geregelt werden:

  • Um das entsprechende Flugobjekt in einer Höhe von 10cm zu halten überprüft der Ultraschallsensor ständig die Entfernung zum Boden. (funktioniert ohne Probleme, Werte werden in cm ausgegeben)

  • Falls der Sensor eine Entfernung über 10cm misst soll der Motor verlangsamt werden, wenn er eine unter 10cm misst soll er beschleunigen und wenn er 10cm misst soll die Geschwindigkeit beibehalten werden.

Problem: Ich weiß wie man den Motor auf einer bestimmten Geschwindigkeit drehen lässt und wie man den Motor auf eine bestimmte Geschwindigkeit beschleunigt bzw. abbremst, aber ich habe keine Ahnung wie man das ganze ohne feste Geschwindigkeiten macht. :(

Es würde mich freuen wenn mir jemand das erklären könnte oder eine Seite verlinkt auf der das erklärt wird, denn ich suche bereits seit Wochen auf Google nach der richtigen Vorgehensweise, finde aber keine Beispielcode oder die richtigen Befehle für mein Anliegen und so langsam deprimiert es mich auch sehr, dass ich mit meinem Projekt nicht mehr weiter komme.

Bild zum Beitrag
Technik, programmieren, Arduino

Meistgelesene Beiträge zum Thema Arduino