ATtiny Pocket Sequencer (4 / 8 steg)
Steg 4: Med min kod
Koden är faktiskt ganska enkelt, men eftersom mina läsare kommer från många olika bakgrunder av kunskap jag ska fortfarande gå över grunderna i min kod.
Som jag nämnde tidigare, jag var tvungen att ta några genvägar för att lägga till extra knappar till attiny så kom ihåg att i min kod när du ser något liknande "if(analogRead(pot)<POT_THRESHOLD)" det innebär att vi kontrollerar om knappen trycktes.
Så i min design av denna sequencer ville jag användaren att programmera steg höger när enheten är påslagen. För att göra detta använde jag funktionen "setup()". Denna funktion utförs när attiny ges initialt makt, eller om dess återställning pin är inställd på låg. Jag la en startljudet (som är en liten arpeggio av en c durackord) för att meddela användaren att de är i programeringsmodus frekvens. Logiken i programmering frekvenserna finns funktionen setFrequencies(). (I princip det går igenom varje steg anger frekvensen lika med ett värde som läses av potentiometern och går till nästa steg endast när knappen är nedtryckt).
I det viktigaste kretsar ("loop()), attiny berättade att gå igenom varje steg och för varje steg, lätta lämplig LED. Sedan spela anteckningen tilldelats det steget, vid angivna Obs längd. Under detta, mikrokontroller är att kontrollera om knappen (analogRead(pot) < 30) trycks. Om det är, fylls i en funktion som kallas "setSustain()". I denna funktion, kan användaren välja längden på anteckningar, (via knappen och potentiometer).
Det är allt som finns att koden, jag hoppas det är enkelt nog för dig. Om det inte är jag skulle vara glad att svara på frågor i kommentarerna!