#include <Adafruit_NeoPixel.h>
#define PIN 6 //#定義6 PIN
int PIXEL_COUNT= 80;
Adafruit_NeoPixel strip = Adafruit_NeoPixel(PIXEL_COUNT, PIN, NEO_GRB + NEO_KHZ800);
void setup()
{
strip.begin();
strip.show(); // Initialize all pixels to 'off' strip.show(); //初始化所有像素“關”
}
void loop()
{ //空隙環(){
rainbowCycle2(5);//5速度,越细越快
}
void rainbowCycle2(uint8_t wait) //無效rainbowCycle(uint8_t有等待){
{
uint16_t i,j;
// uint16_t i,j;
for(j=0; j<256; j++)
{ // 5 cycles of all colors on wheel 對於(J = 0;Ĵ<256 * 5; J ++){// 5個週期輪上的所有顏色
for(i=0; i< strip.numPixels(); i++)
{ //對於(i = 0;我<strip.numPixels();我++){
strip.setPixelColor(i, Wheel(((i * 256 / strip.numPixels()) - j) & 255)); // -i正转,+i 反转。+j前细后大,-j前大后细
//strip.setPixelColor(strip.numPixels()-i, Wheel(((i * 254 / strip.numPixels()) - j) & 255)); // 顺时针跑
}
strip.show();
delay(wait); // 延遲(等待);
}
}
uint32_t Wheel(byte WheelPos) { //uint32_t的車輪(字節WheelPos){
// WheelPos = 255 - WheelPos;
if(WheelPos < 30)//拖尾长度
{ // WheelPos = 100; //如果(WheelPos <85){
return strip.Color( 255 ,WheelPos , WheelPos ); //前跑馬灯颜色
// return strip.Color(0, 0 , 0); //前跑馬灯颜色
//0绿色,
}
else
{ // }其他{
// WheelPos -= 170;
return strip.Color( 0, 0, 0); //背景灯光颜色
// return strip.Color(WheelPos * 3, 255 - WheelPos * 3, 0); // 返回strip.Color(WheelPos * 3,255 - WheelPos * 3,0);
}
} |