#include const int PA4 = 0; const int PA5 = 1; const int PA6 = 2; const int PA7 = 3; const int PB5 = 4; const int PB4 = 5; const int PB1 = 8; const int PB0 = 9; const int PA3 = 16; const int NUM_LEDS=200; int p1 = 0; int p2 = 0; int p3 = 0; int p4 = 0; int p5 = 0; int s1 = 1; int s2 = 1; int s3 = 1; int s3_val = 0; int delay_time = 500; int len_leds = 1; tinyNeoPixel pixels = tinyNeoPixel(NUM_LEDS, PA3, NEO_GRB + NEO_KHZ800); void setup() { pixels.begin(); pinMode(PA4, INPUT); pinMode(PA5, INPUT); pinMode(PA6, INPUT); pinMode(PA7, INPUT); pinMode(PB5, INPUT); pinMode(PB4, INPUT); pinMode(PB1, INPUT); pinMode(PB0, INPUT); Serial.begin(115200); } void loop() { p1 = analogRead(PA4); Serial.print("p1(color1): "); Serial.println(p1); p2 = analogRead(PA5); Serial.print("p2(color2): "); Serial.println(p2); p3 = analogRead(PA6); Serial.print("p3(color3): "); Serial.println(p3); p4 = analogRead(PA7); Serial.print("p4(color4, leds): "); Serial.println(p4); p5 = analogRead(PB5); Serial.print("p5:PB5(delay): "); Serial.println(p5); s1 = digitalRead(PB4); // when pushing switch, count up if (s1 < 1 ) { delay_time = delay_time + 500; if (delay_time > 5000 ) { delay_time = 0; } } Serial.print("s1(+500): "); Serial.println(s1); s2 = digitalRead(PB1); if (s2 < 1 ) { delay_time = delay_time -500; if (delay_time < 0 ) { delay_time = 5000; } } Serial.print("s2(-500): "); Serial.println(s2); Serial.print("delay_time: "); Serial.println(delay_time); s3 = digitalRead(PB0); if (s3 < 1 ) { // toggle switch if (s3_val == 1 ) { s3_val = 0; } else { s3_val = 1; } } Serial.print("s3: "); Serial.print(s3); Serial.print(", s3_val(0: single, 1: random): "); Serial.println(s3_val); len_leds = p4/4; if (len_leds > NUM_LEDS ) { len_leds = NUM_LEDS; } Serial.print("len_leds: "); Serial.println(len_leds); switch (s3_val) { case 0: for (int i=0; i