Een kader voor het maken van betaalbare & stijlvolle modulaire Controllers (USB naar MIDI, verborgen, of serieel) (11 / 15 stap)

Stap 11: Alles over de Code



Ik deed mijn absoluut de beste gebruikersvriendelijker te maken de code. De code omvat vele commentaren zodat u kunt begrijpen wat er gaande is. U bent niet verplicht om te schrijven van code, dus-meer, vul de blanco. Gemakkelijk. Alleen als u wilt toevoegen sommige functies van de LED zal u wilt toevoegen sommige basic-code. Er is een voorbeeld van de LED geboden binnen de code om te beginnen.

Ik was nooit getraind als een coder, maar ik vind deze code te zijn behoorlijk verdomd goed! Dankzij mijn broer Neil voor hulp met een aantal van de moeilijker secties.

De code is onderverdeeld in vijf secties:

  1. Bewerken - de sectie waar u verplicht bent te maken van de juiste bewerkingen gerelateerde aan de controller met behulp van een methode aanvullen-in-de-spaties.
  2. Variabelen en functies - houdt de variabelen en functies die door de code wordt gebruikt.
  3. Setup - dit is waar we definiëren uit pin-configuratie, informeren de Teensy welke pin een ingang en die een output is.
  4. Lus - de hersenen van onze hele operatie. Deze functie lus over en voorbij terwijl de Teensy wordt uitgevoerd.
  5. Communicatiefuncties - deze functies behandelen onze berichten.

Binnen deze vijf secties vaak vindt u de subsecties voor drukknoppen, LED's, analoge-in Teensy, analog-in multiplexer en encoders.

Als u niet van Traktor software gebruikmaakt, zul je waarschijnlijk de roterende encoder MIDI-berichten bewerken. Raadpleeg de documentatie van uw software om te begrijpen van de verwachte berichtindeling. Wanneer u postuur op uiterlijk gelieve message me zodat ik het aan dit Instructable kan toevoegen.

Hoewel het niet noodzakelijk om te begrijpen van alle code, wil ik gewoon om uit te leggen van een fragment van code die zal u helpen begrijpen hoe de besturingsberichten werken. De onderstaande code stuurt analoge berichten voor een potentiometer. Er zijn drie modi (debug, I2C en MIDI) die u op/in de bewerkingen zet. Als de Foutopsporing is ingeschakeld, berichten worden verzonden via USB aan op de seriële monitor om te helpen met het opsporen van fouten. 'serialDebugOut' is een zeer fundamentele functie ik schreef die stuurt deze seriële berichten en kan bekeken worden aan de onderkant van de code. Als I2C is ingeschakeld, berichten worden verzonden via I2C naar de master module, die vervolgens de berichten via USB stuurt. Als dat Midi is ingeschakeld, wordt deze controller MIDI-berichten rechtstreeks via USB naar de computer stuurt. ' usbMIDI' is een bepaald bericht door Teensy ++ gebruikt voor MIDI-berichten. Lees meer over Teensy MIDI hier. Houd in mening u de code voor het verzenden van vele soorten berichten kunt bewerken: Teensy USB seriële Teensy USB-toetsenbord, Teensy USB-muis, Teensy USB Joystick, Teensy USB MIDIen Arduino Serial.

if(enableDebug==1) {//SERIAL debug brandt
serialDebugOut("Analog",i,tempAnalogInMap);
}
anders if(enableI2C==1) {//I2C
serialI2COut('a',i,tempAnalogInMap,channelNumber);
}
else {//MIDI
usbMIDI.sendControlChange(i,tempAnalogInMap,channelNumber);
}

Lees de code/commentaar over en voorbij, maken het nemen van een paar iteraties om uw hoofd wikkelen rond. U kunt veel leren van de code. Voortdurend verwijst naar de Arduino library voor secties die u niet begrijpt.

De roterende encoder-code is een vervelende beest. Als je ambitieus voelt kunt u meer lezen over het hier.

** Waarschijnlijk er worden enkele verbeteringen aangebracht in de code na verloop van tijd zo blijven controleren terug voor de laatste version.* *

Alle code vind je hier bij GitHub. Gebruik de code met een adellijke titel 'Controller Code' voor deze sectie. Klik op 'ZIP' in de linkerbovenhoek om te downloaden.

Gerelateerde Artikelen

Een methode voor het maken van een kartonnen kubus tonen van haar zes diagonale vlakken van symmetrie

Een methode voor het maken van een kartonnen kubus tonen van haar zes diagonale vlakken van symmetrie

Deze Instructables biedt een methode voor het illustreren van welke geometrische figuur is het resultaat als een cube is snijden langs de zes diagonale vlakken van symmetrie. Acht identiek kubussen worden verkregen wanneer een cube is snijden langs d
Een gids voor het maken van een weergave octopus voor uw sieraden.

Een gids voor het maken van een weergave octopus voor uw sieraden.

Dit is Octavia, ze is een van mijn sieraden displays voor onze Farmer's Market. Ze ziet er goed net opknoping out thuis, of werken op de markt!Ik gebruikte materialen:Papier handdoek buis, aluminiumfolie, masking tape, gipsen, oude woordenboek-pagina
Technieken voor het maken van een paar eenvoudige dozen

Technieken voor het maken van een paar eenvoudige dozen

dit instructable zal tonen verschillende technieken voor het maken van eenvoudige houten dozen."Maar Photozz," zeggen u... "Dat is gewoon... lame. Cant u kappen en paraplu en broodrooster samen om iets te maken dat je droog en warm op hetze
Slee voor het maken van een ware rand met een tabel zag

Slee voor het maken van een ware rand met een tabel zag

zelfs als uw hout heeft voor een ware rand is geschaafd, wijzigingen na verloop van tijd kunnen betekenen, het is niet langer waar. Ik wil laten zien een competitieprogramma voor het maken van een ware rand met een tabel zag dat is een beetje anders
Een komlete gids voor het maken van sieraden van chainmaille.

Een komlete gids voor het maken van sieraden van chainmaille.

Kan het erg bevredigend om te zien een stuk van prachtige sieraden u gemaakt van draad tot ringen tot sieraden. In dit instructable ik leert u hoe om dit geweldige ding te doen.Stap 1: Wat is nodig voor het maken van sieraden De hulpmiddelen die nodi
Handleiding voor het maken van een Storyboard

Handleiding voor het maken van een Storyboard

dit instructable is een gids op Hoe maak je een storyboard. Dit is een vrij eenvoudig proces, en allen het neemt is een beetje plezier en verbeelding. Er zijn vele methoden voor het maken van een storyboard, maar dit instructable verschijnt slechts t
Gids voor het maken van een ring met blad wax

Gids voor het maken van een ring met blad wax

HulpmiddelenHulpmiddelen voor het werken met blad wax zijn vrij basic.Snijgereedschappen (afbeelding 1)Schaar of maaimes(optioneel hulpprogramma - cirkel Snijder)extra verwarming (afbeelding 2)Embossing gereedschap van de warmte of kleine föhn(option
Geïllustreerd & gedetailleerde gids voor het maken van een brand zuiger

Geïllustreerd & gedetailleerde gids voor het maken van een brand zuiger

In dit instructable zal ik proberen om u te tonen hoe maak je een brand zuiger met relatief vaak materialen vinden op uw lokale hardware winkel. Het kostte me een paar pogingen te halen op werking juiste dus hopelijk dit instructable profiteren kunt
Gebruik vloeibare Latex voor het maken van een schilferige Effect

Gebruik vloeibare Latex voor het maken van een schilferige Effect

voor Halloween dit jaar wilde ik gaan als een slang meisje uit een 1920's Freakshow en een essentieel onderdeel van het kostuum is het creëren van een realistische schaaleffect. Na het experimenteren met verschillende producten vond ik dat vloeibare
10 eenvoudige stappen voor het maken van een Duct Tape Wallet

10 eenvoudige stappen voor het maken van een Duct Tape Wallet

Volg deze tien stappen voor het maken van een duct tape wallet.Gelieve elke stap volledig te lezen voordat u begint.Stap 1: Verzamel materialen1. Xacto mes (of soortgelijk gereedschap)2. de schaar3. de liniaal4. sharpie of pen5. de duct tape6. 3 x 5
Een eenvoudige gids voor het maken van geld op Runescape

Een eenvoudige gids voor het maken van geld op Runescape

dit is een eenvoudige gids voor het maken van geld snel op runescape. http://www.runescape.com/Stap 1: Het maken van geld voor Noobs (nieuwelingen) Geld verdienen met kippenTo make money met kippen naar een kippenboerderij (er is een in Lumbridge wan
Hoe om de pvc waterleiding voor het maken van een stuff, handmatige proces door plat gebrand

Hoe om de pvc waterleiding voor het maken van een stuff, handmatige proces door plat gebrand

soms op zoek naar materialen voor het maken van een object zoals een ambacht of ingrediënten deel van een prototype design te maken was een beetje moeilijk, laat staan we hoeven niet van 3D-printers.Misschien is dit de juiste waterpijp materialen pvc
AppleScript voor het maken van een tekstbestand in de huidige map van de Finder

AppleScript voor het maken van een tekstbestand in de huidige map van de Finder

U weet dat de situatie: in OSX u simpelweg zin voor het maken van een snelle tekstbestand in de huidige map van de Finder (durf ik noem het bureaublad?). AppleScript komt aan de redding!Stap 1: De AppleScript-pictogram toevoegen aan de menubalk van O
Methode voor het maken van 3D-vormen (gebruikt voor het maken van een fiets kuip)

Methode voor het maken van 3D-vormen (gebruikt voor het maken van een fiets kuip)

dit Instructable toont u hoe te maken een kuip (behuizing) voor uw fiets/trike/etc uit een combinatie van vel plastic en sommige items van het sanitair (PVC en sommige pijp voor ondersteunt). Het gaat hand in hand met de wind aangedreven fiets-projec