Lätt cykel (5 / 10 steg)
Steg 5: Skiss för den lätta mönstren med knappen
#include
#define stift 6
Parametern 1 = antal pixlar i remsa / / Parameter 2 = pin-kod (de flesta är giltigt) / / Parameter 3 = pixel typ flaggor, Lägg ihop efter behov: / / NEO_KHZ800 800 KHz bitstream (de flesta NeoPixel produkter w/WS2812 lysdioder) / / NEO_KHZ400 400 KHz (classic "v1" (inte v2) FLORA pixlar, WS2811 drivrutiner) / / NEO_GRB pixlar är trådbundet för GRB bitstream (de flesta NeoPixel produkter) / / NEO_RGB pixlar är trådbundet för RGB bitstream (v1 FLORA pixlar inte v2) const int buttonPin = 2; int buttonState = 0; Adafruit_NeoPixel strip = Adafruit_NeoPixel (120, PIN, NEO_GRB + NEO_KHZ800);
void setup() {strip.begin(); strip.show(); / / initiera alla pixlar till "off"}
void loop() {buttonState = digitalRead(buttonPin); / / några exempel procedurer visar hur du vill se pixlarna: om (buttonState == hög) {colorWipe (remsa. Color(255, 0, 0), 1); Röda colorWipe (remsa. Color(0, 0, 0), 1);
} om (buttonState == låg) {colorWipe (remsa. Color(0, 2555, 0), 1); Grön
}
}
Fyll prickar en efter den andra med en färg void colorWipe (uint32_t c, uint8_t vänta) {för (uint16_t jag = 0; jag
Ange ett värde 0 till 255 att få ett färgvärde. Färgerna är en övergång r - g - b - tillbaka till r. uint32_t hjul (byte WheelPos) {if(WheelPos < 85) {return strip. Färg (WheelPos * 3, 255 - WheelPos * 3, 0); } annat if(WheelPos < 170) {WheelPos-= 85; retur strip. Färg (255 - WheelPos * 3, 0, WheelPos * 3); } annat {WheelPos-= 170; return strip. Färg (0, WheelPos * 3, 255 - WheelPos * 3); } }
https://github.com/JeremyTesterman/ButtonCycle/BLOB/Master/.gitignore