Created
August 14, 2020 02:19
-
-
Save clive520/a402ee10aa5d522ab2de6cbacd4f7f17 to your computer and use it in GitHub Desktop.
單元10_ESP8266_控制WS2812B_彩虹呈現
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <Adafruit_NeoPixel.h> | |
#ifdef __AVR__ | |
#include <avr/power.h> // Required for 16 MHz Adafruit Trinket | |
#endif | |
#define LED_PIN 4 | |
#define LED_COUNT 10 | |
Adafruit_NeoPixel strip(LED_COUNT, LED_PIN, NEO_GRB + NEO_KHZ800); | |
void setup() { | |
#if defined(__AVR_ATtiny85__) && (F_CPU == 16000000) | |
clock_prescale_set(clock_div_1); | |
#endif | |
strip.begin(); // INITIALIZE NeoPixel strip object (REQUIRED) | |
strip.show(); // Turn OFF all pixels ASAP | |
strip.setBrightness(250 ); // Set BRIGHTNESS to about 1/5 (max = 255) | |
} | |
void loop() { | |
rainbow(100); // Flowing rainbow cycle along the whole strip | |
} | |
void rainbow(int wait) { | |
for(long firstPixelHue = 0; firstPixelHue < 5*65536; firstPixelHue += 256) { | |
for(int i=0; i<strip.numPixels(); i++) { // For each pixel in strip... | |
int pixelHue = firstPixelHue + (i * 65536L / strip.numPixels()); | |
strip.setPixelColor(i, strip.gamma32(strip.ColorHSV(pixelHue))); | |
} | |
strip.show(); // Update strip with new contents | |
delay(wait); // Pause for a moment | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment