Flamma kontrollerade MIDI-Controller (21 / 25 steg)
Steg 21: Ladda upp koden
Mycket av den magi som går in i denna MIDI-controller är i koden. För dem som inte program, jag ska ge en allmän beskrivning av hur firmware fungerar:
Ange 1: När den första startat, controller waits för en läsning från lågan sensorn (ber användaren att tända ljuset via blink mönstret på indikatorn LED) som är klistrat in ett visst tröskelvärde som anges av användaren. När tröskeln klistras in, gå till staten 2.
Ange 2: Ta ca 5 sek att försöka ta ett genomsnitt av de avläsningar från lågan sensorn (visar förloppet på indikatorn LED) för senare användning. Som standard läses i 50 värden, då kontroller för att se vilka värden inte passar mönstret av avläsningarna och ignorerar dessa värden (dvs. om det står 3, 5, 3, 1, 4, 6, 24. Det kommer att kasta ut värdet "24" och fortsätta med resten). Om det finns mer än 10 värden kastas ut (eftersom det kan påverka noggrannheten av genomsnittet) startas om staten 2. Annars går det att staten 3.
Ange 3: Först läser i värden från alla ingångar (lågan sensor, potentiometer), baserat på indatavärden, uppdatera vad resultatet kommer att bli. (Sedan CC arbetar vanligtvis med 127 värde upplösning, produktionen är från 0 till 127). Baserat på produktionsvärde, den uppdaterar LED (via PWM) för att Visa användaren vilket värde skickas (det agerar för att efterlikna ljuset). Slutligen är produktionsvärde skickas via seriell genom USB och tolkas av datorn för konvertering (i Hairless MIDI). Statliga 3 upprepas sedan om inte lågan tas bort eller blåses. Om blåses ut, går det att staten 1 tills den är åter upplyst.
För er som program, kolla in den bifogade uppförandekoden och kommentarer att lära sig Detaljer om exakt hur de funktioner och algoritmer fungerar.
När du förstår hur den firmware funktion, starta upp Arduino IDE, och ladda upp koden till Arduino Nano med lämplig COM-porten. Nästa kan vi konfigurera datorn att konvertera seriella data till MIDI