Stap 8: SOURCE CODE werken
De bibliotheek die we gebruiken om het afspelen van de audio van de sd-kaart is
SimpleSDAudio.h., de details van die ik heb uitgelegd indetail in
de stengel voorbereiding van de SD-kaart.
Nu in de schets. heb ik programma's alleen voor 4 drum en een bekken.
Sinds ik heb niet expained hoe maak je de voetpedalen.
Ik zal proberen mijn maximale om zo vlug mogelijk uploaden. Maar ik heb de geluiden omgezet
voor alles (8 componenten per drum stijl.) IE voor 4 drum, 1cymbal,
Open highhat & gesloten hoge hat.and kick.
Zoals eerder vermeld., het programma maakt gebruik van de drums voor triggring aswell.
Dit was een beetje een chalenge voor me.but die ik het in het einde maakte.
Ziet u in de broncode dat ik heb gedaan de analoge tweemaal lezen.,
gelet diferent variabelenamen telkens met 2 trommels.
De eerste tijd., we gebruiken de snare en tom1 trommels voor het selecteren van de trommel-stijl.
De snaartrom wordt gebruikt als de stijl gaat de count.the graaf van 1 tot 6
en herhalingen van 1 opnieuw. U kunt zoveel stijlen toevoegen als de omvang van de
SD-kaart die u gebruiken. Je hoeft alleen te uploaden alle geluiden die u nodig hebt.
Er is een andere graaf doorloopt de volgende set van analoge lezingen.
Dit is de select count.wen ooit die u hebt ingesteld de graaf met
ypur snaredrum, we confrm door de tom1 drum.once de tom1-drum wordt geraakt.,
het zou beginnen een select aantal. Wanneer het uitgezochte aantal is 1, (dwz de eerste hit op
de tom1 trom), begint de lus voor het genereren van de trommel.
De trigering drumloop is heel simpel. Als de analoge overtreft het lezen van een thushold
KIDU zal het geluid van het overeenkomstige geluid. En de lus continious.
bijvoorbeeld: als analogread waarde > thrushold & if stylecount == 1
dan, spelen het audiobestand 1_snare.raw voor snaredrum.
PROG bv:
Als (snare > 50 & & stylecount == 1)
{
SdPlay.setFile("1_snare.raw");
SdPlay.play();
Serial.println("Snare");
}
Nu voor het programma waarbij kick ahd high-hoed, zijn niet erg lastig.
Alles wat we moeten doen is deel voor digitaal lezen van een knop.
We moeten het gebruik van een eenvoudige mono puls switch en een debouncing functie, voor de kick.
De debouncing functie is aanwezig in de voorbeelden voor
Arduino programmering environment.and voor high hat., de debouncing en switch delen zijn hetzelfde.
De als lus zal een extra voorwaarde hebben elk voor open anf gesloten.
IE
Als (choke == HIGH & & highat > thrushold & & stylecount == 1)
{
SdPlay.setFile("1_chh.raw");
SdPlay.play();
Serial.println ("gesloten highhat");
}
Als (choke == LOW & & highat > thrushold & & stylecount == 1)
{
SdPlay.setFile("1_ohh.raw");
SdPlay.play();
Serial.println ("open highhat");
}