Synthesizer / Mbed 2 deprecated DBSMUSICPROJ4

Dependencies:   mbed

Committer:
benparkes
Date:
Wed Jul 24 15:06:20 2019 +0000
Revision:
4:e56a755aeaf1
Parent:
3:086e556b57f9
Child:
5:cf9d933e278a
Loop first trial

Who changed what in which revision?

UserRevisionLine numberNew contents of line
liam_grazier 0:951442bd3f7f 1 #ifndef __main__
liam_grazier 0:951442bd3f7f 2 #define __main__
liam_grazier 1:5b491fa83cb7 3 #include "variables.hpp"
liam_grazier 1:5b491fa83cb7 4 #include "math.hpp"
benparkes 4:e56a755aeaf1 5 #include "dataStore.h"
benparkes 4:e56a755aeaf1 6 #include "DebounceIn.h"
benparkes 4:e56a755aeaf1 7
benparkes 4:e56a755aeaf1 8
benparkes 4:e56a755aeaf1 9 dataStore loopBuffer[MAX_SAMPLES];
liam_grazier 1:5b491fa83cb7 10 InterruptIn clockin(PB_0);
liam_grazier 0:951442bd3f7f 11 DigitalIn runsw(PC_0);
benparkes 4:e56a755aeaf1 12 DebounceIn loopsw(PC_1);
liam_grazier 0:951442bd3f7f 13 AnalogIn analog_valuea(PA_0);
liam_grazier 0:951442bd3f7f 14 AnalogIn analog_valueb(PA_4);
liam_grazier 1:5b491fa83cb7 15 AnalogIn analog_valuec(PB_2);
liam_grazier 0:951442bd3f7f 16 DigitalOut led(PC_2);
liam_grazier 0:951442bd3f7f 17 BusOut multiplexa(PC_4,PC_5,PC_6);
liam_grazier 0:951442bd3f7f 18 BusOut multiplexb(PC_7,PC_8,PC_9);
liam_grazier 0:951442bd3f7f 19 BusOut multiplexc(PC_10,PC_11,PC_12);
liam_grazier 0:951442bd3f7f 20 DigitalOut ledclock(PB_10);
liam_grazier 0:951442bd3f7f 21 DigitalOut ledlatch(PB_12);
liam_grazier 0:951442bd3f7f 22 DigitalOut leddata(PB_11);
liam_grazier 1:5b491fa83cb7 23 DigitalOut lrun(PC_2);
liam_grazier 1:5b491fa83cb7 24 DigitalOut lloop(PC_3);
liam_grazier 0:951442bd3f7f 25 DigitalOut trigout(PA_5);
liam_grazier 0:951442bd3f7f 26 SPI dac(PB_5,PB_4,PB_3);
liam_grazier 1:5b491fa83cb7 27 Serial pc(PB_6, PA_10);
liam_grazier 0:951442bd3f7f 28 DigitalOut cs(PB_9);
liam_grazier 1:5b491fa83cb7 29 DigitalOut clockout(PA_12);
liam_grazier 1:5b491fa83cb7 30 //tempo val mapped
liam_grazier 1:5b491fa83cb7 31 float tempoval;
liam_grazier 1:5b491fa83cb7 32 int clockcount;
liam_grazier 1:5b491fa83cb7 33 int targetnumber;
liam_grazier 1:5b491fa83cb7 34 //ADC SETUP
liam_grazier 1:5b491fa83cb7 35 float adc1;
liam_grazier 1:5b491fa83cb7 36 float adc2;
liam_grazier 1:5b491fa83cb7 37 float adc3;
liam_grazier 1:5b491fa83cb7 38 // LED CONTROL
liam_grazier 1:5b491fa83cb7 39 bool lc;
liam_grazier 1:5b491fa83cb7 40 bool lcshp;
liam_grazier 1:5b491fa83cb7 41 bool ld;
liam_grazier 1:5b491fa83cb7 42 bool ldshp;
liam_grazier 1:5b491fa83cb7 43 bool le;
liam_grazier 1:5b491fa83cb7 44 bool lf;
liam_grazier 1:5b491fa83cb7 45 bool lfshp;
liam_grazier 1:5b491fa83cb7 46 bool lg;
liam_grazier 1:5b491fa83cb7 47 bool lgshp;
liam_grazier 1:5b491fa83cb7 48 bool la;
liam_grazier 1:5b491fa83cb7 49 bool lashp;
liam_grazier 1:5b491fa83cb7 50 bool lb;
liam_grazier 1:5b491fa83cb7 51 bool lsixteenth;
liam_grazier 1:5b491fa83cb7 52 bool leighth;
liam_grazier 1:5b491fa83cb7 53 bool lquater;
liam_grazier 1:5b491fa83cb7 54 bool lhalf;
liam_grazier 1:5b491fa83cb7 55 bool lone;
liam_grazier 1:5b491fa83cb7 56 bool ltwo;
liam_grazier 1:5b491fa83cb7 57 bool lnegtwo;
liam_grazier 1:5b491fa83cb7 58 bool lnegone;
liam_grazier 1:5b491fa83cb7 59 bool lzero;
liam_grazier 1:5b491fa83cb7 60 bool lplusone;
liam_grazier 1:5b491fa83cb7 61 bool lplustwo;
liam_grazier 1:5b491fa83cb7 62
benparkes 4:e56a755aeaf1 63 void pointerHandler(void){
benparkes 4:e56a755aeaf1 64 //Set seperate FIFO head and tail for printing data
benparkes 4:e56a755aeaf1 65 dataHeader = bufferHeader;
benparkes 4:e56a755aeaf1 66 dataTail = bufferTail;
benparkes 4:e56a755aeaf1 67
benparkes 4:e56a755aeaf1 68 //Move sample FIFO buffer head to next row in buffer
benparkes 4:e56a755aeaf1 69 bufferHeader++;
benparkes 4:e56a755aeaf1 70 //Check sample FIFO buffer head
benparkes 4:e56a755aeaf1 71 if(bufferHeader >= MAX_SAMPLES) {
benparkes 4:e56a755aeaf1 72 bufferHeader = 0;
benparkes 4:e56a755aeaf1 73 }
benparkes 4:e56a755aeaf1 74 //Check sample FIFO buffer tail
benparkes 4:e56a755aeaf1 75 if(bufferTail == bufferHeader) {
benparkes 4:e56a755aeaf1 76 bufferTail++;
benparkes 4:e56a755aeaf1 77 if(bufferTail >= (MAX_SAMPLES)) {
benparkes 4:e56a755aeaf1 78 bufferTail = 0;
benparkes 4:e56a755aeaf1 79 }
benparkes 4:e56a755aeaf1 80 }
benparkes 4:e56a755aeaf1 81 }
benparkes 4:e56a755aeaf1 82
liam_grazier 0:951442bd3f7f 83 void updateled(void){
liam_grazier 0:951442bd3f7f 84 ledlatch = 1;
liam_grazier 0:951442bd3f7f 85 ledlatch = 0;
liam_grazier 1:5b491fa83cb7 86 leddata = lsixteenth; //LABEL 1/16
liam_grazier 0:951442bd3f7f 87 ledclock = 1;
liam_grazier 0:951442bd3f7f 88 ledclock = 0;
liam_grazier 0:951442bd3f7f 89 leddata = 0;
liam_grazier 1:5b491fa83cb7 90 leddata = leighth; //LABEL 1/8
liam_grazier 0:951442bd3f7f 91 ledclock = 1;
liam_grazier 0:951442bd3f7f 92 ledclock = 0;
liam_grazier 0:951442bd3f7f 93 leddata = 0;
liam_grazier 1:5b491fa83cb7 94 leddata = lquater; //LABEL 1/4
liam_grazier 0:951442bd3f7f 95 ledclock = 1;
liam_grazier 0:951442bd3f7f 96 ledclock = 0;
liam_grazier 0:951442bd3f7f 97 leddata = 0;
liam_grazier 1:5b491fa83cb7 98 leddata = lhalf; //LABEL 1/2
liam_grazier 0:951442bd3f7f 99 ledclock = 1;
liam_grazier 0:951442bd3f7f 100 ledclock = 0;
liam_grazier 0:951442bd3f7f 101 leddata = 0;
liam_grazier 1:5b491fa83cb7 102 leddata = lone; //LABEL 1
liam_grazier 0:951442bd3f7f 103 ledclock = 1;
liam_grazier 0:951442bd3f7f 104 ledclock = 0;
liam_grazier 0:951442bd3f7f 105 leddata = 0;
liam_grazier 1:5b491fa83cb7 106 leddata = ltwo; //LABEL 2
liam_grazier 0:951442bd3f7f 107 ledclock = 1;
liam_grazier 0:951442bd3f7f 108 ledclock = 0;
liam_grazier 0:951442bd3f7f 109 leddata = 0;
liam_grazier 1:5b491fa83cb7 110 leddata = lnegtwo; //LABEL -2
liam_grazier 0:951442bd3f7f 111 ledclock = 1;
liam_grazier 0:951442bd3f7f 112 ledclock = 0;
liam_grazier 0:951442bd3f7f 113 leddata = 0;
liam_grazier 1:5b491fa83cb7 114 leddata = lnegone; //LABEL -1
liam_grazier 0:951442bd3f7f 115 ledclock = 1;
liam_grazier 0:951442bd3f7f 116 ledclock = 0;
liam_grazier 0:951442bd3f7f 117 leddata = 0;
liam_grazier 1:5b491fa83cb7 118 leddata = lzero; //LABEL = 0
liam_grazier 0:951442bd3f7f 119 ledclock = 1;
liam_grazier 0:951442bd3f7f 120 ledclock = 0;
liam_grazier 0:951442bd3f7f 121 leddata = 0;
liam_grazier 1:5b491fa83cb7 122 leddata = lplusone; //LABEL 1
liam_grazier 0:951442bd3f7f 123 ledclock = 1;
liam_grazier 0:951442bd3f7f 124 ledclock = 0;
liam_grazier 0:951442bd3f7f 125 leddata = 0;
liam_grazier 1:5b491fa83cb7 126 leddata = lplustwo; //LABEL 2
liam_grazier 0:951442bd3f7f 127 ledclock = 1;
liam_grazier 0:951442bd3f7f 128 ledclock = 0;
liam_grazier 0:951442bd3f7f 129 leddata = 0;
liam_grazier 0:951442bd3f7f 130 leddata = 0; //LABEL no
liam_grazier 0:951442bd3f7f 131 ledclock = 1;
liam_grazier 0:951442bd3f7f 132 ledclock = 0;
liam_grazier 0:951442bd3f7f 133 leddata = 0;
liam_grazier 0:951442bd3f7f 134 leddata = 1; //LABEL no
liam_grazier 0:951442bd3f7f 135 ledclock = 1;
liam_grazier 0:951442bd3f7f 136 ledclock = 0;
liam_grazier 0:951442bd3f7f 137 leddata = 0;
liam_grazier 0:951442bd3f7f 138 leddata = 1; //LABEL no
liam_grazier 0:951442bd3f7f 139 ledclock = 1;
liam_grazier 0:951442bd3f7f 140 ledclock = 0;
liam_grazier 0:951442bd3f7f 141 leddata = 0;
liam_grazier 0:951442bd3f7f 142 leddata = 0; //LABEL no
liam_grazier 0:951442bd3f7f 143 ledclock = 1;
liam_grazier 0:951442bd3f7f 144 ledclock = 0;
liam_grazier 0:951442bd3f7f 145 leddata = 0;
liam_grazier 1:5b491fa83cb7 146 leddata = lb; //LABEL B
liam_grazier 0:951442bd3f7f 147 ledclock = 1;
liam_grazier 0:951442bd3f7f 148 ledclock = 0;
liam_grazier 0:951442bd3f7f 149 leddata = 0;
liam_grazier 1:5b491fa83cb7 150 leddata = lashp; //LABEL A#
liam_grazier 0:951442bd3f7f 151 ledclock = 1;
liam_grazier 0:951442bd3f7f 152 ledclock = 0;
liam_grazier 0:951442bd3f7f 153 leddata = 0;
liam_grazier 1:5b491fa83cb7 154 leddata = la; //LABEL A
liam_grazier 0:951442bd3f7f 155 ledclock = 1;
liam_grazier 0:951442bd3f7f 156 ledclock = 0;
liam_grazier 0:951442bd3f7f 157 leddata = 0;
liam_grazier 1:5b491fa83cb7 158 leddata = lgshp; //LABEL G#
liam_grazier 1:5b491fa83cb7 159 ledclock = 1;
liam_grazier 1:5b491fa83cb7 160 ledclock = 0;
liam_grazier 1:5b491fa83cb7 161 leddata = 0;
liam_grazier 1:5b491fa83cb7 162 leddata = lg; //LABEL G
liam_grazier 0:951442bd3f7f 163 ledclock = 1;
liam_grazier 0:951442bd3f7f 164 ledclock = 0;
liam_grazier 0:951442bd3f7f 165 leddata = 0;
liam_grazier 1:5b491fa83cb7 166 leddata = lfshp; //LABEL F#
liam_grazier 0:951442bd3f7f 167 ledclock = 1;
liam_grazier 0:951442bd3f7f 168 ledclock = 0;
liam_grazier 0:951442bd3f7f 169 leddata = 0;
liam_grazier 1:5b491fa83cb7 170 leddata = lf; //LABEL F
liam_grazier 1:5b491fa83cb7 171 ledclock = 1;
liam_grazier 1:5b491fa83cb7 172 ledclock = 0;
liam_grazier 1:5b491fa83cb7 173 leddata = 0;
liam_grazier 1:5b491fa83cb7 174 leddata = le; //LABEL E
liam_grazier 0:951442bd3f7f 175 ledclock = 1;
liam_grazier 0:951442bd3f7f 176 ledclock = 0;
liam_grazier 0:951442bd3f7f 177 leddata = 0;
liam_grazier 1:5b491fa83cb7 178 leddata = ldshp; //LABEL D#
liam_grazier 0:951442bd3f7f 179 ledclock = 1;
liam_grazier 0:951442bd3f7f 180 ledclock = 0;
liam_grazier 0:951442bd3f7f 181 leddata = 0;
liam_grazier 1:5b491fa83cb7 182 leddata = ld; //LABEL D
liam_grazier 0:951442bd3f7f 183 ledclock = 1;
liam_grazier 0:951442bd3f7f 184 ledclock = 0;
liam_grazier 0:951442bd3f7f 185 leddata = 0;
liam_grazier 1:5b491fa83cb7 186 leddata = lcshp; //LABEL C#
liam_grazier 1:5b491fa83cb7 187 ledclock = 1;
liam_grazier 1:5b491fa83cb7 188 ledclock = 0;
liam_grazier 1:5b491fa83cb7 189 leddata = 0;
liam_grazier 1:5b491fa83cb7 190 leddata = lc; //LABEL C
liam_grazier 0:951442bd3f7f 191 ledclock = 1;
liam_grazier 0:951442bd3f7f 192 ledclock = 0;
liam_grazier 0:951442bd3f7f 193 leddata = 0;
liam_grazier 1:5b491fa83cb7 194
liam_grazier 0:951442bd3f7f 195 }
liam_grazier 0:951442bd3f7f 196 void allledon(void){
liam_grazier 1:5b491fa83cb7 197 lc=1;
liam_grazier 1:5b491fa83cb7 198 lcshp=1;
liam_grazier 1:5b491fa83cb7 199 ld=1;
liam_grazier 1:5b491fa83cb7 200 ldshp=1;
liam_grazier 1:5b491fa83cb7 201 le=1;
liam_grazier 1:5b491fa83cb7 202 lf=1;
liam_grazier 1:5b491fa83cb7 203 lfshp=1;
liam_grazier 1:5b491fa83cb7 204 lg=1;
liam_grazier 1:5b491fa83cb7 205 lgshp=1;
liam_grazier 1:5b491fa83cb7 206 la=1;
liam_grazier 1:5b491fa83cb7 207 lashp=1;
liam_grazier 1:5b491fa83cb7 208 lb=1;
liam_grazier 1:5b491fa83cb7 209 lsixteenth=1;
liam_grazier 1:5b491fa83cb7 210 leighth=1;
liam_grazier 1:5b491fa83cb7 211 lquater=1;
liam_grazier 1:5b491fa83cb7 212 lhalf=1;
liam_grazier 1:5b491fa83cb7 213 lone=1;
liam_grazier 1:5b491fa83cb7 214 ltwo=1;
liam_grazier 1:5b491fa83cb7 215 lnegtwo=1;
liam_grazier 1:5b491fa83cb7 216 lnegone=1;
liam_grazier 1:5b491fa83cb7 217 lzero=1;
liam_grazier 1:5b491fa83cb7 218 lplusone=1;
liam_grazier 1:5b491fa83cb7 219 lplustwo=1;
liam_grazier 1:5b491fa83cb7 220 lrun = 0;
liam_grazier 1:5b491fa83cb7 221 lloop = 0;
liam_grazier 1:5b491fa83cb7 222 }
liam_grazier 1:5b491fa83cb7 223 void allledoff(void){
liam_grazier 1:5b491fa83cb7 224 lc=0;
liam_grazier 1:5b491fa83cb7 225 lcshp=0;
liam_grazier 1:5b491fa83cb7 226 ld=0;
liam_grazier 1:5b491fa83cb7 227 ldshp=0;
liam_grazier 1:5b491fa83cb7 228 le=0;
liam_grazier 1:5b491fa83cb7 229 lf=0;
liam_grazier 1:5b491fa83cb7 230 lfshp=0;
liam_grazier 1:5b491fa83cb7 231 lg=0;
liam_grazier 1:5b491fa83cb7 232 lgshp=0;
liam_grazier 1:5b491fa83cb7 233 la=0;
liam_grazier 1:5b491fa83cb7 234 lashp=0;
liam_grazier 1:5b491fa83cb7 235 lb=0;
liam_grazier 1:5b491fa83cb7 236 lsixteenth=0;
liam_grazier 1:5b491fa83cb7 237 leighth=0;
liam_grazier 1:5b491fa83cb7 238 lquater=0;
liam_grazier 1:5b491fa83cb7 239 lhalf=0;
liam_grazier 1:5b491fa83cb7 240 lone=0;
liam_grazier 1:5b491fa83cb7 241 ltwo=0;
liam_grazier 1:5b491fa83cb7 242 lnegtwo=0;
liam_grazier 1:5b491fa83cb7 243 lnegone=0;
liam_grazier 1:5b491fa83cb7 244 lzero=0;
liam_grazier 1:5b491fa83cb7 245 lplusone=0;
liam_grazier 1:5b491fa83cb7 246 lplustwo=0;
liam_grazier 1:5b491fa83cb7 247 lrun = 1;
liam_grazier 1:5b491fa83cb7 248 lloop = 1;
liam_grazier 1:5b491fa83cb7 249 }
liam_grazier 1:5b491fa83cb7 250 void post(void){
liam_grazier 1:5b491fa83cb7 251 allledon();
liam_grazier 1:5b491fa83cb7 252 wait(0.5);
liam_grazier 1:5b491fa83cb7 253 allledoff();
liam_grazier 1:5b491fa83cb7 254 wait(0.5);
liam_grazier 1:5b491fa83cb7 255 allledon();
liam_grazier 1:5b491fa83cb7 256 wait(0.5);
liam_grazier 1:5b491fa83cb7 257 allledoff();
liam_grazier 1:5b491fa83cb7 258 wait(0.5);
liam_grazier 1:5b491fa83cb7 259 allledon();
liam_grazier 1:5b491fa83cb7 260 wait(0.5);
liam_grazier 1:5b491fa83cb7 261 allledoff();
liam_grazier 1:5b491fa83cb7 262 wait(0.5);
liam_grazier 1:5b491fa83cb7 263
liam_grazier 1:5b491fa83cb7 264 }
liam_grazier 1:5b491fa83cb7 265 void getfaderdata(void){
liam_grazier 2:da90c8eb0ca5 266 multiplexa = 0;
liam_grazier 1:5b491fa83cb7 267 adc1 = analog_valuea.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 268 adc1 = adc1 *100;
liam_grazier 1:5b491fa83cb7 269 vc = adc1;
liam_grazier 1:5b491fa83cb7 270 multiplexa = 1;
liam_grazier 1:5b491fa83cb7 271 adc1 = analog_valuea.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 272 adc1 = adc1 *100;
liam_grazier 1:5b491fa83cb7 273 vcshp = adc1;
liam_grazier 1:5b491fa83cb7 274 multiplexa = 2;
liam_grazier 1:5b491fa83cb7 275 adc1 = analog_valuea.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 276 adc1 = adc1 *100;
liam_grazier 1:5b491fa83cb7 277 vd = adc1;
liam_grazier 1:5b491fa83cb7 278 multiplexa = 3;
liam_grazier 1:5b491fa83cb7 279 adc1 = analog_valuea.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 280 adc1 = adc1 *100;
liam_grazier 1:5b491fa83cb7 281 vdshp = adc1;
liam_grazier 1:5b491fa83cb7 282 multiplexa = 4;
liam_grazier 1:5b491fa83cb7 283 adc1 = analog_valuea.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 284 adc1 = adc1 *100;
liam_grazier 1:5b491fa83cb7 285 ve = adc1;
liam_grazier 1:5b491fa83cb7 286 multiplexa = 5;
liam_grazier 1:5b491fa83cb7 287 adc1 = analog_valuea.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 288 adc1 = adc1 *100;
liam_grazier 1:5b491fa83cb7 289 vf = adc1;
liam_grazier 1:5b491fa83cb7 290 multiplexa = 6;
liam_grazier 1:5b491fa83cb7 291 adc1 = analog_valuea.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 292 adc1 = adc1 *100;
liam_grazier 1:5b491fa83cb7 293 vfshp = adc1;
liam_grazier 1:5b491fa83cb7 294 multiplexa = 7;
liam_grazier 1:5b491fa83cb7 295 adc1 = analog_valuea.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 296 adc1 = adc1 *100;
liam_grazier 1:5b491fa83cb7 297 vg = adc1;
liam_grazier 1:5b491fa83cb7 298 multiplexb = 0;
liam_grazier 1:5b491fa83cb7 299 adc2 = analog_valueb.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 300 adc2 = adc2 *100;
liam_grazier 1:5b491fa83cb7 301 vgshp = adc2;
liam_grazier 1:5b491fa83cb7 302 multiplexb = 1;
liam_grazier 1:5b491fa83cb7 303 adc2 = analog_valueb.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 304 adc2 = adc2 *100;
liam_grazier 1:5b491fa83cb7 305 va = adc2;
liam_grazier 1:5b491fa83cb7 306 multiplexb = 2;
liam_grazier 1:5b491fa83cb7 307 adc2 = analog_valueb.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 308 adc2 = adc2 *100;
liam_grazier 1:5b491fa83cb7 309 vashp = adc2;
liam_grazier 1:5b491fa83cb7 310 multiplexb = 3;
liam_grazier 1:5b491fa83cb7 311 adc2 = analog_valueb.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 312 adc2 = adc2 *100;
liam_grazier 1:5b491fa83cb7 313 vb = adc2;
liam_grazier 1:5b491fa83cb7 314 multiplexb = 4;
liam_grazier 1:5b491fa83cb7 315 adc2 = analog_valueb.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 316 adc2 = (adc2 *255);
liam_grazier 1:5b491fa83cb7 317 vtempo = adc2;
liam_grazier 1:5b491fa83cb7 318 multiplexb = 5;
liam_grazier 1:5b491fa83cb7 319 adc2 = analog_valueb.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 320 adc2 = adc2 *100;
liam_grazier 1:5b491fa83cb7 321 vplustwo = adc2;
liam_grazier 1:5b491fa83cb7 322 multiplexb = 6;
liam_grazier 1:5b491fa83cb7 323 adc2 = analog_valueb.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 324 adc2 = adc2 *100;
liam_grazier 1:5b491fa83cb7 325 vplusone = adc2;
liam_grazier 1:5b491fa83cb7 326 multiplexb = 7;
liam_grazier 1:5b491fa83cb7 327 adc2 = analog_valueb.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 328 adc2 = adc2 *100;
liam_grazier 1:5b491fa83cb7 329 vzero = adc2;
liam_grazier 1:5b491fa83cb7 330 multiplexc = 0;
liam_grazier 1:5b491fa83cb7 331 adc3 = analog_valuec.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 332 adc3 = adc3 *100;
liam_grazier 1:5b491fa83cb7 333 vnegone = adc3;
liam_grazier 1:5b491fa83cb7 334 multiplexc = 1;
liam_grazier 1:5b491fa83cb7 335 adc3 = analog_valuec.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 336 adc3 = adc3 *100;
liam_grazier 1:5b491fa83cb7 337 vnegtwo = adc3;
liam_grazier 1:5b491fa83cb7 338 multiplexc = 2;
liam_grazier 1:5b491fa83cb7 339 adc3 = analog_valuec.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 340 adc3 = adc3 *100;
liam_grazier 1:5b491fa83cb7 341 vtwo = adc3;
liam_grazier 1:5b491fa83cb7 342 multiplexc = 3;
liam_grazier 1:5b491fa83cb7 343 adc3 = analog_valuec.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 344 adc3 = adc3 *100;
liam_grazier 1:5b491fa83cb7 345 vone = adc3;
liam_grazier 1:5b491fa83cb7 346 multiplexc = 4;
liam_grazier 1:5b491fa83cb7 347 adc3 = analog_valuec.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 348 adc3 = adc3 *100;
liam_grazier 1:5b491fa83cb7 349 vhalf = adc3;
liam_grazier 1:5b491fa83cb7 350 multiplexc = 5;
liam_grazier 1:5b491fa83cb7 351 adc3 = analog_valuec.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 352 adc3 = adc3 *100;
liam_grazier 1:5b491fa83cb7 353 vquater = adc3;
liam_grazier 1:5b491fa83cb7 354 multiplexc = 6;
liam_grazier 1:5b491fa83cb7 355 adc3 = analog_valuec.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 356 adc3 = adc3 *100;
liam_grazier 1:5b491fa83cb7 357 veigth = adc3;
liam_grazier 1:5b491fa83cb7 358 multiplexc = 7;
liam_grazier 1:5b491fa83cb7 359 adc3 = analog_valuec.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
liam_grazier 1:5b491fa83cb7 360 adc3 = adc3 *100;
liam_grazier 1:5b491fa83cb7 361 vsixthteenth = adc3;
liam_grazier 1:5b491fa83cb7 362 }
liam_grazier 1:5b491fa83cb7 363 void serialfadervalues(void){
liam_grazier 1:5b491fa83cb7 364 pc.printf("CHA %4.2f %4.2f %4.2f %4.2f %4.2f %4.2f %4.2f %4.2f \n\r",vc,vcshp,vd,vdshp,ve,vf,vfshp,vg);
liam_grazier 1:5b491fa83cb7 365 pc.printf("CHC %4.2f %4.2f %4.2f %4.2f %4.2f %4.2f %4.2f %4.2f \n\r",vnegone,vnegtwo,vtwo,vone,vhalf,vquater,veigth,vsixthteenth);
liam_grazier 1:5b491fa83cb7 366 pc.printf("CHB %4.2f %4.2f %4.2f %4.2f %4.2f %4.2f %4.2f %4.2f \n\r",vgshp,va,vashp,vb,vtempo,vplustwo,vplusone,vzero);
liam_grazier 1:5b491fa83cb7 367 }
liam_grazier 1:5b491fa83cb7 368 // SUM OF THE PROABILITIES!!!
liam_grazier 1:5b491fa83cb7 369 void sumprobabilitynotes(void){
liam_grazier 1:5b491fa83cb7 370 sumnotes = vc+vcshp+vd+vdshp+ve+vf+vfshp+vg+vgshp+va+vashp+vb;
liam_grazier 1:5b491fa83cb7 371 //pc.printf("sum of notes %f \n\r",sumnotes);
liam_grazier 1:5b491fa83cb7 372 sumnotes2 = sumnotes;
liam_grazier 1:5b491fa83cb7 373 }
liam_grazier 1:5b491fa83cb7 374 void sumprobabilityoctives(void){
liam_grazier 1:5b491fa83cb7 375 sumoctives = vplustwo+vplusone+vzero+vnegone+vnegtwo;
liam_grazier 1:5b491fa83cb7 376 //pc.printf("sum of octives %f \n\r",sumoctives);
liam_grazier 1:5b491fa83cb7 377 sumoctives2 = sumoctives;
liam_grazier 1:5b491fa83cb7 378 }
liam_grazier 1:5b491fa83cb7 379 void sumprobabilityduration(void){
liam_grazier 1:5b491fa83cb7 380 sumduration = vtwo+vone+vhalf+vquater+vsixthteenth+veigth;
liam_grazier 1:5b491fa83cb7 381 //pc.printf("sum of duration %f \n\r",sumduration);
liam_grazier 1:5b491fa83cb7 382 sumduration2 = sumduration;
liam_grazier 1:5b491fa83cb7 383 }
liam_grazier 1:5b491fa83cb7 384 //RANDOM GENERATORS!!!!
liam_grazier 1:5b491fa83cb7 385 void randomgeneratenotes(void){
liam_grazier 1:5b491fa83cb7 386 randomnotes=rand()%sumnotes2;
liam_grazier 1:5b491fa83cb7 387 //pc.printf("random notes is %i \n\r",randomnotes);
liam_grazier 1:5b491fa83cb7 388 }
liam_grazier 1:5b491fa83cb7 389 void randomgenerateoctives(void){
liam_grazier 1:5b491fa83cb7 390 randomoctives=rand()%sumoctives2;
liam_grazier 1:5b491fa83cb7 391 //pc.printf("random octives is %i \n\r",randomoctives);
liam_grazier 1:5b491fa83cb7 392 }
liam_grazier 1:5b491fa83cb7 393 void randomgenerateduration(void){
liam_grazier 1:5b491fa83cb7 394 randomduration=rand()%sumduration2;
liam_grazier 1:5b491fa83cb7 395 //pc.printf("random duration is %i \n\r", randomduration);
liam_grazier 1:5b491fa83cb7 396 }
liam_grazier 1:5b491fa83cb7 397 //DERTERNINE THE RANDOM SELECTIONS (REALISE THE PROBABALISED)
liam_grazier 1:5b491fa83cb7 398 void determinenotes(void){
liam_grazier 1:5b491fa83cb7 399 matchflagnotes = 0;
liam_grazier 1:5b491fa83cb7 400 matchnotelower = 0;
liam_grazier 1:5b491fa83cb7 401 matchnotehigher = vc;
liam_grazier 1:5b491fa83cb7 402 if(randomnotes > 0 && randomnotes < matchnotehigher && matchflagnotes == 0){
liam_grazier 1:5b491fa83cb7 403 probabalisednote = matchnotehigher;
liam_grazier 1:5b491fa83cb7 404 //pc.printf("Proababilised note matched C\n\r");
liam_grazier 1:5b491fa83cb7 405 matchflagnotes = 1;
liam_grazier 1:5b491fa83cb7 406 note = 1;
liam_grazier 1:5b491fa83cb7 407 }
liam_grazier 1:5b491fa83cb7 408 matchnotelower = vc;
liam_grazier 1:5b491fa83cb7 409 matchnotehigher = vc+vcshp;
liam_grazier 1:5b491fa83cb7 410 if(randomnotes > matchnotelower && randomnotes < matchnotehigher && matchflagnotes == 0){
liam_grazier 1:5b491fa83cb7 411 probabalisednote = matchnotehigher;
liam_grazier 1:5b491fa83cb7 412 //pc.printf("Proababilised note matched C#\n\r");
liam_grazier 1:5b491fa83cb7 413 matchflagnotes = 1;
liam_grazier 1:5b491fa83cb7 414 note = 2;
liam_grazier 1:5b491fa83cb7 415 }
liam_grazier 1:5b491fa83cb7 416 matchnotelower = vc+vcshp;
liam_grazier 1:5b491fa83cb7 417 matchnotehigher = vc+vcshp+vd;
liam_grazier 1:5b491fa83cb7 418 if(randomnotes > matchnotelower && randomnotes < matchnotehigher && matchflagnotes == 0){
liam_grazier 1:5b491fa83cb7 419 probabalisednote = matchnotehigher;
liam_grazier 1:5b491fa83cb7 420 //pc.printf("Proababilised note matched D\n\r");
liam_grazier 1:5b491fa83cb7 421 matchflagnotes = 1;
liam_grazier 1:5b491fa83cb7 422 note = 3;
liam_grazier 1:5b491fa83cb7 423 }
liam_grazier 1:5b491fa83cb7 424 matchnotelower = vc+vcshp+vd;
liam_grazier 1:5b491fa83cb7 425 matchnotehigher = vc+vcshp+vd+vdshp;
liam_grazier 1:5b491fa83cb7 426 if(randomnotes > matchnotelower && randomnotes < matchnotehigher && matchflagnotes == 0){
liam_grazier 1:5b491fa83cb7 427 probabalisednote = matchnotehigher;
liam_grazier 1:5b491fa83cb7 428 //pc.printf("Proababilised note matched D#\n\r");
liam_grazier 1:5b491fa83cb7 429 matchflagnotes = 1;
liam_grazier 1:5b491fa83cb7 430 note = 4;
liam_grazier 1:5b491fa83cb7 431 }
liam_grazier 1:5b491fa83cb7 432 matchnotelower = vc+vcshp+vd+vdshp;
liam_grazier 1:5b491fa83cb7 433 matchnotehigher = vc+vcshp+vd+vdshp+ve;
liam_grazier 1:5b491fa83cb7 434 if(randomnotes > matchnotelower && randomnotes < matchnotehigher && matchflagnotes == 0){
liam_grazier 1:5b491fa83cb7 435 probabalisednote = matchnotehigher;
liam_grazier 1:5b491fa83cb7 436 //pc.printf("Proababilised note matched E\n\r");
liam_grazier 1:5b491fa83cb7 437 matchflagnotes = 1;
liam_grazier 1:5b491fa83cb7 438 note = 5;
liam_grazier 1:5b491fa83cb7 439 }
liam_grazier 1:5b491fa83cb7 440 matchnotelower = vc+vcshp+vd+vdshp+ve;
liam_grazier 1:5b491fa83cb7 441 matchnotehigher = vc+vcshp+vd+vdshp+ve+vf;
liam_grazier 1:5b491fa83cb7 442 if(randomnotes > matchnotelower && randomnotes < matchnotehigher && matchflagnotes == 0){
liam_grazier 1:5b491fa83cb7 443 probabalisednote = matchnotehigher;
liam_grazier 1:5b491fa83cb7 444 //pc.printf("Proababilised note matched F\n\r");
liam_grazier 1:5b491fa83cb7 445 matchflagnotes = 1;
liam_grazier 1:5b491fa83cb7 446 note = 6;
liam_grazier 1:5b491fa83cb7 447 }
liam_grazier 1:5b491fa83cb7 448 matchnotelower = vc+vcshp+vd+vdshp+ve+vf;
liam_grazier 1:5b491fa83cb7 449 matchnotehigher = vc+vcshp+vd+vdshp+ve+vf+vfshp;
liam_grazier 1:5b491fa83cb7 450 if(randomnotes > matchnotelower && randomnotes < matchnotehigher && matchflagnotes == 0){
liam_grazier 1:5b491fa83cb7 451 probabalisednote = matchnotehigher;
liam_grazier 1:5b491fa83cb7 452 //pc.printf("Proababilised note matched F#\n\r");
liam_grazier 1:5b491fa83cb7 453 matchflagnotes = 1;
liam_grazier 1:5b491fa83cb7 454 note = 7;
liam_grazier 1:5b491fa83cb7 455 }
liam_grazier 1:5b491fa83cb7 456 matchnotelower = vc+vcshp+vd+vdshp+ve+vf+vfshp;
liam_grazier 1:5b491fa83cb7 457 matchnotehigher = vc+vcshp+vd+vdshp+ve+vf+vfshp+vg;
liam_grazier 1:5b491fa83cb7 458 if(randomnotes > matchnotelower && randomnotes < matchnotehigher && matchflagnotes == 0){
liam_grazier 1:5b491fa83cb7 459 probabalisednote = matchnotehigher;
liam_grazier 1:5b491fa83cb7 460 //pc.printf("Proababilised note matched G\n\r");
liam_grazier 1:5b491fa83cb7 461 matchflagnotes = 1;
liam_grazier 1:5b491fa83cb7 462 note = 8;
liam_grazier 1:5b491fa83cb7 463 }
liam_grazier 1:5b491fa83cb7 464 matchnotelower = vc+vcshp+vd+vdshp+ve+vf+vfshp+vg;
liam_grazier 1:5b491fa83cb7 465 matchnotehigher = vc+vcshp+vd+vdshp+ve+vf+vfshp+vg+vgshp;
liam_grazier 1:5b491fa83cb7 466 if(randomnotes > matchnotelower && randomnotes < matchnotehigher && matchflagnotes == 0){
liam_grazier 1:5b491fa83cb7 467 probabalisednote = matchnotehigher;
liam_grazier 1:5b491fa83cb7 468 //pc.printf("Proababilised note matched G#\n\r");
liam_grazier 1:5b491fa83cb7 469 matchflagnotes = 1;
liam_grazier 1:5b491fa83cb7 470 note = 9;
liam_grazier 1:5b491fa83cb7 471 }
liam_grazier 1:5b491fa83cb7 472 matchnotelower = vc+vcshp+vd+vdshp+ve+vf+vfshp+vg+vgshp;
liam_grazier 1:5b491fa83cb7 473 matchnotehigher = vc+vcshp+vd+vdshp+ve+vf+vfshp+vg+vgshp+va;
liam_grazier 1:5b491fa83cb7 474 if(randomnotes > matchnotelower && randomnotes < matchnotehigher && matchflagnotes == 0){
liam_grazier 1:5b491fa83cb7 475 probabalisednote = matchnotehigher;
liam_grazier 1:5b491fa83cb7 476 //pc.printf("Proababilised note matched A\n\r");
liam_grazier 1:5b491fa83cb7 477 matchflagnotes = 1;
liam_grazier 1:5b491fa83cb7 478 note = 10;
liam_grazier 1:5b491fa83cb7 479 }
liam_grazier 1:5b491fa83cb7 480 matchnotelower = vc+vcshp+vd+vdshp+ve+vf+vfshp+vg+vgshp+va;
liam_grazier 1:5b491fa83cb7 481 matchnotehigher = vc+vcshp+vd+vdshp+ve+vf+vfshp+vg+vgshp+va+vashp;
liam_grazier 1:5b491fa83cb7 482 if(randomnotes > matchnotelower && randomnotes < matchnotehigher && matchflagnotes == 0){
liam_grazier 1:5b491fa83cb7 483 probabalisednote = matchnotehigher;
liam_grazier 1:5b491fa83cb7 484 //pc.printf("Proababilised note matched A#\n\r");
liam_grazier 1:5b491fa83cb7 485 matchflagnotes = 1;
liam_grazier 1:5b491fa83cb7 486 note = 11;
liam_grazier 1:5b491fa83cb7 487 }
liam_grazier 1:5b491fa83cb7 488 matchnotelower = vc+vcshp+vd+vdshp+ve+vf+vfshp+vg+vgshp+va+vashp;
liam_grazier 1:5b491fa83cb7 489 matchnotehigher = vc+vcshp+vd+vdshp+ve+vf+vfshp+vg+vgshp+va+vashp+vb;
liam_grazier 1:5b491fa83cb7 490 if(randomnotes > matchnotelower && randomnotes < matchnotehigher && matchflagnotes == 0){
liam_grazier 1:5b491fa83cb7 491 probabalisednote = matchnotehigher;
liam_grazier 1:5b491fa83cb7 492 //pc.printf("Proababilised note matched B\n\r");
liam_grazier 1:5b491fa83cb7 493 matchflagnotes = 1;
liam_grazier 1:5b491fa83cb7 494 note = 12;
liam_grazier 1:5b491fa83cb7 495 }
liam_grazier 1:5b491fa83cb7 496 if(matchflagnotes == 1){
liam_grazier 1:5b491fa83cb7 497 //pc.printf("NOTE COMP EMGINE COMPLETE \n\r");
liam_grazier 1:5b491fa83cb7 498 }
liam_grazier 1:5b491fa83cb7 499 if(sumnotes < 1){
liam_grazier 1:5b491fa83cb7 500 note = 0;
liam_grazier 1:5b491fa83cb7 501 }
liam_grazier 1:5b491fa83cb7 502 }
liam_grazier 1:5b491fa83cb7 503 void determineoctives(void){
liam_grazier 1:5b491fa83cb7 504 matchflagoctive = 0;
liam_grazier 1:5b491fa83cb7 505 matchoctivelower = 0;
liam_grazier 1:5b491fa83cb7 506 matchoctivehigher = vnegtwo;
liam_grazier 1:5b491fa83cb7 507 if(randomoctives > matchoctivelower && randomoctives < matchoctivehigher && matchflagoctive == 0){
liam_grazier 1:5b491fa83cb7 508 probabalisedoctive = matchoctivehigher;
liam_grazier 1:5b491fa83cb7 509 //pc.printf("Proababilised octive matched -2 \n\r");
liam_grazier 1:5b491fa83cb7 510 matchflagoctive = 1;
liam_grazier 1:5b491fa83cb7 511 octive = 1;
liam_grazier 1:5b491fa83cb7 512 }
liam_grazier 1:5b491fa83cb7 513 matchoctivelower = vnegtwo;
liam_grazier 1:5b491fa83cb7 514 matchoctivehigher = vnegtwo+vnegone;
liam_grazier 1:5b491fa83cb7 515 if(randomoctives > matchoctivelower && randomoctives < matchoctivehigher && matchflagoctive == 0){
liam_grazier 1:5b491fa83cb7 516 probabalisedoctive = matchoctivehigher;
liam_grazier 1:5b491fa83cb7 517 //pc.printf("Proababilised octive matched -1 \n\r");
liam_grazier 1:5b491fa83cb7 518 matchflagoctive = 1;
liam_grazier 1:5b491fa83cb7 519 octive = 2;
liam_grazier 1:5b491fa83cb7 520 }
liam_grazier 1:5b491fa83cb7 521 matchoctivelower = vnegtwo+vnegone;
liam_grazier 1:5b491fa83cb7 522 matchoctivehigher = vnegtwo+vnegone+vzero;
liam_grazier 1:5b491fa83cb7 523 if(randomoctives > matchoctivelower && randomoctives < matchoctivehigher && matchflagoctive == 0){
liam_grazier 1:5b491fa83cb7 524 probabalisedoctive = matchoctivehigher;
liam_grazier 1:5b491fa83cb7 525 //pc.printf("Proababilised octive matched 0 \n\r");
liam_grazier 1:5b491fa83cb7 526 matchflagoctive = 1;
liam_grazier 1:5b491fa83cb7 527 octive = 3;
liam_grazier 1:5b491fa83cb7 528 }
liam_grazier 1:5b491fa83cb7 529 matchoctivelower = vnegtwo+vnegone+vzero;
liam_grazier 1:5b491fa83cb7 530 matchoctivehigher = vnegtwo+vnegone+vzero+vplusone;
liam_grazier 1:5b491fa83cb7 531 if(randomoctives > matchoctivelower && randomoctives < matchoctivehigher && matchflagoctive == 0){
liam_grazier 1:5b491fa83cb7 532 probabalisedoctive = matchoctivehigher;
liam_grazier 1:5b491fa83cb7 533 //pc.printf("Proababilised octive matched +1 \n\r");
liam_grazier 1:5b491fa83cb7 534 matchflagoctive = 1;
liam_grazier 1:5b491fa83cb7 535 octive = 4;
liam_grazier 1:5b491fa83cb7 536 }
liam_grazier 1:5b491fa83cb7 537 matchoctivelower = vnegtwo+vnegone+vzero+vplusone;
liam_grazier 1:5b491fa83cb7 538 matchoctivehigher = vnegtwo+vnegone+vzero+vplusone+vplustwo;
liam_grazier 1:5b491fa83cb7 539 if(randomoctives > matchoctivelower && randomoctives < matchoctivehigher && matchflagoctive == 0){
liam_grazier 1:5b491fa83cb7 540 probabalisedoctive = matchoctivehigher;
liam_grazier 1:5b491fa83cb7 541 //pc.printf("Proababilised octive matched +2 \n\r");
liam_grazier 1:5b491fa83cb7 542 matchflagoctive = 1;
liam_grazier 1:5b491fa83cb7 543 octive = 5;
liam_grazier 1:5b491fa83cb7 544 }
liam_grazier 1:5b491fa83cb7 545 if(matchflagoctive == 1){
liam_grazier 1:5b491fa83cb7 546 //pc.printf("OCTIVES COMP EMGINE COMPLETE \n\r");
liam_grazier 1:5b491fa83cb7 547 }
liam_grazier 1:5b491fa83cb7 548 if(sumoctives < 50){
liam_grazier 1:5b491fa83cb7 549 octive = 0;
liam_grazier 1:5b491fa83cb7 550 }
liam_grazier 1:5b491fa83cb7 551 }
liam_grazier 1:5b491fa83cb7 552 void determineduration(void){
liam_grazier 1:5b491fa83cb7 553 matchflagduration = 0;
liam_grazier 1:5b491fa83cb7 554 matchdurationlower = 0;
liam_grazier 1:5b491fa83cb7 555 matchdurationhigher = vsixthteenth;
liam_grazier 1:5b491fa83cb7 556 if(randomduration > matchdurationlower && randomduration < matchdurationhigher && matchflagduration == 0){
liam_grazier 1:5b491fa83cb7 557 probabalisedduration = matchdurationhigher;
liam_grazier 1:5b491fa83cb7 558 //pc.printf("Proababilised duration matched 1/16 \n\r");
liam_grazier 1:5b491fa83cb7 559 matchflagduration = 1;
liam_grazier 1:5b491fa83cb7 560 duration = 1;
liam_grazier 1:5b491fa83cb7 561
liam_grazier 1:5b491fa83cb7 562 }
liam_grazier 1:5b491fa83cb7 563 matchdurationlower = vsixthteenth;
liam_grazier 1:5b491fa83cb7 564 matchdurationhigher = vsixthteenth+veigth;
liam_grazier 1:5b491fa83cb7 565 if(randomduration > matchdurationlower && randomduration < matchdurationhigher && matchflagduration == 0){
liam_grazier 1:5b491fa83cb7 566 probabalisedduration = matchdurationhigher;
liam_grazier 1:5b491fa83cb7 567 //pc.printf("Proababilised duration matched 1/8 \n\r");
liam_grazier 1:5b491fa83cb7 568 matchflagduration = 1;
liam_grazier 1:5b491fa83cb7 569 duration = 2;
liam_grazier 1:5b491fa83cb7 570 }
liam_grazier 1:5b491fa83cb7 571 matchdurationlower = vsixthteenth+veigth;
liam_grazier 1:5b491fa83cb7 572 matchdurationhigher = vsixthteenth+veigth+vquater;
liam_grazier 1:5b491fa83cb7 573 if(randomduration > matchdurationlower && randomduration < matchdurationhigher && matchflagduration == 0){
liam_grazier 1:5b491fa83cb7 574 probabalisedduration = matchdurationhigher;
liam_grazier 1:5b491fa83cb7 575 //pc.printf("Proababilised duration matched 1/4 \n\r");
liam_grazier 1:5b491fa83cb7 576 matchflagduration = 1;
liam_grazier 1:5b491fa83cb7 577 duration = 4;
liam_grazier 1:5b491fa83cb7 578
liam_grazier 1:5b491fa83cb7 579 }
liam_grazier 1:5b491fa83cb7 580 matchdurationlower = vsixthteenth+veigth+vquater;
liam_grazier 1:5b491fa83cb7 581 matchdurationhigher = vsixthteenth+veigth+vquater+vhalf;
liam_grazier 1:5b491fa83cb7 582 if(randomduration > matchdurationlower && randomduration < matchdurationhigher && matchflagduration == 0){
liam_grazier 1:5b491fa83cb7 583 probabalisedduration = matchdurationhigher;
liam_grazier 1:5b491fa83cb7 584 //pc.printf("Proababilised duration matched 1/2 \n\r");
liam_grazier 1:5b491fa83cb7 585 matchflagduration = 1;
liam_grazier 1:5b491fa83cb7 586 duration = 8;
liam_grazier 1:5b491fa83cb7 587 }
liam_grazier 1:5b491fa83cb7 588 matchdurationlower = vsixthteenth+veigth+vquater+vhalf;
liam_grazier 1:5b491fa83cb7 589 matchdurationhigher = vsixthteenth+veigth+vquater+vhalf+vone;
liam_grazier 1:5b491fa83cb7 590 if(randomduration > matchdurationlower && randomduration < matchdurationhigher && matchflagduration == 0){
liam_grazier 1:5b491fa83cb7 591 probabalisedduration = matchdurationhigher;
liam_grazier 1:5b491fa83cb7 592 //pc.printf("Proababilised duration matched +1 \n\r");
liam_grazier 1:5b491fa83cb7 593 matchflagduration = 1;
liam_grazier 1:5b491fa83cb7 594 duration = 16;
liam_grazier 1:5b491fa83cb7 595 }
liam_grazier 1:5b491fa83cb7 596 matchdurationlower = vsixthteenth+veigth+vquater+vhalf+vone;
liam_grazier 1:5b491fa83cb7 597 matchdurationhigher = vsixthteenth+veigth+vquater+vhalf+vone+vtwo;
liam_grazier 1:5b491fa83cb7 598 if(randomduration > matchdurationlower && randomduration < matchdurationhigher && matchflagduration == 0){
liam_grazier 1:5b491fa83cb7 599 probabalisedduration = matchdurationhigher;
liam_grazier 1:5b491fa83cb7 600 //pc.printf("Proababilised duration matched +2 \n\r");
liam_grazier 1:5b491fa83cb7 601 matchflagduration = 1;
liam_grazier 1:5b491fa83cb7 602 duration = 32;
liam_grazier 1:5b491fa83cb7 603 }
liam_grazier 1:5b491fa83cb7 604 if(matchflagduration == 1){
liam_grazier 1:5b491fa83cb7 605 //pc.printf("DURATION COMP EMGINE COMPLETE \n\r");
liam_grazier 1:5b491fa83cb7 606 }
liam_grazier 1:5b491fa83cb7 607 if(sumduration < 1){
liam_grazier 1:5b491fa83cb7 608 duration = 0;
liam_grazier 1:5b491fa83cb7 609 }
liam_grazier 1:5b491fa83cb7 610 }
liam_grazier 1:5b491fa83cb7 611 //tempo
liam_grazier 1:5b491fa83cb7 612 float map(float in, float inMin, float inMax, float outMin, float outMax) {
liam_grazier 1:5b491fa83cb7 613 // check it's within the range
liam_grazier 1:5b491fa83cb7 614 if (inMin<inMax) {
liam_grazier 1:5b491fa83cb7 615 if (in <= inMin)
liam_grazier 1:5b491fa83cb7 616 return outMin;
liam_grazier 1:5b491fa83cb7 617 if (in >= inMax)
liam_grazier 1:5b491fa83cb7 618 return outMax;
liam_grazier 1:5b491fa83cb7 619 } else { // cope with input range being backwards.
liam_grazier 1:5b491fa83cb7 620 if (in >= inMin)
liam_grazier 1:5b491fa83cb7 621 return outMin;
liam_grazier 1:5b491fa83cb7 622 if (in <= inMax)
liam_grazier 1:5b491fa83cb7 623 return outMax;
liam_grazier 1:5b491fa83cb7 624 }
liam_grazier 1:5b491fa83cb7 625 // calculate how far into the range we are
liam_grazier 1:5b491fa83cb7 626 float scale = (in-inMin)/(inMax-inMin);
liam_grazier 1:5b491fa83cb7 627 // calculate the output.
liam_grazier 1:5b491fa83cb7 628 return outMin + scale*(outMax-outMin);
liam_grazier 1:5b491fa83cb7 629 }
liam_grazier 1:5b491fa83cb7 630 void gettempodata(void){
liam_grazier 3:086e556b57f9 631 tempoval = map(vtempo,0,255,255,30);
liam_grazier 1:5b491fa83cb7 632 }
liam_grazier 1:5b491fa83cb7 633 void debugtempodata(void){
liam_grazier 1:5b491fa83cb7 634 pc.printf("unmapped %f mapped %f\n\r",vtempo,tempoval);
liam_grazier 1:5b491fa83cb7 635 }
liam_grazier 1:5b491fa83cb7 636 void outputdecision(void){
liam_grazier 1:5b491fa83cb7 637 if(note == 1){
liam_grazier 1:5b491fa83cb7 638 lc = 1;
liam_grazier 1:5b491fa83cb7 639 //int duration = 0; //1=1/16 2=1/8 3=1/4 4=1/2 5=1 6=2
liam_grazier 1:5b491fa83cb7 640
liam_grazier 1:5b491fa83cb7 641 }
liam_grazier 1:5b491fa83cb7 642 else if(note == 2){
liam_grazier 1:5b491fa83cb7 643 lcshp = 1;
liam_grazier 1:5b491fa83cb7 644 }
liam_grazier 1:5b491fa83cb7 645 else if(note == 3){
liam_grazier 1:5b491fa83cb7 646 ld = 1;
liam_grazier 1:5b491fa83cb7 647 }
liam_grazier 1:5b491fa83cb7 648 else if(note == 4){
liam_grazier 1:5b491fa83cb7 649 ldshp = 1;
liam_grazier 1:5b491fa83cb7 650 }
liam_grazier 1:5b491fa83cb7 651 else if(note == 5){
liam_grazier 1:5b491fa83cb7 652 le = 1;
liam_grazier 1:5b491fa83cb7 653 }
liam_grazier 1:5b491fa83cb7 654 else if(note == 6){
liam_grazier 1:5b491fa83cb7 655 lf = 1;
liam_grazier 1:5b491fa83cb7 656 }
liam_grazier 1:5b491fa83cb7 657 else if(note == 7){
liam_grazier 1:5b491fa83cb7 658 lfshp = 1;
liam_grazier 1:5b491fa83cb7 659 }
liam_grazier 1:5b491fa83cb7 660 else if(note == 8){
liam_grazier 1:5b491fa83cb7 661 lg = 1;
liam_grazier 1:5b491fa83cb7 662 }
liam_grazier 1:5b491fa83cb7 663 else if(note == 9){
liam_grazier 1:5b491fa83cb7 664 lgshp = 1;
liam_grazier 1:5b491fa83cb7 665 }
liam_grazier 1:5b491fa83cb7 666 else if(note == 10){
liam_grazier 1:5b491fa83cb7 667 la = 1;
liam_grazier 1:5b491fa83cb7 668 }
liam_grazier 1:5b491fa83cb7 669 else if(note == 11){
liam_grazier 1:5b491fa83cb7 670 lashp = 1;
liam_grazier 1:5b491fa83cb7 671 }
liam_grazier 1:5b491fa83cb7 672 else if(note == 12){
liam_grazier 1:5b491fa83cb7 673 lb = 1;
liam_grazier 1:5b491fa83cb7 674 }
liam_grazier 1:5b491fa83cb7 675 else{
liam_grazier 1:5b491fa83cb7 676 lc = 0;
liam_grazier 1:5b491fa83cb7 677 lcshp = 0;
liam_grazier 1:5b491fa83cb7 678 ld= 0;
liam_grazier 1:5b491fa83cb7 679 ldshp= 0;
liam_grazier 1:5b491fa83cb7 680 le= 0;
liam_grazier 1:5b491fa83cb7 681 lf= 0;
liam_grazier 1:5b491fa83cb7 682 lfshp= 0;
liam_grazier 1:5b491fa83cb7 683 lg= 0;
liam_grazier 1:5b491fa83cb7 684 lgshp= 0;
liam_grazier 1:5b491fa83cb7 685 la= 0;
liam_grazier 1:5b491fa83cb7 686 lashp= 0;
liam_grazier 1:5b491fa83cb7 687 lb= 0;
liam_grazier 1:5b491fa83cb7 688 }
liam_grazier 1:5b491fa83cb7 689 if(octive == 1){
liam_grazier 1:5b491fa83cb7 690 lnegtwo = 1;
liam_grazier 1:5b491fa83cb7 691 }
liam_grazier 1:5b491fa83cb7 692 else if(octive == 2){
liam_grazier 1:5b491fa83cb7 693 lnegone = 1;
liam_grazier 1:5b491fa83cb7 694 }
liam_grazier 1:5b491fa83cb7 695 else if(octive == 3){
liam_grazier 1:5b491fa83cb7 696 lzero = 1;
liam_grazier 1:5b491fa83cb7 697 }
liam_grazier 1:5b491fa83cb7 698 else if(octive == 4){
liam_grazier 1:5b491fa83cb7 699 lplusone = 1;
liam_grazier 1:5b491fa83cb7 700 }
liam_grazier 1:5b491fa83cb7 701 else if(octive == 5){
liam_grazier 1:5b491fa83cb7 702 lplustwo = 1;
liam_grazier 1:5b491fa83cb7 703 }
liam_grazier 1:5b491fa83cb7 704 else {
liam_grazier 1:5b491fa83cb7 705 lnegtwo = 0;
liam_grazier 1:5b491fa83cb7 706 lnegone = 0;
liam_grazier 1:5b491fa83cb7 707 lzero = 0;
liam_grazier 1:5b491fa83cb7 708 lplusone = 0;
liam_grazier 1:5b491fa83cb7 709 lplustwo = 0;
liam_grazier 1:5b491fa83cb7 710 }
liam_grazier 1:5b491fa83cb7 711 if(duration == 1){
liam_grazier 1:5b491fa83cb7 712 lsixteenth = 1;
liam_grazier 1:5b491fa83cb7 713 }
liam_grazier 1:5b491fa83cb7 714 else if(duration == 2){
liam_grazier 1:5b491fa83cb7 715 leighth = 1;
liam_grazier 1:5b491fa83cb7 716 }
liam_grazier 1:5b491fa83cb7 717 else if(duration == 4){
liam_grazier 1:5b491fa83cb7 718 lquater = 1;
liam_grazier 1:5b491fa83cb7 719 }
liam_grazier 1:5b491fa83cb7 720 else if(duration == 8){
liam_grazier 1:5b491fa83cb7 721 lhalf = 1;
liam_grazier 1:5b491fa83cb7 722 }
liam_grazier 1:5b491fa83cb7 723 else if(duration == 16){
liam_grazier 1:5b491fa83cb7 724 lone = 1;
liam_grazier 1:5b491fa83cb7 725 }
liam_grazier 1:5b491fa83cb7 726 else if(duration == 32){
liam_grazier 1:5b491fa83cb7 727 ltwo = 1;
liam_grazier 1:5b491fa83cb7 728 }
liam_grazier 1:5b491fa83cb7 729 else {
liam_grazier 1:5b491fa83cb7 730 lsixteenth = 0;
liam_grazier 1:5b491fa83cb7 731 leighth = 0;
liam_grazier 1:5b491fa83cb7 732 lquater = 0;
liam_grazier 1:5b491fa83cb7 733 lhalf = 0;
liam_grazier 1:5b491fa83cb7 734 lone = 0;
liam_grazier 1:5b491fa83cb7 735 ltwo = 0;
benparkes 4:e56a755aeaf1 736 }
benparkes 4:e56a755aeaf1 737
liam_grazier 0:951442bd3f7f 738 }
liam_grazier 1:5b491fa83cb7 739 void senddacout(void){
liam_grazier 1:5b491fa83cb7 740 //octive 0
liam_grazier 1:5b491fa83cb7 741 updateled();
liam_grazier 1:5b491fa83cb7 742 if(note == 1 && octive == 1){
liam_grazier 1:5b491fa83cb7 743 cs = 1;
liam_grazier 1:5b491fa83cb7 744 cs = 0;
liam_grazier 1:5b491fa83cb7 745 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 746 dac.write(0x00);
liam_grazier 1:5b491fa83cb7 747 dac.write(0x00);
liam_grazier 1:5b491fa83cb7 748 cs = 1;
liam_grazier 1:5b491fa83cb7 749 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 750 }
liam_grazier 1:5b491fa83cb7 751 else if(note == 2 && octive == 1){
liam_grazier 1:5b491fa83cb7 752 cs = 1;
liam_grazier 1:5b491fa83cb7 753 cs = 0;
liam_grazier 1:5b491fa83cb7 754 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 755 dac.write(0x03);
liam_grazier 1:5b491fa83cb7 756 dac.write(0x0C);
liam_grazier 1:5b491fa83cb7 757 cs = 1;
liam_grazier 1:5b491fa83cb7 758 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 759 }
liam_grazier 1:5b491fa83cb7 760 else if(note == 3 && octive == 1){
liam_grazier 1:5b491fa83cb7 761 cs = 1;
liam_grazier 1:5b491fa83cb7 762 cs = 0;
liam_grazier 1:5b491fa83cb7 763 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 764 dac.write(0x06);
liam_grazier 1:5b491fa83cb7 765 dac.write(0x18);
liam_grazier 1:5b491fa83cb7 766 cs = 1;
liam_grazier 1:5b491fa83cb7 767 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 768 }
liam_grazier 1:5b491fa83cb7 769 else if(note == 4 && octive == 1){
liam_grazier 1:5b491fa83cb7 770 cs = 1;
liam_grazier 1:5b491fa83cb7 771 cs = 0;
liam_grazier 1:5b491fa83cb7 772 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 773 dac.write(0x09);
liam_grazier 1:5b491fa83cb7 774 dac.write(0x24);
liam_grazier 1:5b491fa83cb7 775 cs = 1;
liam_grazier 1:5b491fa83cb7 776 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 777 }
liam_grazier 1:5b491fa83cb7 778 else if(note == 5 && octive == 1){
liam_grazier 1:5b491fa83cb7 779 cs = 1;
liam_grazier 1:5b491fa83cb7 780 cs = 0;
liam_grazier 1:5b491fa83cb7 781 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 782 dac.write(0x0C);
liam_grazier 1:5b491fa83cb7 783 dac.write(0x2F);
liam_grazier 1:5b491fa83cb7 784 cs = 1;
liam_grazier 1:5b491fa83cb7 785 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 786 }
liam_grazier 1:5b491fa83cb7 787 else if(note == 6 && octive == 1){
liam_grazier 1:5b491fa83cb7 788 cs = 1;
liam_grazier 1:5b491fa83cb7 789 cs = 0;
liam_grazier 1:5b491fa83cb7 790 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 791 dac.write(0x0F);
liam_grazier 1:5b491fa83cb7 792 dac.write(0x3B);
liam_grazier 1:5b491fa83cb7 793 cs = 1;
liam_grazier 1:5b491fa83cb7 794 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 795 }
liam_grazier 1:5b491fa83cb7 796 else if(note == 7 && octive == 1){
liam_grazier 1:5b491fa83cb7 797 cs = 1;
liam_grazier 1:5b491fa83cb7 798 cs = 0;
liam_grazier 1:5b491fa83cb7 799 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 800 dac.write(0x12);
liam_grazier 1:5b491fa83cb7 801 dac.write(0x47);
liam_grazier 1:5b491fa83cb7 802 cs = 1;
liam_grazier 1:5b491fa83cb7 803 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 804 }
liam_grazier 1:5b491fa83cb7 805 else if(note == 8 && octive == 1){
liam_grazier 1:5b491fa83cb7 806 cs = 1;
liam_grazier 1:5b491fa83cb7 807 cs = 0;
liam_grazier 1:5b491fa83cb7 808 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 809 dac.write(0x15);
liam_grazier 1:5b491fa83cb7 810 dac.write(0x53);
liam_grazier 1:5b491fa83cb7 811 cs = 1;
liam_grazier 1:5b491fa83cb7 812 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 813 }
liam_grazier 1:5b491fa83cb7 814 else if(note == 9 && octive == 1){
liam_grazier 1:5b491fa83cb7 815 cs = 1;
liam_grazier 1:5b491fa83cb7 816 cs = 0;
liam_grazier 1:5b491fa83cb7 817 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 818 dac.write(0x18);
liam_grazier 1:5b491fa83cb7 819 dac.write(0x5F);
liam_grazier 1:5b491fa83cb7 820 cs = 1;
liam_grazier 1:5b491fa83cb7 821 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 822 }
liam_grazier 1:5b491fa83cb7 823 else if(note == 10 && octive == 1){
liam_grazier 1:5b491fa83cb7 824 cs = 1;
liam_grazier 1:5b491fa83cb7 825 cs = 0;
liam_grazier 1:5b491fa83cb7 826 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 827 dac.write(0x1B);
liam_grazier 1:5b491fa83cb7 828 dac.write(0x6B);
liam_grazier 1:5b491fa83cb7 829 cs = 1;
liam_grazier 1:5b491fa83cb7 830 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 831 }
liam_grazier 1:5b491fa83cb7 832 else if(note == 11 && octive == 1){
liam_grazier 1:5b491fa83cb7 833 cs = 1;
liam_grazier 1:5b491fa83cb7 834 cs = 0;
liam_grazier 1:5b491fa83cb7 835 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 836 dac.write(0x1E);
liam_grazier 1:5b491fa83cb7 837 dac.write(0x77);
liam_grazier 1:5b491fa83cb7 838 cs = 1;
liam_grazier 1:5b491fa83cb7 839 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 840 }
liam_grazier 1:5b491fa83cb7 841 else if(note == 12 && octive == 1){
liam_grazier 1:5b491fa83cb7 842 cs = 1;
liam_grazier 1:5b491fa83cb7 843 cs = 0;
liam_grazier 1:5b491fa83cb7 844 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 845 dac.write(0x21);
liam_grazier 1:5b491fa83cb7 846 dac.write(0x83);
liam_grazier 1:5b491fa83cb7 847 cs = 1;
liam_grazier 1:5b491fa83cb7 848 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 849 }
liam_grazier 1:5b491fa83cb7 850 //OCTIVE -1
liam_grazier 1:5b491fa83cb7 851 else if(note == 1 && octive == 2){
liam_grazier 1:5b491fa83cb7 852 cs = 1;
liam_grazier 1:5b491fa83cb7 853 cs = 0;
liam_grazier 1:5b491fa83cb7 854 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 855 dac.write(0x24);
liam_grazier 1:5b491fa83cb7 856 dac.write(0x8E);
liam_grazier 1:5b491fa83cb7 857 cs = 1;
liam_grazier 1:5b491fa83cb7 858 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 859 }
liam_grazier 1:5b491fa83cb7 860 else if(note == 2 && octive == 2){
liam_grazier 1:5b491fa83cb7 861 cs = 1;
liam_grazier 1:5b491fa83cb7 862 cs = 0;
liam_grazier 1:5b491fa83cb7 863 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 864 dac.write(0x27);
liam_grazier 1:5b491fa83cb7 865 dac.write(0x9A);
liam_grazier 1:5b491fa83cb7 866 cs = 1;
liam_grazier 1:5b491fa83cb7 867 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 868 }
liam_grazier 1:5b491fa83cb7 869 else if(note == 3 && octive == 2){
liam_grazier 1:5b491fa83cb7 870 cs = 1;
liam_grazier 1:5b491fa83cb7 871 cs = 0;
liam_grazier 1:5b491fa83cb7 872 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 873 dac.write(0x2A);
liam_grazier 1:5b491fa83cb7 874 dac.write(0xA6);
liam_grazier 1:5b491fa83cb7 875 cs = 1;
liam_grazier 1:5b491fa83cb7 876 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 877 }
liam_grazier 1:5b491fa83cb7 878 else if(note == 4 && octive == 2){
liam_grazier 1:5b491fa83cb7 879 cs = 1;
liam_grazier 1:5b491fa83cb7 880 cs = 0;
liam_grazier 1:5b491fa83cb7 881 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 882 dac.write(0x2D);
liam_grazier 1:5b491fa83cb7 883 dac.write(0xB2);
liam_grazier 1:5b491fa83cb7 884 cs = 1;
liam_grazier 1:5b491fa83cb7 885 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 886 }
liam_grazier 1:5b491fa83cb7 887 else if(note == 5 && octive == 2){
liam_grazier 1:5b491fa83cb7 888 cs = 1;
liam_grazier 1:5b491fa83cb7 889 cs = 0;
liam_grazier 1:5b491fa83cb7 890 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 891 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 892 dac.write(0xBE);
liam_grazier 1:5b491fa83cb7 893 cs = 1;
liam_grazier 1:5b491fa83cb7 894 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 895 }
liam_grazier 1:5b491fa83cb7 896 else if(note == 6 && octive == 2){
liam_grazier 1:5b491fa83cb7 897 cs = 1;
liam_grazier 1:5b491fa83cb7 898 cs = 0;
liam_grazier 1:5b491fa83cb7 899 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 900 dac.write(0x33);
liam_grazier 1:5b491fa83cb7 901 dac.write(0xCA);
liam_grazier 1:5b491fa83cb7 902 cs = 1;
liam_grazier 1:5b491fa83cb7 903 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 904 }
liam_grazier 1:5b491fa83cb7 905 else if(note == 7 && octive == 2){
liam_grazier 1:5b491fa83cb7 906 cs = 1;
liam_grazier 1:5b491fa83cb7 907 cs = 0;
liam_grazier 1:5b491fa83cb7 908 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 909 dac.write(0x36);
liam_grazier 1:5b491fa83cb7 910 dac.write(0xD6);
liam_grazier 1:5b491fa83cb7 911 cs = 1;
liam_grazier 1:5b491fa83cb7 912 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 913 }
liam_grazier 1:5b491fa83cb7 914 else if(note == 8 && octive == 2){
liam_grazier 1:5b491fa83cb7 915 cs = 1;
liam_grazier 1:5b491fa83cb7 916 cs = 0;
liam_grazier 1:5b491fa83cb7 917 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 918 dac.write(0x39);
liam_grazier 1:5b491fa83cb7 919 dac.write(0xE2);
liam_grazier 1:5b491fa83cb7 920 cs = 1;
liam_grazier 1:5b491fa83cb7 921 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 922 }
liam_grazier 1:5b491fa83cb7 923 else if(note == 9 && octive == 2){
liam_grazier 1:5b491fa83cb7 924 cs = 1;
liam_grazier 1:5b491fa83cb7 925 cs = 0;
liam_grazier 1:5b491fa83cb7 926 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 927 dac.write(0x3C);
liam_grazier 1:5b491fa83cb7 928 dac.write(0xED);
liam_grazier 1:5b491fa83cb7 929 cs = 1;
liam_grazier 1:5b491fa83cb7 930 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 931 }
liam_grazier 1:5b491fa83cb7 932 else if(note == 10 && octive == 2){
liam_grazier 1:5b491fa83cb7 933 cs = 1;
liam_grazier 1:5b491fa83cb7 934 cs = 0;
liam_grazier 1:5b491fa83cb7 935 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 936 dac.write(0x3F);
liam_grazier 1:5b491fa83cb7 937 dac.write(0xF9);
liam_grazier 1:5b491fa83cb7 938 cs = 1;
liam_grazier 1:5b491fa83cb7 939 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 940 }
liam_grazier 1:5b491fa83cb7 941 else if(note == 11 && octive == 2){
liam_grazier 1:5b491fa83cb7 942 cs = 1;
liam_grazier 1:5b491fa83cb7 943 cs = 0;
liam_grazier 1:5b491fa83cb7 944 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 945 dac.write(0x43);
liam_grazier 1:5b491fa83cb7 946 dac.write(0x05);
liam_grazier 1:5b491fa83cb7 947 cs = 1;
liam_grazier 1:5b491fa83cb7 948 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 949 }
liam_grazier 1:5b491fa83cb7 950 else if(note == 12 && octive == 2){
liam_grazier 1:5b491fa83cb7 951 cs = 1;
liam_grazier 1:5b491fa83cb7 952 cs = 0;
liam_grazier 1:5b491fa83cb7 953 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 954 dac.write(0x46);
liam_grazier 1:5b491fa83cb7 955 dac.write(0x11);
liam_grazier 1:5b491fa83cb7 956 cs = 1;
liam_grazier 1:5b491fa83cb7 957 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 958 }
liam_grazier 1:5b491fa83cb7 959 //octive2
liam_grazier 1:5b491fa83cb7 960 //OCTIVE 1
liam_grazier 1:5b491fa83cb7 961 else if(note == 1 && octive == 3){
liam_grazier 1:5b491fa83cb7 962 cs = 1;
liam_grazier 1:5b491fa83cb7 963 cs = 0;
liam_grazier 1:5b491fa83cb7 964 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 965 dac.write(0x49);
liam_grazier 1:5b491fa83cb7 966 dac.write(0x1D);
liam_grazier 1:5b491fa83cb7 967 cs = 1;
liam_grazier 1:5b491fa83cb7 968 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 969 }
liam_grazier 1:5b491fa83cb7 970 else if(note == 2 && octive == 3){
liam_grazier 1:5b491fa83cb7 971 cs = 1;
liam_grazier 1:5b491fa83cb7 972 cs = 0;
liam_grazier 1:5b491fa83cb7 973 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 974 dac.write(0x4C);
liam_grazier 1:5b491fa83cb7 975 dac.write(0x29);
liam_grazier 1:5b491fa83cb7 976 cs = 1;
liam_grazier 1:5b491fa83cb7 977 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 978 }
liam_grazier 1:5b491fa83cb7 979 else if(note == 3 && octive == 3){
liam_grazier 1:5b491fa83cb7 980 cs = 1;
liam_grazier 1:5b491fa83cb7 981 cs = 0;
liam_grazier 1:5b491fa83cb7 982 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 983 dac.write(0x4F);
liam_grazier 1:5b491fa83cb7 984 dac.write(0x35);
liam_grazier 1:5b491fa83cb7 985 cs = 1;
liam_grazier 1:5b491fa83cb7 986 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 987 }
liam_grazier 1:5b491fa83cb7 988 else if(note == 4 && octive == 3){
liam_grazier 1:5b491fa83cb7 989 cs = 1;
liam_grazier 1:5b491fa83cb7 990 cs = 0;
liam_grazier 1:5b491fa83cb7 991 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 992 dac.write(0x52);
liam_grazier 1:5b491fa83cb7 993 dac.write(0x40);
liam_grazier 1:5b491fa83cb7 994 cs = 1;
liam_grazier 1:5b491fa83cb7 995 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 996 }
liam_grazier 1:5b491fa83cb7 997 else if(note == 5 && octive == 3){
liam_grazier 1:5b491fa83cb7 998 cs = 1;
liam_grazier 1:5b491fa83cb7 999 cs = 0;
liam_grazier 1:5b491fa83cb7 1000 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1001 dac.write(0x55);
liam_grazier 1:5b491fa83cb7 1002 dac.write(0x4C);
liam_grazier 1:5b491fa83cb7 1003 cs = 1;
liam_grazier 1:5b491fa83cb7 1004 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1005 }
liam_grazier 1:5b491fa83cb7 1006 else if(note == 6 && octive == 3){
liam_grazier 1:5b491fa83cb7 1007 cs = 1;
liam_grazier 1:5b491fa83cb7 1008 cs = 0;
liam_grazier 1:5b491fa83cb7 1009 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1010 dac.write(0x58);
liam_grazier 1:5b491fa83cb7 1011 dac.write(0x58);
liam_grazier 1:5b491fa83cb7 1012 cs = 1;
liam_grazier 1:5b491fa83cb7 1013 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1014 }
liam_grazier 1:5b491fa83cb7 1015 else if(note == 7 && octive == 3){
liam_grazier 1:5b491fa83cb7 1016 cs = 1;
liam_grazier 1:5b491fa83cb7 1017 cs = 0;
liam_grazier 1:5b491fa83cb7 1018 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1019 dac.write(0x5B);
liam_grazier 1:5b491fa83cb7 1020 dac.write(0x64);
liam_grazier 1:5b491fa83cb7 1021 cs = 1;
liam_grazier 1:5b491fa83cb7 1022 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1023 }
liam_grazier 1:5b491fa83cb7 1024 else if(note == 8 && octive == 3){
liam_grazier 1:5b491fa83cb7 1025 cs = 1;
liam_grazier 1:5b491fa83cb7 1026 cs = 0;
liam_grazier 1:5b491fa83cb7 1027 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1028 dac.write(0x5E);
liam_grazier 1:5b491fa83cb7 1029 dac.write(0x70);
liam_grazier 1:5b491fa83cb7 1030 cs = 1;
liam_grazier 1:5b491fa83cb7 1031 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1032 }
liam_grazier 1:5b491fa83cb7 1033 else if(note == 9 && octive == 3){
liam_grazier 1:5b491fa83cb7 1034 cs = 1;
liam_grazier 1:5b491fa83cb7 1035 cs = 0;
liam_grazier 1:5b491fa83cb7 1036 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1037 dac.write(0x61);
liam_grazier 1:5b491fa83cb7 1038 dac.write(0x7C);
liam_grazier 1:5b491fa83cb7 1039 cs = 1;
liam_grazier 1:5b491fa83cb7 1040 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1041 }
liam_grazier 1:5b491fa83cb7 1042 else if(note == 10 && octive == 3){
liam_grazier 1:5b491fa83cb7 1043 cs = 1;
liam_grazier 1:5b491fa83cb7 1044 cs = 0;
liam_grazier 1:5b491fa83cb7 1045 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1046 dac.write(0x64);
liam_grazier 1:5b491fa83cb7 1047 dac.write(0x88);
liam_grazier 1:5b491fa83cb7 1048 cs = 1;
liam_grazier 1:5b491fa83cb7 1049 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1050 }
liam_grazier 1:5b491fa83cb7 1051 else if(note == 11 && octive == 3){
liam_grazier 1:5b491fa83cb7 1052 cs = 1;
liam_grazier 1:5b491fa83cb7 1053 cs = 0;
liam_grazier 1:5b491fa83cb7 1054 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1055 dac.write(0x67);
liam_grazier 1:5b491fa83cb7 1056 dac.write(0x94);
liam_grazier 1:5b491fa83cb7 1057 cs = 1;
liam_grazier 1:5b491fa83cb7 1058 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1059 }
liam_grazier 1:5b491fa83cb7 1060 else if(note == 12 && octive == 3){
liam_grazier 1:5b491fa83cb7 1061 cs = 1;
liam_grazier 1:5b491fa83cb7 1062 cs = 0;
liam_grazier 1:5b491fa83cb7 1063 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1064 dac.write(0x6A);
liam_grazier 1:5b491fa83cb7 1065 dac.write(0x9F);
liam_grazier 1:5b491fa83cb7 1066 cs = 1;
liam_grazier 1:5b491fa83cb7 1067 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1068 }
liam_grazier 1:5b491fa83cb7 1069 else if(note == 1 && octive == 4){
liam_grazier 1:5b491fa83cb7 1070 cs = 1;
liam_grazier 1:5b491fa83cb7 1071 cs = 0;
liam_grazier 1:5b491fa83cb7 1072 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1073 dac.write(0x6D);
liam_grazier 1:5b491fa83cb7 1074 dac.write(0xAB);
liam_grazier 1:5b491fa83cb7 1075 cs = 1;
liam_grazier 1:5b491fa83cb7 1076 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1077 }
liam_grazier 1:5b491fa83cb7 1078 else if(note == 2 && octive == 4){
liam_grazier 1:5b491fa83cb7 1079 cs = 1;
liam_grazier 1:5b491fa83cb7 1080 cs = 0;
liam_grazier 1:5b491fa83cb7 1081 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1082 dac.write(0x70);
liam_grazier 1:5b491fa83cb7 1083 dac.write(0xB7);
liam_grazier 1:5b491fa83cb7 1084 cs = 1;
liam_grazier 1:5b491fa83cb7 1085 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1086 }
liam_grazier 1:5b491fa83cb7 1087 else if(note == 3 && octive == 4){
liam_grazier 1:5b491fa83cb7 1088 cs = 1;
liam_grazier 1:5b491fa83cb7 1089 cs = 0;
liam_grazier 1:5b491fa83cb7 1090 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1091 dac.write(0x73);
liam_grazier 1:5b491fa83cb7 1092 dac.write(0xC3);
liam_grazier 1:5b491fa83cb7 1093 cs = 1;
liam_grazier 1:5b491fa83cb7 1094 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1095 }
liam_grazier 1:5b491fa83cb7 1096 else if(note == 4 && octive == 4){
liam_grazier 1:5b491fa83cb7 1097 cs = 1;
liam_grazier 1:5b491fa83cb7 1098 cs = 0;
liam_grazier 1:5b491fa83cb7 1099 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1100 dac.write(0x76);
liam_grazier 1:5b491fa83cb7 1101 dac.write(0xCF);
liam_grazier 1:5b491fa83cb7 1102 cs = 1;
liam_grazier 1:5b491fa83cb7 1103 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1104 }
liam_grazier 1:5b491fa83cb7 1105 else if(note == 5 && octive == 4){
liam_grazier 1:5b491fa83cb7 1106 cs = 1;
liam_grazier 1:5b491fa83cb7 1107 cs = 0;
liam_grazier 1:5b491fa83cb7 1108 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1109 dac.write(0x79);
liam_grazier 1:5b491fa83cb7 1110 dac.write(0xDB);
liam_grazier 1:5b491fa83cb7 1111 cs = 1;
liam_grazier 1:5b491fa83cb7 1112 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1113 }
liam_grazier 1:5b491fa83cb7 1114 else if(note == 6 && octive == 4){
liam_grazier 1:5b491fa83cb7 1115 cs = 1;
liam_grazier 1:5b491fa83cb7 1116 cs = 0;
liam_grazier 1:5b491fa83cb7 1117 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1118 dac.write(0x7C);
liam_grazier 1:5b491fa83cb7 1119 dac.write(0xE7);
liam_grazier 1:5b491fa83cb7 1120 cs = 1;
liam_grazier 1:5b491fa83cb7 1121 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1122 }
liam_grazier 1:5b491fa83cb7 1123 else if(note == 7 && octive == 4){
liam_grazier 1:5b491fa83cb7 1124 cs = 1;
liam_grazier 1:5b491fa83cb7 1125 cs = 0;
liam_grazier 1:5b491fa83cb7 1126 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1127 dac.write(0x7F);
liam_grazier 1:5b491fa83cb7 1128 dac.write(0xF2);
liam_grazier 1:5b491fa83cb7 1129 cs = 1;
liam_grazier 1:5b491fa83cb7 1130 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1131 }
liam_grazier 1:5b491fa83cb7 1132 else if(note == 8 && octive == 4){
liam_grazier 1:5b491fa83cb7 1133 cs = 1;
liam_grazier 1:5b491fa83cb7 1134 cs = 0;
liam_grazier 1:5b491fa83cb7 1135 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1136 dac.write(0x82);
liam_grazier 1:5b491fa83cb7 1137 dac.write(0xFE);
liam_grazier 1:5b491fa83cb7 1138 cs = 1;
liam_grazier 1:5b491fa83cb7 1139 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1140 }
liam_grazier 1:5b491fa83cb7 1141 else if(note == 9 && octive == 4){
liam_grazier 1:5b491fa83cb7 1142 cs = 1;
liam_grazier 1:5b491fa83cb7 1143 cs = 0;
liam_grazier 1:5b491fa83cb7 1144 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1145 dac.write(0x86);
liam_grazier 1:5b491fa83cb7 1146 dac.write(0x0A);
liam_grazier 1:5b491fa83cb7 1147 cs = 1;
liam_grazier 1:5b491fa83cb7 1148 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1149 }
liam_grazier 1:5b491fa83cb7 1150 else if(note == 10 && octive == 4){
liam_grazier 1:5b491fa83cb7 1151 cs = 1;
liam_grazier 1:5b491fa83cb7 1152 cs = 0;
liam_grazier 1:5b491fa83cb7 1153 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1154 dac.write(0x89);
liam_grazier 1:5b491fa83cb7 1155 dac.write(0x16);
liam_grazier 1:5b491fa83cb7 1156 cs = 1;
liam_grazier 1:5b491fa83cb7 1157 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1158 }
liam_grazier 1:5b491fa83cb7 1159 else if(note == 11 && octive == 4){
liam_grazier 1:5b491fa83cb7 1160 cs = 1;
liam_grazier 1:5b491fa83cb7 1161 cs = 0;
liam_grazier 1:5b491fa83cb7 1162 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1163 dac.write(0x8C);
liam_grazier 1:5b491fa83cb7 1164 dac.write(0x22);
liam_grazier 1:5b491fa83cb7 1165 cs = 1;
liam_grazier 1:5b491fa83cb7 1166 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1167 }
liam_grazier 1:5b491fa83cb7 1168 else if(note == 12 && octive == 4){
liam_grazier 1:5b491fa83cb7 1169 cs = 1;
liam_grazier 1:5b491fa83cb7 1170 cs = 0;
liam_grazier 1:5b491fa83cb7 1171 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1172 dac.write(0x8F);
liam_grazier 1:5b491fa83cb7 1173 dac.write(0x2E);
liam_grazier 1:5b491fa83cb7 1174 cs = 1;
liam_grazier 1:5b491fa83cb7 1175 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1176 }
liam_grazier 1:5b491fa83cb7 1177 else if(note == 1 && octive == 5){
liam_grazier 1:5b491fa83cb7 1178 cs = 1;
liam_grazier 1:5b491fa83cb7 1179 cs = 0;
liam_grazier 1:5b491fa83cb7 1180 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1181 dac.write(0x92);
liam_grazier 1:5b491fa83cb7 1182 dac.write(0x3A);
liam_grazier 1:5b491fa83cb7 1183 cs = 1;
liam_grazier 1:5b491fa83cb7 1184 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1185 }
liam_grazier 1:5b491fa83cb7 1186 else if(note == 2 && octive == 5){
liam_grazier 1:5b491fa83cb7 1187 cs = 1;
liam_grazier 1:5b491fa83cb7 1188 cs = 0;
liam_grazier 1:5b491fa83cb7 1189 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1190 dac.write(0x95);
liam_grazier 1:5b491fa83cb7 1191 dac.write(0x46);
liam_grazier 1:5b491fa83cb7 1192 cs = 1;
liam_grazier 1:5b491fa83cb7 1193 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1194 }
liam_grazier 1:5b491fa83cb7 1195 else if(note == 3 && octive == 5){
liam_grazier 1:5b491fa83cb7 1196 cs = 1;
liam_grazier 1:5b491fa83cb7 1197 cs = 0;
liam_grazier 1:5b491fa83cb7 1198 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1199 dac.write(0x98);
liam_grazier 1:5b491fa83cb7 1200 dac.write(0x51);
liam_grazier 1:5b491fa83cb7 1201 cs = 1;
liam_grazier 1:5b491fa83cb7 1202 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1203 }
liam_grazier 1:5b491fa83cb7 1204 else if(note == 4 && octive == 5){
liam_grazier 1:5b491fa83cb7 1205 cs = 1;
liam_grazier 1:5b491fa83cb7 1206 cs = 0;
liam_grazier 1:5b491fa83cb7 1207 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1208 dac.write(0x9B);
liam_grazier 1:5b491fa83cb7 1209 dac.write(0x5D);
liam_grazier 1:5b491fa83cb7 1210 cs = 1;
liam_grazier 1:5b491fa83cb7 1211 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1212 }
liam_grazier 1:5b491fa83cb7 1213 else if(note == 5 && octive == 5){
liam_grazier 1:5b491fa83cb7 1214 cs = 1;
liam_grazier 1:5b491fa83cb7 1215 cs = 0;
liam_grazier 1:5b491fa83cb7 1216 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1217 dac.write(0x9E);
liam_grazier 1:5b491fa83cb7 1218 dac.write(0x69);
liam_grazier 1:5b491fa83cb7 1219 cs = 1;
liam_grazier 1:5b491fa83cb7 1220 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1221 }
liam_grazier 1:5b491fa83cb7 1222 else if(note == 6 && octive == 5){
liam_grazier 1:5b491fa83cb7 1223 cs = 1;
liam_grazier 1:5b491fa83cb7 1224 cs = 0;
liam_grazier 1:5b491fa83cb7 1225 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1226 dac.write(0xA1);
liam_grazier 1:5b491fa83cb7 1227 dac.write(0x75);
liam_grazier 1:5b491fa83cb7 1228 cs = 1;
liam_grazier 1:5b491fa83cb7 1229 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1230 }
liam_grazier 1:5b491fa83cb7 1231 else if(note == 7 && octive == 5){
liam_grazier 1:5b491fa83cb7 1232 cs = 1;
liam_grazier 1:5b491fa83cb7 1233 cs = 0;
liam_grazier 1:5b491fa83cb7 1234 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1235 dac.write(0xA4);
liam_grazier 1:5b491fa83cb7 1236 dac.write(0x81);
liam_grazier 1:5b491fa83cb7 1237 cs = 1;
liam_grazier 1:5b491fa83cb7 1238 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1239 }
liam_grazier 1:5b491fa83cb7 1240 else if(note == 8 && octive == 5){
liam_grazier 1:5b491fa83cb7 1241 cs = 1;
liam_grazier 1:5b491fa83cb7 1242 cs = 0;
liam_grazier 1:5b491fa83cb7 1243 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1244 dac.write(0xA7);
liam_grazier 1:5b491fa83cb7 1245 dac.write(0x8D);
liam_grazier 1:5b491fa83cb7 1246 cs = 1;
liam_grazier 1:5b491fa83cb7 1247 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1248 }
liam_grazier 1:5b491fa83cb7 1249 else if(note == 9 && octive == 5){
liam_grazier 1:5b491fa83cb7 1250 cs = 1;
liam_grazier 1:5b491fa83cb7 1251 cs = 0;
liam_grazier 1:5b491fa83cb7 1252 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1253 dac.write(0xAA);
liam_grazier 1:5b491fa83cb7 1254 dac.write(0x99);
liam_grazier 1:5b491fa83cb7 1255 cs = 1;
liam_grazier 1:5b491fa83cb7 1256 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1257 }
liam_grazier 1:5b491fa83cb7 1258 else if(note == 10 && octive == 5){
liam_grazier 1:5b491fa83cb7 1259 cs = 1;
liam_grazier 1:5b491fa83cb7 1260 cs = 0;
liam_grazier 1:5b491fa83cb7 1261 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1262 dac.write(0xAD);
liam_grazier 1:5b491fa83cb7 1263 dac.write(0xA5);
liam_grazier 1:5b491fa83cb7 1264 cs = 1;
liam_grazier 1:5b491fa83cb7 1265 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1266 }
liam_grazier 1:5b491fa83cb7 1267 else if(note == 11 && octive == 5){
liam_grazier 1:5b491fa83cb7 1268 cs = 1;
liam_grazier 1:5b491fa83cb7 1269 cs = 0;
liam_grazier 1:5b491fa83cb7 1270 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1271 dac.write(0xB0);
liam_grazier 1:5b491fa83cb7 1272 dac.write(0xB0);
liam_grazier 1:5b491fa83cb7 1273 cs = 1;
liam_grazier 1:5b491fa83cb7 1274 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1275 }
liam_grazier 1:5b491fa83cb7 1276 else if(note == 12 && octive == 5){
liam_grazier 1:5b491fa83cb7 1277 cs = 1;
liam_grazier 1:5b491fa83cb7 1278 cs = 0;
liam_grazier 1:5b491fa83cb7 1279 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1280 dac.write(0xB3);
liam_grazier 1:5b491fa83cb7 1281 dac.write(0xBC);
liam_grazier 1:5b491fa83cb7 1282 cs = 1;
liam_grazier 1:5b491fa83cb7 1283 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1284 }
liam_grazier 1:5b491fa83cb7 1285 else if(note == 1 && octive == 6){
liam_grazier 1:5b491fa83cb7 1286 cs = 1;
liam_grazier 1:5b491fa83cb7 1287 cs = 0;
liam_grazier 1:5b491fa83cb7 1288 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1289 dac.write(0xB6);
liam_grazier 1:5b491fa83cb7 1290 dac.write(0xC8);
liam_grazier 1:5b491fa83cb7 1291 cs = 1;
liam_grazier 1:5b491fa83cb7 1292 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1293 }
liam_grazier 1:5b491fa83cb7 1294 else if(note == 2 && octive == 6){
liam_grazier 1:5b491fa83cb7 1295 cs = 1;
liam_grazier 1:5b491fa83cb7 1296 cs = 0;
liam_grazier 1:5b491fa83cb7 1297 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1298 dac.write(0xB9);
liam_grazier 1:5b491fa83cb7 1299 dac.write(0xD4);
liam_grazier 1:5b491fa83cb7 1300 cs = 1;
liam_grazier 1:5b491fa83cb7 1301 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1302 }
liam_grazier 1:5b491fa83cb7 1303 else if(note == 3 && octive == 6){
liam_grazier 1:5b491fa83cb7 1304 cs = 1;
liam_grazier 1:5b491fa83cb7 1305 cs = 0;
liam_grazier 1:5b491fa83cb7 1306 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1307 dac.write(0xBC);
liam_grazier 1:5b491fa83cb7 1308 dac.write(0xE0);
liam_grazier 1:5b491fa83cb7 1309 cs = 1;
liam_grazier 1:5b491fa83cb7 1310 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1311 }
liam_grazier 1:5b491fa83cb7 1312 else if(note == 4 && octive == 6){
liam_grazier 1:5b491fa83cb7 1313 cs = 1;
liam_grazier 1:5b491fa83cb7 1314 cs = 0;
liam_grazier 1:5b491fa83cb7 1315 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1316 dac.write(0xBF);
liam_grazier 1:5b491fa83cb7 1317 dac.write(0xEC);
liam_grazier 1:5b491fa83cb7 1318 cs = 1;
liam_grazier 1:5b491fa83cb7 1319 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1320 }
liam_grazier 1:5b491fa83cb7 1321 else if(note == 5 && octive == 6){
liam_grazier 1:5b491fa83cb7 1322 cs = 1;
liam_grazier 1:5b491fa83cb7 1323 cs = 0;
liam_grazier 1:5b491fa83cb7 1324 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1325 dac.write(0xC2);
liam_grazier 1:5b491fa83cb7 1326 dac.write(0xF8);
liam_grazier 1:5b491fa83cb7 1327 cs = 1;
liam_grazier 1:5b491fa83cb7 1328 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1329 }
liam_grazier 1:5b491fa83cb7 1330 else if(note == 6 && octive == 6){
liam_grazier 1:5b491fa83cb7 1331 cs = 1;
liam_grazier 1:5b491fa83cb7 1332 cs = 0;
liam_grazier 1:5b491fa83cb7 1333 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1334 dac.write(0xC6);
liam_grazier 1:5b491fa83cb7 1335 dac.write(0x03);
liam_grazier 1:5b491fa83cb7 1336 cs = 1;
liam_grazier 1:5b491fa83cb7 1337 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1338 }
liam_grazier 1:5b491fa83cb7 1339 else if(note == 7 && octive == 6){
liam_grazier 1:5b491fa83cb7 1340 cs = 1;
liam_grazier 1:5b491fa83cb7 1341 cs = 0;
liam_grazier 1:5b491fa83cb7 1342 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1343 dac.write(0xC9);
liam_grazier 1:5b491fa83cb7 1344 dac.write(0x0F);
liam_grazier 1:5b491fa83cb7 1345 cs = 1;
liam_grazier 1:5b491fa83cb7 1346 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1347 }
liam_grazier 1:5b491fa83cb7 1348 else if(note == 8 && octive == 6){
liam_grazier 1:5b491fa83cb7 1349 cs = 1;
liam_grazier 1:5b491fa83cb7 1350 cs = 0;
liam_grazier 1:5b491fa83cb7 1351 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1352 dac.write(0xCC);
liam_grazier 1:5b491fa83cb7 1353 dac.write(0x1B);
liam_grazier 1:5b491fa83cb7 1354 cs = 1;
liam_grazier 1:5b491fa83cb7 1355 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1356 }
liam_grazier 1:5b491fa83cb7 1357 else if(note == 9 && octive == 6){
liam_grazier 1:5b491fa83cb7 1358 cs = 1;
liam_grazier 1:5b491fa83cb7 1359 cs = 0;
liam_grazier 1:5b491fa83cb7 1360 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1361 dac.write(0xCF);
liam_grazier 1:5b491fa83cb7 1362 dac.write(0x27);
liam_grazier 1:5b491fa83cb7 1363 cs = 1;
liam_grazier 1:5b491fa83cb7 1364 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1365 }
liam_grazier 1:5b491fa83cb7 1366 else if(note == 10 && octive == 6){
liam_grazier 1:5b491fa83cb7 1367 cs = 1;
liam_grazier 1:5b491fa83cb7 1368 cs = 0;
liam_grazier 1:5b491fa83cb7 1369 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1370 dac.write(0xD2);
liam_grazier 1:5b491fa83cb7 1371 dac.write(0x33);
liam_grazier 1:5b491fa83cb7 1372 cs = 1;
liam_grazier 1:5b491fa83cb7 1373 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1374 }
liam_grazier 1:5b491fa83cb7 1375 else if(note == 11 && octive == 6){
liam_grazier 1:5b491fa83cb7 1376 cs = 1;
liam_grazier 1:5b491fa83cb7 1377 cs = 0;
liam_grazier 1:5b491fa83cb7 1378 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1379 dac.write(0xD5);
liam_grazier 1:5b491fa83cb7 1380 dac.write(0x3F);
liam_grazier 1:5b491fa83cb7 1381 cs = 1;
liam_grazier 1:5b491fa83cb7 1382 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1383 }
liam_grazier 1:5b491fa83cb7 1384 else if(note == 12 && octive == 6){
liam_grazier 1:5b491fa83cb7 1385 cs = 1;
liam_grazier 1:5b491fa83cb7 1386 cs = 0;
liam_grazier 1:5b491fa83cb7 1387 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1388 dac.write(0xD8);
liam_grazier 1:5b491fa83cb7 1389 dac.write(0x4B);
liam_grazier 1:5b491fa83cb7 1390 cs = 1;
liam_grazier 1:5b491fa83cb7 1391 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1392 }
liam_grazier 1:5b491fa83cb7 1393 else if(note == 1 && octive == 7){
liam_grazier 1:5b491fa83cb7 1394 cs = 1;
liam_grazier 1:5b491fa83cb7 1395 cs = 0;
liam_grazier 1:5b491fa83cb7 1396 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1397 dac.write(0xDB);
liam_grazier 1:5b491fa83cb7 1398 dac.write(0x57);
liam_grazier 1:5b491fa83cb7 1399 cs = 1;
liam_grazier 1:5b491fa83cb7 1400 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1401 }
liam_grazier 1:5b491fa83cb7 1402 else if(note == 2 && octive == 7){
liam_grazier 1:5b491fa83cb7 1403 cs = 1;
liam_grazier 1:5b491fa83cb7 1404 cs = 0;
liam_grazier 1:5b491fa83cb7 1405 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1406 dac.write(0xDE);
liam_grazier 1:5b491fa83cb7 1407 dac.write(0x62);
liam_grazier 1:5b491fa83cb7 1408 cs = 1;
liam_grazier 1:5b491fa83cb7 1409 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1410 }
liam_grazier 1:5b491fa83cb7 1411 else if(note == 3 && octive == 7){
liam_grazier 1:5b491fa83cb7 1412 cs = 1;
liam_grazier 1:5b491fa83cb7 1413 cs = 0;
liam_grazier 1:5b491fa83cb7 1414 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1415 dac.write(0xE1);
liam_grazier 1:5b491fa83cb7 1416 dac.write(0x6E);
liam_grazier 1:5b491fa83cb7 1417 cs = 1;
liam_grazier 1:5b491fa83cb7 1418 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1419 }
liam_grazier 1:5b491fa83cb7 1420 else if(note == 4 && octive == 7){
liam_grazier 1:5b491fa83cb7 1421 cs = 1;
liam_grazier 1:5b491fa83cb7 1422 cs = 0;
liam_grazier 1:5b491fa83cb7 1423 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1424 dac.write(0xE4);
liam_grazier 1:5b491fa83cb7 1425 dac.write(0x7A);
liam_grazier 1:5b491fa83cb7 1426 cs = 1;
liam_grazier 1:5b491fa83cb7 1427 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1428 }
liam_grazier 1:5b491fa83cb7 1429 else if(note == 5 && octive == 7){
liam_grazier 1:5b491fa83cb7 1430 cs = 1;
liam_grazier 1:5b491fa83cb7 1431 cs = 0;
liam_grazier 1:5b491fa83cb7 1432 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1433 dac.write(0xE7);
liam_grazier 1:5b491fa83cb7 1434 dac.write(0x86);
liam_grazier 1:5b491fa83cb7 1435 cs = 1;
liam_grazier 1:5b491fa83cb7 1436 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1437 }
liam_grazier 1:5b491fa83cb7 1438 else if(note == 6 && octive == 7){
liam_grazier 1:5b491fa83cb7 1439 cs = 1;
liam_grazier 1:5b491fa83cb7 1440 cs = 0;
liam_grazier 1:5b491fa83cb7 1441 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1442 dac.write(0xF5);
liam_grazier 1:5b491fa83cb7 1443 dac.write(0xEA);
liam_grazier 1:5b491fa83cb7 1444 cs = 1;
liam_grazier 1:5b491fa83cb7 1445 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1446 }
liam_grazier 1:5b491fa83cb7 1447 else if(note == 7 && octive == 7){
liam_grazier 1:5b491fa83cb7 1448 cs = 1;
liam_grazier 1:5b491fa83cb7 1449 cs = 0;
liam_grazier 1:5b491fa83cb7 1450 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1451 dac.write(0xED);
liam_grazier 1:5b491fa83cb7 1452 dac.write(0x9E);
liam_grazier 1:5b491fa83cb7 1453 cs = 1;
liam_grazier 1:5b491fa83cb7 1454 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1455 }
liam_grazier 1:5b491fa83cb7 1456 else if(note == 8 && octive == 7){
liam_grazier 1:5b491fa83cb7 1457 cs = 1;
liam_grazier 1:5b491fa83cb7 1458 cs = 0;
liam_grazier 1:5b491fa83cb7 1459 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1460 dac.write(0xF0);
liam_grazier 1:5b491fa83cb7 1461 dac.write(0xAA);
liam_grazier 1:5b491fa83cb7 1462 cs = 1;
liam_grazier 1:5b491fa83cb7 1463 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1464 }
liam_grazier 1:5b491fa83cb7 1465 else if(note == 9 && octive == 7){
liam_grazier 1:5b491fa83cb7 1466 cs = 1;
liam_grazier 1:5b491fa83cb7 1467 cs = 0;
liam_grazier 1:5b491fa83cb7 1468 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1469 dac.write(0xF3);
liam_grazier 1:5b491fa83cb7 1470 dac.write(0xB6);
liam_grazier 1:5b491fa83cb7 1471 cs = 1;
liam_grazier 1:5b491fa83cb7 1472 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1473 }
liam_grazier 1:5b491fa83cb7 1474 else if(note == 10 && octive == 7){
liam_grazier 1:5b491fa83cb7 1475 cs = 1;
liam_grazier 1:5b491fa83cb7 1476 cs = 0;
liam_grazier 1:5b491fa83cb7 1477 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1478 dac.write(0xA5);
liam_grazier 1:5b491fa83cb7 1479 dac.write(0xF6);
liam_grazier 1:5b491fa83cb7 1480 cs = 1;
liam_grazier 1:5b491fa83cb7 1481 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1482 }
liam_grazier 1:5b491fa83cb7 1483 else if(note == 11 && octive == 7){
liam_grazier 1:5b491fa83cb7 1484 cs = 1;
liam_grazier 1:5b491fa83cb7 1485 cs = 0;
liam_grazier 1:5b491fa83cb7 1486 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1487 dac.write(0xF9);
liam_grazier 1:5b491fa83cb7 1488 dac.write(0xCD);
liam_grazier 1:5b491fa83cb7 1489 cs = 1;
liam_grazier 1:5b491fa83cb7 1490 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1491 }
liam_grazier 1:5b491fa83cb7 1492 else if(note == 12 && octive == 7){
liam_grazier 1:5b491fa83cb7 1493 cs = 1;
liam_grazier 1:5b491fa83cb7 1494 cs = 0;
liam_grazier 1:5b491fa83cb7 1495 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1496 dac.write(0xFC);
liam_grazier 1:5b491fa83cb7 1497 dac.write(0xD9);
liam_grazier 1:5b491fa83cb7 1498 cs = 1;
liam_grazier 1:5b491fa83cb7 1499 pc.printf("N2O4\n\r");
liam_grazier 1:5b491fa83cb7 1500 }
liam_grazier 1:5b491fa83cb7 1501 else if(note == 1 && octive == 8){
liam_grazier 1:5b491fa83cb7 1502 cs = 1;
liam_grazier 1:5b491fa83cb7 1503 cs = 0;
liam_grazier 1:5b491fa83cb7 1504 dac.write(0x30);
liam_grazier 1:5b491fa83cb7 1505 dac.write(0xFF);
liam_grazier 1:5b491fa83cb7 1506 dac.write(0xE5);
liam_grazier 1:5b491fa83cb7 1507 cs = 1;
benparkes 4:e56a755aeaf1 1508 }
benparkes 4:e56a755aeaf1 1509 //save to loop buffer
benparkes 4:e56a755aeaf1 1510 loopBuffer[bufferHeader].update(note, octive, duration);
benparkes 4:e56a755aeaf1 1511 pointerHandler();
liam_grazier 1:5b491fa83cb7 1512 }
liam_grazier 1:5b491fa83cb7 1513 #endif