Stap 4: Schakelen tussen nummers
Met behulp van een knop, gaan we om te schakelen tussen nummers.
Hoe het draad?
-Als hetzelfde voor de andere componenten willen we de huidige aan 20mA met behulp van een weerstand van 10kOhms(brown-black-orange) te beperken.
-Volg het schema om te weten welke pin te gebruiken.
Code
We gaan om te controleren op de knop in de weg dat, telkens wanneer die deze wordt ingedrukt zal het alternatieve het liedje.
Eerst declareren we sommige variabelen om het te controleren:
pincode
int knop = 2;
//Control variabelen
int counter = 0;
int ingedrukt = 0;
Boole playsong = false;
tijdelijke variabelen van de //song op de wijs van het liedje te spelen
int songSizeS;
int * noteDurationS = 0;
int * melodyS = 0;
In de loop functie gaan we controleren of de knop moet worden geduwd en uitgebracht om het lied te spelen:
void loop {}
//detect toen de knop werd ingedrukt
if(digitalRead(button) == laag)
{
ingedrukt = 1;
}
//detect toen de knop werd uitgebracht
if(digitalRead(button) == HIGH & & geperst == 1)
{
teller ++;
ingedrukt = 0;
playsong = true; //variable om te bepalen wanneer om te beginnen met het liedje
//decide welk lied speelt
Als (teller % 2 == 0) {}
songSizeS = SONG1_SIZE;
noteDurationS = noteDurations1;
melodyS = melody1;
}
anders
{
songSizeS = SONG2_SIZE;
noteDurationS = noteDurations2;
melodyS = melody2;
}
}
//start het nummer als de knop is ingedrukt:
if(playsong)
{
playsong = false;
....
//play het nummer en het licht van de led
....
}
}