Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
main.cpp
00001 #include "mbed.h" 00002 #include "MIDI_sub3.h" 00003 00004 int main(){ 00005 int i, j, k, p; 00006 unsigned char adc_new; 00007 i = j = k = p = 0; 00008 rx_top = rx_end = tx_top = tx_end = adc_no = 0; 00009 MIDI.baud(31250); 00010 MIDI.attach(&rx_fifoset, MIDI.RxIrq); 00011 LatchPulse.write(0x01F8); 00012 TriggerOut.write(0xF000); 00013 trigger_status = 0; 00014 for(i=0; i<6; i++) DAC_out(i,0); 00015 for(i=0; i<10; i++) adc_old[i] = 0; 00016 while(1){ 00017 if(++p > 10000){ 00018 p = 0; 00019 if(++adc_no > 9) adc_no = 0; 00020 adc_new = ADC_get(adc_no); 00021 if(adc_old[adc_no] != adc_new){ 00022 adc_old[adc_no] = adc_new; 00023 tx_fifoset(0xBF); 00024 tx_fifoset(adc_no); 00025 tx_fifoset(adc_new); 00026 } 00027 } 00028 tx_fifo_check(); 00029 if(rx_fifo_check() == 1){ 00030 switch(midi_message>>20){ 00031 case 0x0B: 00032 if(((midi_message>>16) & 0x0F) == 0){ 00033 k = (midi_message>>8) & 0x7F; 00034 if(k < 6){ 00035 DAC_out(k, (midi_message & 0x7F)<<1); 00036 } 00037 } 00038 else if(((midi_message>>16) & 0x0F) == 1){ 00039 k = (midi_message>>8) & 0x7F; 00040 if(k < 4){ 00041 Trigger_send(k, (midi_message & 0x7F)); 00042 } 00043 } 00044 break; 00045 case 0x0C: 00046 tx_fifoset(midi_message>>16); 00047 tx_fifoset((midi_message>>8) & 0x7F); 00048 break; 00049 } 00050 } 00051 if(++j > 1000000){ 00052 j = 0; 00053 myled = !myled; 00054 } 00055 } 00056 }
Generated on Sat Jul 23 2022 12:43:57 by
1.7.2