Bouwen van een Basic Midi Controller deel 1 - eenvoudig 3 effecten Pot (Potentiometer) Arduino Uno Midi-Controller (Serial-USB)... Snel, gemakkelijk en goedkoop! (4 / 7 stap)

Stap 4: De Code

Hier is de aardige beetje van eenvoudige code op basis van een voorbeeld gemaakt terug in 2009 door starfiretech. De belangrijkste aanpassingen die ik deze code gemaakt heb moesten controleren nieuwe waarden tegen oude waarden, alleen het verzenden van midi-data wanneer een verandering wordt ontdekt; en de andere toevoegen een kleine vertraging te verwijderen elke lichte variaties gegeven in waarde wanneer de pot niet geraakt is, licht aangeraakt of een beetje krijgt klop. Voordat ik dit voegde mij watertje getting afwisseling (door +/-1) in waarde wanneer licht geraakt waardoor de vertraging te verwijderen.

 int val = 0; //Our initial pot values. We need one for the first value and a second to test if there has been a change made. This needs to be done for all 3 pots.int lastVal = 0; int val2 = 0; int lastVal2 = 0; int val3 = 0; int lastVal3 = 0;void setup() { Serial.begin(9600); // Set the speed of the midi port to the same as we will be using in the Hairless Midi software }void loop() { val = analogRead(0)/8; // Divide by 8 to get range of 0-127 for midi if (val != lastVal) // If the value does not = the last value the following command is made. This is because the pot has been turned. Otherwise the pot remains the same and no midi message is output. { MIDImessage(176,1,val);} // 176 = CC command (channel 1 control change), 1 = Which Control, val = value read from Potentionmeter 1 NOTE THIS SAYS VAL not VA1 (lowercase of course) lastVal = val; val2 = analogRead(1)/8; // Divide by 8 to get range of 0-127 for midi if (val2 != lastVal2) { MIDImessage(176,2,val2);} // 176 = CC command, 2 = Which Control, val = value read from Potentionmeter 2 lastVal2 = val2; val3 = analogRead(2)/8; // Divide by 8 to get range of 0-127 for midi if (val3 != lastVal3) { MIDImessage(176,3,val3);} // 176 = CC command, 3 = Which Control, val = value read from Potentionmeter 3 lastVal3 = val3; delay(10); //here we add a short delay to help prevent slight fluctuations, knocks on the pots etc. Adding this helped to prevent my pots from jumpin up or down a value when slightly touched or knocked. }void MIDImessage(byte command, byte data1, byte data2) //pass values out through standard Midi Command { Serial.write(command); Serial.write(data1); Serial.write(data2); } 

Gerelateerde Artikelen

Procedure: Bouwen van een Basic 2 verhaal huis In Minecraft!!!

Procedure: Bouwen van een Basic 2 verhaal huis In Minecraft!!!

Hello everybody!Ik ben terug met een andere eenvoudige en leuke minecraft tutorial... de reden im doen deze instructables omdat school is begonnen (BOOOOOO) een i is niet in staat geweest om ambachtelijke zoveelMaar zoals ik altijd zeg ik hoop dat u
Bouwen van een Basic Home Bar

Bouwen van een Basic Home Bar

een paar stap voor stap instructies te volgen, ik zal je leren hoe te bouwen van een eenvoudige huis bar die zal voldoen aan uw behoeften. Met een bar in een kelder of andere woonruimte is essentieel voor get bijeenkomsten, of ze nu met vrienden of f
Bouwen van een glasvezel boog voor $5 zeer eenvoudige goedkoop en schaalbaar

Bouwen van een glasvezel boog voor $5 zeer eenvoudige goedkoop en schaalbaar

zal tonen We u hoe te bouwen van een uiterst eenvoudig en duurzaam glasvezel boog die kan worden geschaald naar elke kracht. Hoewel het is zeker niet voor de schietwedstrijd, het is zeer de moeite waard de $5. Deze waarschuwing is gevaarlijk en mag n
Hoe het bouwen van een unieke Minecraft huis deel 2

Hoe het bouwen van een unieke Minecraft huis deel 2

In dit deel zal ik u tonen hoe te bouwen van het interieur.Stap 1: Stap 1 2 blokken van het 3e blok bouwen zoals in de afbeelding (aan beide zijden)Stap 2: Stap 2 Nu het verlaten van een plaats kloof 2 blok 2 meer blokken. Vervolgens uitbreiden door
Bouwen van een Bluespec LED controller met behulp van Connectal Build

Bouwen van een Bluespec LED controller met behulp van Connectal Build

Deze tutorial wordt uitgelegd hoe u de dienst van het publiek Connectal te bouwen om te bouwen en simuleren van een toepassing met hardware en software componenten die zijn geschreven in BSV en C++ met behulp van het Connectal-kader.Wij gaan ervan ui
Hoe het bouwen van een basic badkamer muur kast

Hoe het bouwen van een basic badkamer muur kast

De badkamer in de kelder van ons huis een half bad is en net een beetje meer opslagruimte kon gebruiken. De vorige eigenaar gebouwd in sommige kasten rond de gootsteen en gebruikt zeer fundamentele bouw met pijnbomen en geschilderd van het project. H
Voorste Frame hoorn Brace - bouwen van een Pure voorraad raceauto - deel 1

Voorste Frame hoorn Brace - bouwen van een Pure voorraad raceauto - deel 1

was mijn eerste carrière 1/4 mijl onverharde weg racewagens, bouwen en verkopen. Toen mijn vriend Trish besloten tot het nemen van de sport, sprong ik op de kans om te bouwen met haar. I 'm gonna document het proces op video, ik hoop dat u genieten v
Passagierszijde verkwikkende - bouwen van een Pure voorraad raceauto - deel 5

Passagierszijde verkwikkende - bouwen van een Pure voorraad raceauto - deel 5

was mijn eerste carrière 1/4 mijl onverharde weg racewagens, bouwen en verkopen. Toen mijn vriend Trish besloten tot het nemen van de sport, sprong ik op de kans om te bouwen met haar. I 'm gonna document het proces op video, ik hoop dat u genieten v
Rolbeugel installatie - bouwen van een Pure voorraad raceauto - deel 2

Rolbeugel installatie - bouwen van een Pure voorraad raceauto - deel 2

was mijn eerste carrière 1/4 mijl onverharde weg racewagens, bouwen en verkopen. Toen mijn vriend Trish besloten tot het nemen van de sport, sprong ik op de kans om te bouwen met haar. I 'm gonna document het proces op video, ik hoop dat u genieten v
Installeren van deur Bars (sissy balken) - bouwen van een Pure voorraad raceauto - deel 3

Installeren van deur Bars (sissy balken) - bouwen van een Pure voorraad raceauto - deel 3

was mijn eerste carrière 1/4 mijl onverharde weg racewagens, bouwen en verkopen. Toen mijn vriend Trish besloten tot het nemen van de sport, sprong ik op de kans om te bouwen met haar. I 'm gonna document het proces op video, ik hoop dat u genieten v
Halo en venster Post installatie - bouwen van een Pure voorraad raceauto - deel 4

Halo en venster Post installatie - bouwen van een Pure voorraad raceauto - deel 4

was mijn eerste carrière 1/4 mijl onverharde weg racewagens, bouwen en verkopen. Toen mijn vriend Trish besloten tot het nemen van de sport, sprong ik op de kans om te bouwen met haar. I 'm gonna document het proces op video, ik hoop dat u genieten v
Bouwen van een controleerbare koffie Roaster van een lucht Popcorn Popper

Bouwen van een controleerbare koffie Roaster van een lucht Popcorn Popper

ik heb een passie voor koffie.  Ik heb ook een passie voor elektrotechniek.  Waarom niet combineren?Dit Instructable beschrijft hoe ik een hete lucht popcorn popper omgezet in een volledig beheersbare koffie brander!  Volg deze instructies om opnieuw
Hoe het bouwen van een houten peddel bord

Hoe het bouwen van een houten peddel bord

Waarom bouwen een houten SUP?Paddle boarding is inherent een zeer schone activiteit, maar als je bedenkt dat de schadelijke chemicaliën, overzeese productie en korte levensduur van schuim paddleboards, dingen er heel anders uitzien. Voor een lange ti
Bouwen van een Winter / zomer groeien tabel

Bouwen van een Winter / zomer groeien tabel

Bouwen van een Winter / zomer groeien tabel is eenvoudig. Het kan worden bedekt met dikke plastic zeilen in de winter en schaduw doek tijdens de zomermaanden.Helemaal u nood zit...1. kunststof rekken2. 1/2" PVC pijp3. een kotter voor de PVC-pijp4. zi