Teensy Monster v1.0 / / DIY MIDI-Controller (9 / 11 steg)
Steg 9: Testa krets (del B - programvara)
Öppna "TeensyMonster_v1_TestCircuit_Basic.ino" i Arduino.
Skanna igenom Redigera koden och du kommer att se följande
- Tryckknapp stift 28 och 29 har aktiverats
- Tryckknapp läge för pin 29 har fastställts till 4 (växla läge)
- Lysdioderna på stift 14 och 15 har aktiverats
- Kodare har aktiverats på på stift 0/1 och 2/3
- Analoga Mix stift 0 och 1 har aktiverats
Som man kan förvänta sig, har koden konfigurerats för att fungera med din test krets. Detta förutsätter att du använder tryckknappar, lysdioder, potentiometrar och pulsgivare. Om du inte använder någon av dessa är det viktigt du ställa in stiften tillbaka till deras standardvärden. Att aktivera PIN-koder som inte är anslutna till komponenter kommer att orsaka oväntad utgång.
Om du följde min anvisningar noga och alltid började med grå/vit kabel pin-koder ska vara korrekt. Om du blandat upp beställning, konfigurera om koden för att matcha din pin-koder.
När allt har konfigurerats, ladda upp 'TeensyMonster_v1_TestCircuit_Basic.ino' till Teensy Monster.
Öppna den seriella bildskärmen (se bild).
Du bör se konfigurationen nedan (se bilden):
___DEBUG ENABLED___
~ ~ ~ KONTROLLERA KONFLIKTER ~ ~ ~
~ ~ ~ PIN CONFIG ~ ~ ~
Tryckknapp på stift [28] är aktiverad med tryckknapp läge [1]
Tryckknapp på stift [29] är aktiverad med tryckknapp läge [4]
LED på stift [14] är aktiverad
LED på stift [15] är aktiverad
Kodare på stift [0,1] är aktiverad
Kodare på stift [2,3] är aktiverad
Analog i på multiplexer stift [0] är aktiverad
Analog i på multiplexer stift [1] är aktiverad
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PROGRAMMET STARTAR LOOPING I TRE SEKUNDER...
Om du ser utdata i följetong Monitor men du inte interagerar med en komponent, då är något fel. Detta är ett vanligt problem. Det kan orsakas av något av följande.
- Aktiverat en komponent på fel pin--kontrollera din pin-konfiguration.
- Hooked upp en potentiometer eller encoder felaktigt--kolla databladet komponent.
- Analoga jitter frågor--öka variabeln "analogThreshold".
Om du ser ingen eller galna utmatning på Serial bildskärmen, kan detta orsakas av en av två saker. Frist, kontrollera din Serial Port (se bilden). Om du är på fel serieporten visas inte någon utgång--hitta rätt port. För det andra, kolla din baudfrekvens och kontrollera 9600 (se bilden).
** Varning--jag måste informera er om en bugg som stört länge Teensyduino (förhoppningsvis det kommer fixas snart). För ingen anledning alls, Teensy kan inte längre visas är serieporten. Det kommer att bara försvinna. När du försöker överföra uppmanas koden Arduino upprepade gånger du att slå återställningsknappen, trots att trycka på reset-knappen kommer inte. Om du märker detta galna beteende, måste du stänga Arduino och öppna det igen. Om problemet kvarstår kan måste du ibland starta om datorn (vanligt på Apple). Det är en mycket irriterande bug.* *
** Andra varning--I sällsynta fall, Teensy stoppar visande upp i serieporten oavsett vad du försöker. Det hände mig ett par gånger, och det är lite irriterande att fixa. Lösning här.
Om allt fungerar som förväntat bör du se följande:
- Tryckknapp 1 skickar växla meddelande "klick on/off". Växlar också mellan LED/på på 100% ljusstyrka.
- Tryckknapp 2 skickar "Klicka på" message nedtryckta och "klicka bort" meddelande på release. LAMPAN är tänd på 25% ljusstyrka nedtryckta.
- Pulsgivare utgång "framåt" eller "omvänd" meddelande beroende på vilket sätt de är aktiverade.
- Potentiometrar produktionen värde mellan 0 och 127.
Ladda upp 'TeensyMonster_v1_TestCircuit_Shift.ino' till Teensy Monster.
Vi har gjort en kritisk ändring till denna kod. Vi har lagt en shift-knappen.
//SHIFT_______________________________________________
SHIFT-reglagen erbjuder dubbla funktionalitet till din tryckknappar och pulsgivare
//if med ett skift knappen Ange den pin-kod här, annars sätta 0
int shiftPin = 28;
Håll shift-knappen och interagera med andra kodare och andra tryckknapp. Du kommer att märka tryckknappen har gjort dubbla funktionalitet för dessa komponenter. Detta betyder, när SKIFT knappen hålls de olika meddelanden-utgång, och således kan ha dubbla funktioner. Genomtänkta SKIFT knappar kan drastiskt minska antalet komponenter behövs på din gränssnitt--vilket resulterar i en mer elegant designade yta.