/*
* Steve Barth
* 2022
*/
#include <Adafruit_NeoPixel.h>
#define PIN 2 // drive pin
#define NUM_LEDS 64 //32
#define delayval 20
Adafruit_NeoPixel ring = Adafruit_NeoPixel(NUM_LEDS, PIN, NEO_GRB);
int sine[] = // total pixels in array
{
// 4 ring total 70
4, 3, 2, 1, 0, 15, 14, 13, 12, 20, 21, 22, 23, 24, 25, 26, 27, 28,
36, 35, 34, 33, 32, 47, 46, 45, 44, 52, 53, 54, 55, 56, 57, 58, 59, 60,
61, 62, 63, 48, 49, 50, 51, 52, 44, 43, 42, 41, 40, 39, 38, 37, 36, 28,
29, 30, 31, 16, 17, 18, 19, 20, 12, 11, 10, 9, 8, 7, 6, 5
//*/
/* // 2 ring total 34
5, 4, 3, 2, 1, 15, 14, 13, 12, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
30, 31, 16, 17, 18, 19, 20, 12, 11, 10, 9, 8, 7, 6, 5, 4,
*/
};
uint32_t color = ring.Color(255, 50, 5); // color R-G-B
void setup()
{
ring.begin();
ring.setBrightness(255); // 0-255 brightness
ring.clear(); // clear all pixels
}
void loop() {
for (int i = 0; i < 70/*34*/; i++) // animation length
{
ring.setPixelColor(sine[i],0); // not used pixel off
ring.setPixelColor(sine[(i + 7) % 70 ], color); // setting pixel animation
ring.show(); // show animation
delay(delayval); // animation speed setting
}
}
nano:12
nano:11
nano:10
nano:9
nano:8
nano:7
nano:6
nano:5
nano:4
nano:3
nano:2
nano:GND.2
nano:RESET.2
nano:0
nano:1
nano:13
nano:3.3V
nano:AREF
nano:A0
nano:A1
nano:A2
nano:A3
nano:A4
nano:A5
nano:A6
nano:A7
nano:5V
nano:RESET
nano:GND.1
nano:VIN
nano:12.2
nano:5V.2
nano:13.2
nano:11.2
nano:RESET.3
nano:GND.3
ring1:GND
ring1:VCC
ring1:DIN
ring1:DOUT
ring2:GND
ring2:VCC
ring2:DIN
ring2:DOUT
ring3:GND
ring3:VCC
ring3:DIN
ring3:DOUT
ring4:GND
ring4:VCC
ring4:DIN
ring4:DOUT