Arduino fluit Synth (10 / 12 stap)

Stap 10: De broncode

De code van de Postbox Synth geschreven door Sam Stratter (aka humanharddrive) klinkt geweldig. Het heeft 6 golfvormen, 2 oscillatoren, een LFO. De code is beschikbaar onder zijn Instructable. Ik gebruikte zijn code, bijna zoals het is, behalve ik de arpeggio-spullen verwijderde en het bewerkt zodat ik kon alle 6 knoppen gebruiken.

De capacitieve sensing code die ik gebruikte is een klein knipsel uit ik weet niet waar, ik heb kopiëren en plakken van project tot project. Er is een hele capacitieve sensing bibliotheek op de Arduino Playground die veel meer opties heeft. De code die ik heb is eenvoudig, niet nodig een weerstand net leest een PIN-code en geeft als resultaat een getal, oftewel het aantal cycli dat het duurt om de pincode te vervullen. De geretourneerde waarde is meestal 1 tot en met 20 of zo.

Een opmerking over de aanraakgevoelige in teledetectie - het zal niet werken recht tenzij u een goede grond hebt. Ik vond dit op de harde manier na het werken aan dit project. Wanneer aangedreven door de USB-kabel, Lees alle GLB knoppen prima. Wanneer ik wil loskoppelen en het door mijn 9V batterij macht, kreeg de lezingen alle onregelmatig. Ik was in staat om rond het probleem door de invoering van 2 die meer metaal laveert op de bodem van het vak waar je duimen uiteraard heengaat en bedrading beiden naar de grond. Dit was eigenlijk een goede zaak, aangezien het geeft je duimen iets om grip. Na het doen van die de aflezing steeds normaler maar er is nog steeds een constante "jitter".

De enige code moeite waard delen is op dit punt voor de berekening van wat er rekening mee te spelen. Hier is het:

int nonote = 1;
int curnote = 0;
noteMultiplier = 0;

voor (int x = 0; x < 4; x ++) {}
Als (readCapacitivePin(multPins[x]) > 1) {noteMultiplier = x + 1;}
Als (readCapacitivePin(notePins[x]) > 1) {curnote ++; nonote = 0;}
}

multPins is een matrix van welke pinnen van de Arduino aan de linkerkant "multiplier" knoppen zijn gekoppeld.
notePins is een matrix van welke pinnen van de Arduino aan de rechterkant "note"-knoppen zijn gekoppeld.

Als (nonote == 1) {}
notePlaying = false;
} else {}
noteSelect=43+((noteMultiplier*4)+curnote);
notePlaying = true;
}

De eerste lus leest alle 4 pinnen aan elke kant. Als de waarde van de pin groter dan 1 is, is het geraakt. Aan de linkerzijde als het leest ze maakt wat de hoogste knop geraakt de multiplier. Dus als u knop #4 aanraken bent, vergroot het het aantal knoppen die u aan de rechterkant door 4 ingedrukt. De linkerkant is opeenvolgend. Als u #1 en #4 op hetzelfde moment ingedrukt bent, zal noteMultiplier uiteindelijk op 4, aangezien het de waarden opeenvolgend leest en noteMultiplier ingesteld.

De nonote/notePlaying-variabelen bepalen die als geen toetsen worden ingedrukt op het recht (nonote nog steeds gelijk is aan 1 na het uitvoeren van door de lus) dan notePlaying = false, speel om het even wat niet. notePlaying is een variabele die wordt gebruikt door de synthesizer-code die zegt tegen geluid genereren of niet.

noteSelect is van de motor van de synthesizer code voor welk merk nummer te spelen. We beginnen bij een basis nota (43 in dit geval, dat is een C), en de vermenigvuldigingswaarde, plus wat de waarde van curnote is te komen tot het uitkomt wat opmerking toevoegen. Dit kunt u stapsgewijs uit notitie #47 (niets drukte op links, 1 knop ingedrukt aan rechterkant) tot een maximum van opmerking #67. (4 knoppen ingedrukt op de links en 4 aan de rechterkant)

Gerelateerde Artikelen

DIY Arduino Nebulophone Synth

DIY Arduino Nebulophone Synth

ik oorspronkelijk wilde kopen van een Nebulophone, maar mijn prijsklasse El-Cheapo hield niet van de tag. Ik realiseerde me dat ik mijn eigen 328 AtMega programmeren kon met behulp van de ArduinoISP toen ik ontdekte dat als de code was Arduino compat
Sleutels toe te voegen aan een Arduino Synth de harde manier-het Blacklord: het Organ Donor Project deel 2

Sleutels toe te voegen aan een Arduino Synth de harde manier-het Blacklord: het Organ Donor Project deel 2

(Opmerking-Dit is mijn 20e instructable! Dank aan iedereen volgende en commenting.on mijn projecten en aan de medewerkers die dit mogelijk maken. Deze site heeft zeker maakte me brengen mijn A game aan de workbench.)De Auduino granulaire synth door P
Digitale Synth VRA8-P voor de Arduino Uno

Digitale Synth VRA8-P voor de Arduino Uno

Gemaakt door ISGK instrumentenhttps://github.com/risgk/Digital-synth-vra8-pConcept3 stem Pseudo polyfone Synthesizer voor Arduino UnoFuncties3 Pseudo polyfone Synthesizer van de stem (Paraphonic Synthesizer), MIDI Sound ModuleSerial MIDI In (38400 bp
Digitale Synth VRA8-X voor Arduino Uno

Digitale Synth VRA8-X voor Arduino Uno

Gemaakt door ISGK instrumentenhttps://github.com/risgk/Digital-synth-vra8-xConceptExperimentele Synthesizer voor Arduino UnoFunctiesMonofoon Synthesizer (of MIDI Sound Module)Serial MIDI In (38400 bps), PWM Audio-uitgang (Pin 6), PWM tarief: 62500 Hz
Pad van de Arduino Synth DIY 4 x 4

Pad van de Arduino Synth DIY 4 x 4

Dit project neemt een Arduino Uno en tal van andere onderdelen en hen verandert in een synth-pad dat kan een verscheidenheid van verschillende tonen spelen, opnemen die tonen en spelen ze terug en leren een gebruiker hoe om nieuwe muziek te spelen.St
Arduino fotocel Theremin Synth (glitchamin)

Arduino fotocel Theremin Synth (glitchamin)

u weet theremins, juiste?  Die koel-kijkt dozen met antennes die lawaai produceren zonder geraakt?  Ze worden gespeeld door de mensen als Jimmy Page van Led Zeppelin en presenteren in de soundtracks van ontelbare films.  Nou, met dit instructable, ik
Auduino (Lo-fi Synth voor arduino)

Auduino (Lo-fi Synth voor arduino)

Hello again. Vandaag wil ik je laten zien de Auduino. Dat klopt, dat de Auduino is een Lo-fi Granular Synthesizer die op de arduino werkt. Sommige analoge pinnen en een digital pin gebruikt. Ik had heel veel plezier maken en spelen met het, dus ik zo
Digitale Synth VRA8-M voor Arduino Uno

Digitale Synth VRA8-M voor Arduino Uno

Gemaakt door ISGK instrumentenhttps://github.com/risgk/Digital-synth-vra8-mConceptMonofoon Synthesizer (MIDI Sound Module) voor de Arduino UnoFunctiesSerial MIDI In (38400 bps), PWM Audio-uitgang (Pin 6), PWM tarief: 62500 HzBemonsteringsfrequentie:
Arduino Synth vak

Arduino Synth vak

Dit is een synthesizer gebaseerd uit de OctoSynth leerprogramma.Benodigde materialen:Arduino UnoUSB-kabel aan de computer verbinden met de ArduinoSoldeer pistoolSoldeerGrote dunne koperen plaatKleine luidspreker2 kleine vierzijdig mandenSchuim te sni
Hoe het bouwen van een Arduino synth

Hoe het bouwen van een Arduino synth

dit is een super eenvoudig en gemakkelijk aanpasbaar kleine synthesizer. Dit is mijn eerste keer met behulp van de Arduino en ook met acryl, beide ik erg leuk om te werken met al gevonden.  Dit is ook mijn eerste Instructables dus hopelijk heb ik uit
EIGENBOUW (DIY) CNC router - Arduino gebaseerd (GRBL)

EIGENBOUW (DIY) CNC router - Arduino gebaseerd (GRBL)

Al voor een paar maanden of zelfs jaren, ik was van plan om te bouwen van mijn eigen CNC freesmachine. Nu heb ik besloten dat het was tijd om te doen! Ik lees veel over andere DIY projecten en op het einde vond ik het ontwerp van de Arduino CNC-intst
Sable 2015 CNC Arduino + GRBL = LunchBox CNC

Sable 2015 CNC Arduino + GRBL = LunchBox CNC

Dit is mijn 2de Instructable en mijn 2de Arduino aangedreven CNC, dit keer rond ik omhoog de moeilijkheidsgraad door te besluiten om een zelf bevatte CNC eenheid door ontwerp mijn eigen elektronica behuizingen en plaatsingen.De stappen van dit Instru
Programable MIDI Synth met Intel Edison en Csound

Programable MIDI Synth met Intel Edison en Csound

Een MIDI-controller is zoals een computer toetsenbord, maar in plaats van tekens worden verzonden naar de computer, het stuur notities (en een heleboel meer informatie over hoe de notitie wordt gespeeld). U kunt meer informatie over MIDI-Controllers
Tweede huid Synth

Tweede huid Synth

Als muzikant wilt soms u lopen van de computer en het gebruik van knoppen en knoppen. Sommigen dromen van een instrument of de interface die is meer experimentele en levendig. Er zijn vele mogelijkheden, de hemel is de grens als het gaat om het ontwe