1. Guziki masz w spodniach. To, o czym mówisz, to przyciski.
2. 'Diod', nie 'diód'.
3. Jakie dobierzesz przyciski, to już Twoja sprawa, zresztą zależeć to będzie od Twojego projektu (chodzi głównie o wygląd).
Przyciski deklarujesz (w funkcji setup) jako INPUT_PULLUP. Być może o tym wiesz, ale wolałem napisać, bo wspomniałeś, że jesteś początkujący (choć, jako początkujący, nie zajmowałbym się diodami adresowalnymi).
Jak rozwiązać Twój problem? Możesz zrobić tak, że wciśnięcie danego przycisku zmieni wartość zmiennej (np. funkcja1, funkcja2). W programie, w zależności od wartości zmiennej, niech uruchamia się dana funkcja.
Dla przykładu, dla przycisków wpiętych w piny 10 i 11, funkcji świetlnych jest 6 (0-5), podobnie jak kombinacji kolorów (0-5):
Kod:
int przycisk1=10;
int przycisk2=11;
int funkcja1=0;
int funkcja2=0;
void setup(){
pinMode(przycisk1,INPUT_PULLUP);
pinMode(przycisk2, INPUT_PULLUP);
}
void loop(){
if(digitalRead(przycisk1)==LOW){
funkcja1++;
if(funkcja1>5){
funkcja1=0;
}
while(digitalRead(przycisk1)==LOW){}
}
if(digitalRead(przycisk2)==LOW){
funkcja2++;
if(funkcja2>5){
funkcja2=0;
}
while(digitalRead(przycisk1)==LOW){}
}
switch (funkcja1) {
case 1:
// jakaś Twoja pierwsza funkcja
break;
case 2:
// jakaś Twoja druga funkcja
break;
case 3:
// jakaś Twoja trzecia funkcja
break;
case 4:
// jakaś Twoja czwarta funkcja
break;
case 5:
// jakaś Twoja piąta funkcja
break;
default:
// jakaś Twoja domyślna funkcja
break;
}
switch (funkcja2) {
case 1:
// jakaś Twoja pierwsza kombinacja kolorów
break;
case 2:
// jakaś Twoja druga kombinacja kolorów
break;
case 3:
// jakaś Twoja trzecia kombinacja kolorów
break;
case 4:
// jakaś Twoja czwarta kombinacja kolorów
break;
case 5:
// jakaś Twoja piąta kombinacja kolorów
break;
default:
// jakaś Twoja domyślna kombinacja kolorów
break;
}
}
Mogą być gdzieś literówki, bo piszę z pamięci.
Przy okazji, ciekawy pomysł. Upieczesz dwie pieczenie na jednym ogniu: nauczysz się trochę programowania i automatyki, no i zachwycisz dziewczynę