En ram för att göra prisvärda & eleganta modulära styrsystem (USB till MIDI, gömde sig, eller seriella) (11 / 15 steg)

Steg 11: Allt om koden




Jag gjorde min absolut bästa att göra koden användarvänligt. Koden innehåller många kommentarer för att hjälpa dig att förstå vad som pågår. Du behöver inte skriva någon kod, mer-så, bara fylla i tomrummen. Enkelt. Endast om du vill lägga till några LED funktioner ska du lägga till några grundläggande kod. Det finns ett LED exempel inom koden för att komma igång.

Jag var aldrig utbildade en programmerare, men jag anser att koden ska vara jäkligt bra! Tack vare min bror Neil för hjälp med några av de svåra delarna.

Koden är uppdelad i fem avsnitt:

  1. Redigera - avsnittet där du är skyldig att göra lämpliga ändringar relaterade till handkontrollen med en Fyll-i-blanks metod.
  2. Variabler och funktioner - innehar variabler och funktioner som används av koden.
  3. Setup - är det här vi definierar ut pin-konfiguration, informera Teensy vilka stift i indata och som är en utgång.
  4. Loop - hjärnan hos våra hela operationen. Denna funktion loopar om och om igen medan Teensy körs.
  5. Kommunikation funktioner - dessa funktioner hanterar våra meddelanden.

Inom dessa fem avsnitt hittar du ofta underavsnitten för tryckknappar, lysdioder, analog-in Teensy, analog-in multiplexer och pulsgivare.

Om du inte använder Traktor mjukvara, kommer du sannolikt behöva redigera rotationsencoder MIDI meddelanden. Dokumentationen för din programvara för att förstå det förväntade meddelandeformatet. När du lista ut snälla budskap mig så jag kan lägga till detta Instructable.

Även om det inte är absolut nödvändigt att förstå alla koden, vill jag bara förklara en kodsträng som hjälper dig att förstå hur kontrollmeddelanden arbete. Koden nedan skickar analoga meddelanden för en potentiometer. Det finns tre lägen (debug, I2C och MIDI) som du slår på/av i redigeringarna. Om debug är aktiveratkan meddelanden skickas via USB till seriell bildskärmen att hjälpa till med felsökning. 'serialDebugOut' är en mycket grundläggande funktion jag skrev som skickar meddelandena följetong och det kan ses längst ner i koden. Om I2C aktiveras, meddelanden skickas via I2C till ledar-modulen som sedan kommer att vidarebefordra meddelanden via USB. Om MIDI är aktiverat, då den här domänkontrollanten skickar MIDI-meddelanden direkt via USB till datorn. "usbMIDI." är ett specifikt meddelande används av Teensy ++ för MIDI-meddelanden. Läs mer om Teensy MIDI här. Tänk på att du kan redigera koden för att skicka många typer av meddelanden: Teensy USB-seriell, Teensy USB-tangentbord, Teensy USB-mus, Teensy USB Joystick, Teensy USB MIDIoch Arduino följetong.

IF(enableDebug==1) {//SERIAL debug är på
serialDebugOut("Analog",i,tempAnalogInMap);
}
annat if(enableI2C==1) {//I2C
serialI2COut('a',i,tempAnalogInMap,channelNumber);
}
annat {//MIDI
usbMIDI.sendControlChange(i,tempAnalogInMap,channelNumber);
}

Läst koden/kommentarer om och om igen, det gör ta några iterationer för att svepa huvudet runt. Du kan lära mycket av koden. Ständigt referens Arduino bibliotek för sektioner som du inte förstår.

Rotationsencoder koden är en otäcka odjur. Om du känner dig ambitiös kan du läsa mer om det här.

** Sannolikt det kommer några förbättringar som göras till koden över tiden så fortsätter att kolla tillbaka för den senaste version.* *

All kod finns här på GitHub. För detta avsnitt Använd koden med titeln "Controller kod". Klicka på "ZIP" i den övre vänstern att ladda ner.

Se Steg
Relaterade Ämnen

Rijido, att göra mer prisvärda & bekväma protetiska sockets.

Rijido, att göra mer prisvärda och komfortabel protetiska sockets."Den amputerade Coalition of America uppskattar att det finns 185.000 nya nedre extremiteten amputationer varje år bara i USA och en uppskattad befolkning på 2 miljoner amerikanska amp...

Prisvärda utomhus film skärm för under $50

här nere i Texas vi inte får en massa trevliga utomhus väder som inte inkluderar hungriga, mammut-stora insekter. När hösten och vintern kommer försöker vi göra bästa av det.Detta instructable visar dig hur man gör en kvalitet, prisvärda, Instoppbart...

Prisvärda Pro Audio redskap för kreativa folk.

Hej, jag är Jesus Ortiz (jag är född 03-21-1981) och jag är en kille som ljud. Jag är musiker, jag arbetar i pro audio, en am ivrig audiofil. Ljud och elektronik är min passion. Jag anser att redskap för människor med goda idéer inte ska bryta banken...

Att lägga till MIDI till gamla hem organ

i en tidigare instructable "hur till få en fri synt" jag talade om hur du skaffar en "synt" (ett hem orgel) för nästan ingenting. Så, kanske nu du har din gratis hem orgel och kanske det ser cool men fungerar inte korrekt eller kanske...

Hälsosamma och prisvärda måltiden Prep 101

Här är 5 måltider för 5 luncher. Du kan förbereda dessa måltider på en söndag natt för den kommande veckan. Om du har alla ingredienser, är min uppskattning av tid ungefär en timme. Detta är ett bra sätt att budget och har äta hälsosamt. Varje måltid...

Att göra multiplar från 3D utskrifter: vrida konst till ett spel

3D-utskrift har blivit den go-to för att skapa multiplar. Efter 3D-scanning och skriva ut min vän och medarbetare på detta projekt, Nancy Sayavong, beslutade vi att använda hennes 3D utskrift som utgångspunkt för en ny projekt med mögel-making och gj...

Att återuppliva och åtgärda en lång övergiven Rototiller.

jag har trädgårdsarbete på länge och jag har utvecklat mitt eget system som verkligen fungerar för mig. En del av den framgång jag har haft med min system beror rototiller som jag använder och hur jag använder den. Jag förklarade mycket om mitt syste...

Från atomer till bitar till atomer: lära sig OpenSCAD genom att kopiera en katt leksak

det finns några kattleksaker på huset som är särskilt populär bland boende. De är enkla ihåliga sfärer med utstansade slitsar. De är bra för kattungar att sparka - små och lätta. Efter stirrar på en för några minuter, lappteknik ut geometri, insåg ja...

Ram för att installera rep julbelysningen på ryggen av tak

vi älskar använda rope lights för externa juldekorationer - de ser smart, är pålitlig och enkel att förvara. Nackdelen är i installationen. Du kan köpa multi-purpose plast clips som fungerar med alla belysningssystem (C9, C7, mini-ljus, rep belysning...

Fiska ram för att ta fotografier av levande mikro-fisk

Min vän och jag är på en strävan att fånga och äta varje arter sötvattensfisk i New Hampshire, vi skriver en bok och har en hemsida och blogg www.fishnerds.com; Ett av problemen med strävan är att vi fångar massor av små fiskar, promelas, dace, simpo...

Flygfotografering Super prisvärda Kite

Hej alla!Här är ett mycket roligt och super lätt att bygga tutorial på en drake som kommer att ta en kamera upp i himlen och låt du knäppa de flygbilder som du alltid har drömt om. Draken kostar slantar att göra egentligen men är mycket effektivt för...

Gertee: Prisvärda bärbara hem

Gertee är vad vi kallar vår söta Alaskan twist på den ursprungliga ger/runda hut design, byggd av människor runt om i världen i tusentals år. Jag döpt den första som jag byggt sommaren 2004, "Gertee" eftersom jag gjort det en halv ger/halv tältk...

DIY jul inredning! Lätt & prisvärda idéer!

Idag vill jag ge dig min första jul tema video! där kommer jag visa dig några DIY idéer för att dekorera ditt rum för semesterperioden. De är verkligen enkelt och prisvärt så jag hoppas du gillar dem och låt oss gå in videon!Den första är verkligen v...

Med Littlebits HDK för att bygga en Tilt känsliga modul

Littlebits HDK är en bra samling av moduler som hjälper du prototyp och testa en modul i din alldeles egna. I denna tutorial, vi kommer att använda det för att skapa en modul som känner av lutning och gest kit är ganska okomplicerad.Material:Littlebi...

PRISVÄRDA LASER LIGHT SHOW

lasrar är kul, men vad annat kan de användas för? Laser ljus visar är ett alternativ. Jag har varit på många konserter där laser visar används. Jag har alltid velat ha en av mina egna, men de bra, färdiga uppställningar som vanligen används i konsert...

Hur att installera och starta Damn Small Linux på en USB Flash Drive

vilja till veta hur till installera och starta Damn Small Linux på din usb blixt driva sedan Uppehälleläsning. du kommer att behöva vända dina högtalare upp hela vägen för videon inte hade några problem med mic volymenSteg 1: Ladda ner filerna som kr...

5 jul & nya året gåva kort idéer - lätt & prisvärda presenter - DIY papper hantverk

Denna handledning är det steg för steg instruktioner, så det är mycket lätt att underastand den.Vi inbjuder dig att prenumerera på denna kanal att titta på framtida videor!http://xly.us/XI9s4Glöm inte att gilla, kommentera och dela detta projekt :)St...

Hur man får en flicka till som du... eller på minst hur att ge det din bästa bild...

Tro det eller ej... mest vuxna män förstår inte hur man gör detta och jag själv är inte alltid på den punkten... men tänkte att jag skulle dela några av mina kunskaper som jag har lärt mig tidigare 15 eller så åren...Steg 1: Första intryck... Alla är...

Göra en smörkniv för att sprida kalla, hårda smör

Hej Instructablers.Här är hur du kan göra en smörkniv som klarar kallt smör direkt från kylskåpet utan slet upp ditt bröd eller rostat bröd.Den ursprungliga idén är inte min. Jag såg det på kicken: https://www.kickstarter.com/projects/1070983896/th.....