Christmas Song spelare (4 / 6 steg)
Steg 4: Växla mellan låtar
Med en knapp, kommer vi att växla mellan låtar.
Hur tråd det?
-Som samma av övriga komponenter kommer vi att begränsa sin nuvarande till 20mA med ett motstånd av 10kOhms(brown-black-orange).
-Följ schematiskt för att veta vilket stift för att använda.
Koden
Vi kontroll knappen på det sättet att varje gång det trycks det varvas sången.
Först förklara vi vissa variabler att styra den:
PIN-kod
int knappen = 2;
//Control variabler
int counter = 0;
int tryckte = 0;
booleska playsong = false;
//Song temp variabler att peka låten spela
int songSizeS;
int * noteDurationS = 0;
int * melodyS = 0;
I funktionen loop() ska vi kontrollera att knappen är skjutet och släpptes för att spela låten:
void loop() {
//detect när knappen trycktes
IF(digitalRead(Button) == låg)
{
tryckte = 1;
}
//detect när knappen släpptes
if(digitalRead(button) == hög & & pressad == 1)
{
räknaren ++;
tryckte = 0;
playsong = true; //variable att kontrollera när man ska starta låten
//Decide vilken låt spelar
om (counter % 2 == 0) {
songSizeS = SONG1_SIZE;
noteDurationS = noteDurations1;
melodyS = melody1;
}
annat
{
songSizeS = SONG2_SIZE;
noteDurationS = noteDurations2;
melodyS = melody2;
}
}
//start sången om knappen trycktes:
if(playsong)
{
playsong = false;
....
//play sången och ljus upp led
....
}
}