Решил сделать прогу для управления лентой по Serial. Вот часть кода: Код (C++): void loop() { if(Serial.available()){ mode = Serial.read(); } switch (mode) { case '1': rainbow(20); break; case '2': Fire(55,120,15); break; case '3': meteorRain(0xff,0xff,0xff,1, 64, true, 30); break; case '4': // byte onecolor[1][3] = { {0xff, 0x00, 0x00} }; // BouncingColoredBalls(1, onecolor, false); HalloweenEyes(0xff, 0x00, 0x00, 1,random(1,10), true, random(5,50), random(50,150), random(1000, 10000)); HalloweenEyes(0xff, 0x00,0xff, 1, random(1,10), true, random(5,50), random(50,150), random(100, 1000)); break; case '5': rainbowCycle(10); break; case '6': theaterChaseRainbow(50); break; case'7': RGBLoop(); break; case '8': NewKITT(0xff, 0x00, 0x00, 8, 10, 50); break; case '9': Sparkle(0xff, 0xff, 0xff, 0); break; /* case 'e': HalloweenEyes(0xff, 0x00, 0x00, 1,random(1,10), true, random(5,50), random(50,150), random(1000, 10000)); HalloweenEyes(0xff, 0x00,0xff, 1, random(1,10), true, random(5,50), random(50,150), random(100, 1000));*/ break; case 11: RunningLights(0x1C,0xFF,0xF7, 100); break; case'12': RaimbowlWipe(30,10); break; case'13': pride(); break; } При достижение 10 режима включается 1. Я так полагаю считывается только первый символ.
А как первый читали? Точно также. Ну, или если чтение первого Вы где-то сдули, не понимая, то поискать код с использованием Serial.parseInt и сдуть его.