OSC-CV Converter

Dependencies:   Bonjour OSCReceiver TextLCD mbed mbed-rpc BurstSPI DebouncedInterrupt FastIO MIDI OSC OSCtoCV ClockControl

OSC to CV Converter

http://gtbts.tumblr.com/post/125663817741/osc-to-cv-converter-ver2-mbed-osctocv

/media/uploads/casiotone401/tumblr_nsg7y4pkfg1qlle9fo1_540.png

Files at this revision

API Documentation at this revision

Comitter:
casiotone401
Date:
Sun Jan 31 12:56:12 2016 +0000
Parent:
25:6b29d7e631cb
Child:
27:65e873bf8307
Commit message:
minor change;

Changed in this revision

OSCtoCV.lib Show annotated file Show diff for this revision Revisions of this file
main.cpp Show annotated file Show diff for this revision Revisions of this file
--- a/OSCtoCV.lib	Thu Jan 28 14:12:25 2016 +0000
+++ b/OSCtoCV.lib	Sun Jan 31 12:56:12 2016 +0000
@@ -1,1 +1,1 @@
-https://developer.mbed.org/users/casiotone401/code/OSCtoCV/#9fa7540890c9
+https://developer.mbed.org/users/casiotone401/code/OSCtoCV/#d945a20b1e31
--- a/main.cpp	Thu Jan 28 14:12:25 2016 +0000
+++ b/main.cpp	Sun Jan 31 12:56:12 2016 +0000
@@ -49,7 +49,7 @@
 //-------------------------------------------------------------
 // Macros
 
-#define MODE_CLB           0        // Calibration (for VCO Tuning)
+#define MODE_CLB            0        // Calibration (for VCO Tuning)
 #define MODE_OSC            1        // Mode OSCtoCV 
 #define MODE_SEQ            2        // Mode Shift Sequencer
 #define MODE_185            3        // Mode M185 Sequencer
@@ -153,13 +153,11 @@
                 
                 if (gCtrlSW[3])
                 {   // euclid sequencer auto offset
-                    ShiftCVSeq(EuclideanSeq(GateSeq(bpm, N16TH, SUBGATE, (gCtrl[6] * 5), NON_INVERT, GATESOUT_OFF, SYNC_OFF), gCtrlSW[0], GATESOUT_OFF, true), gCtrlSW[0], CV_CHANNEL8);
+                    ShiftCVSeq(EuclideanSeq(GateSeq(bpm, N16TH, SUBGATE, (gCtrl[6] * 12), NON_INVERT, GATESOUT_OFF, SYNC_ON), gCtrlSW[0], GATESOUT_OFF, true), gCtrlSW[0], CV_CHANNEL8);
                 
                 } else {
                     
-                    ShiftCVSeq(GateSeq(bpm, N16TH, GATE1, (gCtrl[6] * 5), NON_INVERT, GATESOUT_OFF, SYNC_ON), gCtrlSW[0], CV_CHANNEL8);
-                    // beats sequencer
-                    BeatsSeq(GateSeq(bpm, N16TH, SUBGATE, 3, NON_INVERT, GATESOUT_OFF, SYNC_OFF), gCtrlSW[0], GATESOUT_OFF);
+                    ShiftCVSeq(BeatsSeq(GateSeq(bpm, N16TH, SUBGATE, (gCtrl[6] * 8), NON_INVERT, GATESOUT_OFF, SYNC_ON), gCtrlSW[0], GATESOUT_OFF), gCtrlSW[0], CV_CHANNEL8);
                 }
                 break;
                 
@@ -170,13 +168,11 @@
                 
                 if (gCtrlSW[3])
                 {   // euclid sequencer auto offset
-                    M185Seq(EuclideanSeq(GateSeq(bpm, N16TH, SUBGATE, (gCtrl[6] * 5), NON_INVERT, GATESOUT_OFF, SYNC_OFF), gCtrlSW[0], GATESOUT_OFF, true), gCtrlSW[0], CV_CHANNEL8);
+                    M185Seq(EuclideanSeq(GateSeq(bpm, N16TH, SUBGATE, (gCtrl[6] * 12), NON_INVERT, GATESOUT_OFF, SYNC_ON), gCtrlSW[0], GATESOUT_OFF, true), gCtrlSW[0], CV_CHANNEL8);
                     
                 } else {
                     
-                    M185Seq(GateSeq(bpm, N16TH, GATE1, (gCtrl[6] * 5), NON_INVERT, GATESOUT_OFF, SYNC_ON), gCtrlSW[0], CV_CHANNEL8);
-                    // beats sequencer
-                    BeatsSeq(GateSeq(bpm, N16TH, SUBGATE, 3, NON_INVERT, GATESOUT_OFF, SYNC_OFF), gCtrlSW[0], GATESOUT_OFF);
+                    M185Seq(BeatsSeq(GateSeq(bpm, N16TH, SUBGATE, (gCtrl[6] * 8), NON_INVERT, GATESOUT_OFF, SYNC_ON), gCtrlSW[0], GATESOUT_OFF), gCtrlSW[0], CV_CHANNEL8);
                 }
                 break;
             
@@ -186,13 +182,11 @@
                 
                 if (gCtrlSW[3])
                 {   // euclid sequencer auto offset
-                    PolyCVSeq(EuclideanSeq(GateSeq(bpm, N16TH, SUBGATE, (gCtrl[6] * 5), NON_INVERT, GATESOUT_OFF, SYNC_OFF), gCtrlSW[0], GATESOUT_OFF, true), gCtrlSW[0]);
+                    PolyCVSeq(EuclideanSeq(GateSeq(bpm, N16TH, SUBGATE, (gCtrl[6] * 12), NON_INVERT, GATESOUT_OFF, SYNC_ON), gCtrlSW[0], GATESOUT_OFF, true), gCtrlSW[0]);
                     
                 } else {
                     
-                    PolyCVSeq(GateSeq(bpm, N16TH, GATE1, (gCtrl[6] * 5), NON_INVERT, GATESOUT_OFF, SYNC_ON), gCtrlSW[0]);
-                    // beats sequencer
-                    BeatsSeq(GateSeq(bpm, N16TH, SUBGATE, 3, NON_INVERT, GATESOUT_OFF, SYNC_OFF), gCtrlSW[0], GATESOUT_OFF);
+                    PolyCVSeq(BeatsSeq(GateSeq(bpm, N16TH, SUBGATE, (gCtrl[6] * 8), NON_INVERT, GATESOUT_OFF, SYNC_ON), gCtrlSW[0], GATESOUT_OFF), gCtrlSW[0]);
                 }
                 break;
                     
@@ -272,7 +266,7 @@
 // Init BPM
     gCtrl[0] = 0.398f;
 
-// Init Sequence Data
+// Init Sequencer Data
     for (i = 0; i < 16; ++i) 
     {
         gSeq_cv[i] = (calibMap1[69] * SCALING_N);