diff --git a/stereo_mix/drivers/adc.h b/stereo_mix/drivers/adc.h index 15e754c..9c91074 100644 --- a/stereo_mix/drivers/adc.h +++ b/stereo_mix/drivers/adc.h @@ -7,14 +7,14 @@ namespace stereo_mix { enum AdcChannel { - ADC_CHANNEL_CV_VOL_1, - ADC_CHANNEL_CV_VOL_2, - ADC_CHANNEL_CV_VOL_3, - ADC_CHANNEL_CV_VOL_4, - ADC_CHANNEL_CV_PAN_1, - ADC_CHANNEL_CV_PAN_2, - ADC_CHANNEL_CV_PAN_3, - ADC_CHANNEL_CV_PAN_4, + ADC_CHANNEL_VOL_1, + ADC_CHANNEL_VOL_2, + ADC_CHANNEL_VOL_3, + ADC_CHANNEL_VOL_4, + ADC_CHANNEL_PAN_1, + ADC_CHANNEL_PAN_2, + ADC_CHANNEL_PAN_3, + ADC_CHANNEL_PAN_4, ADC_CHANNEL_MUX, ADC_CHANNEL_LAST, diff --git a/stereo_mix/drivers/dac.h b/stereo_mix/drivers/dac.h index 2be2e3e..c74a1b1 100644 --- a/stereo_mix/drivers/dac.h +++ b/stereo_mix/drivers/dac.h @@ -73,11 +73,11 @@ class Dac { // MCP4xx2 dac implementation value |= 1 << 12; // shutdown always set to 1 HAL_GPIO_WritePin(ssGpioPort, ssGpioPin, GPIO_PIN_RESET); - HAL_SPI_Transmit(&hspi1, (uint8_t*)&value, 1, 1000); + HAL_SPI_Transmit(&hspi1, (uint8_t*)&value, 1, HAL_MAX_DELAY); //SPI_I2S_SendData16(SPI1, value); // MSB first, specified in config - while (HAL_SPI_GetState(&hspi1) & HAL_SPI_STATE_BUSY) { + /*while (HAL_SPI_GetState(&hspi1) & HAL_SPI_STATE_BUSY) { asm("nop"); - } + }*/ HAL_GPIO_WritePin(ssGpioPort, ssGpioPin, GPIO_PIN_SET); }; diff --git a/stereo_mix/hardware_design/pcb/stereo_mix_back_digital.brd b/stereo_mix/hardware_design/pcb/stereo_mix_back_digital.brd index 4cdfcfd..1969e2b 100644 --- a/stereo_mix/hardware_design/pcb/stereo_mix_back_digital.brd +++ b/stereo_mix/hardware_design/pcb/stereo_mix_back_digital.brd @@ -1,6 +1,6 @@ - + @@ -34,7 +34,7 @@ - + @@ -749,7 +749,7 @@ CONN_05x2 - + <b>CAPACITOR</b><p> @@ -759,8 +759,8 @@ CONN_05x2 ->NAME ->VALUE +>NAME +>VALUE @@ -795,6 +795,22 @@ CONN_05x2 + +<b>CAPACITOR</b> + + + + + + + + +>NAME +>VALUE + + + + @@ -808,7 +824,7 @@ CONN_05x2 - + CAPACITOR @@ -826,6 +842,13 @@ CONN_05x2 + +Chip, 1.00 X 0.50 X 0.50 mm body +<p>Chip package with body size 1.00 X 0.50 X 0.50 mm</p> + + + + @@ -1553,109 +1576,109 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -1709,43 +1732,43 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + - + - + - + - + - + @@ -1768,25 +1791,25 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + - + - + @@ -1972,25 +1995,25 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + - + - + @@ -2000,13 +2023,13 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -2070,7 +2093,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -2080,7 +2103,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -2098,13 +2121,13 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -2134,13 +2157,13 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -2158,25 +2181,25 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + - + - + @@ -2206,49 +2229,49 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + - + - + - + - + - + - + @@ -2460,7 +2483,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -2481,7 +2504,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -2532,7 +2555,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -2580,12 +2603,12 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -2596,20 +2619,20 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + - + @@ -2618,13 +2641,13 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -2643,7 +2666,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -2692,21 +2715,21 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + - + - + - + - + - + - + @@ -2719,7 +2742,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -2742,7 +2765,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -2761,7 +2784,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -2779,7 +2802,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -2794,7 +2817,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -2802,7 +2825,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -2823,10 +2846,10 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -2834,12 +2857,12 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -2853,7 +2876,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -2861,19 +2884,19 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + - + @@ -2882,17 +2905,17 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - - + + - + @@ -2903,7 +2926,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -2930,11 +2953,11 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - - + + @@ -2947,16 +2970,16 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - - + + - + - + @@ -2966,7 +2989,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -2979,14 +3002,14 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - - - + + + - + @@ -3001,7 +3024,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -3018,7 +3041,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -3035,7 +3058,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -3056,17 +3079,17 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - - - - + + + + - + @@ -3076,7 +3099,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -3113,12 +3136,12 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -3127,7 +3150,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -3161,11 +3184,11 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -3209,7 +3232,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -3373,15 +3396,15 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - - + + - + - + - + @@ -3390,7 +3413,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -3408,7 +3431,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -3533,12 +3556,12 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - - - - + + + + @@ -3871,10 +3894,10 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -4289,7 +4312,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -4305,7 +4328,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -4323,9 +4346,9 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -4344,10 +4367,10 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -4397,9 +4420,9 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -5334,9 +5357,9 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -5413,10 +5436,10 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -5467,7 +5490,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -5477,10 +5500,10 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -6337,7 +6360,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -6349,7 +6372,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -6359,7 +6382,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -6451,78 +6474,78 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + - - + + - + - - + + - - + + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -6560,7 +6583,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -6570,16 +6593,16 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - - + + - + @@ -6603,7 +6626,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -6667,7 +6690,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -6730,7 +6753,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -6740,7 +6763,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -6980,7 +7003,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -6992,7 +7015,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -7056,7 +7079,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -7066,21 +7089,21 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + - + @@ -7091,7 +7114,7 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + @@ -7104,8 +7127,8 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - - + + @@ -7114,9 +7137,9 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + @@ -7139,8 +7162,8 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - - + + @@ -7169,8 +7192,8 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - - + + @@ -7200,11 +7223,11 @@ Source: http://www.onsemi.co.jp .. LM137M-D.PDF - + - + diff --git a/stereo_mix/hardware_design/pcb/stereo_mix_back_digital.sch b/stereo_mix/hardware_design/pcb/stereo_mix_back_digital.sch index 6f672fe..fd81711 100644 --- a/stereo_mix/hardware_design/pcb/stereo_mix_back_digital.sch +++ b/stereo_mix/hardware_design/pcb/stereo_mix_back_digital.sch @@ -1,6 +1,6 @@ - + @@ -16322,22 +16322,6 @@ Source: http://www.onsemi.com/pub_link/Collateral/MBRA340T3-D.PDF - -<b>CAPACITOR</b> - - - - - - - - ->NAME ->VALUE - - - - <b>CAPACITOR</b> @@ -16370,7 +16354,7 @@ Source: http://www.onsemi.com/pub_link/Collateral/MBRA340T3-D.PDF - + <b>CAPACITOR</b><p> @@ -16380,28 +16364,12 @@ Source: http://www.onsemi.com/pub_link/Collateral/MBRA340T3-D.PDF ->NAME ->VALUE +>NAME +>VALUE - -<b>CAPACITOR</b> - - - - - - - - ->NAME ->VALUE - - - - <b>CAPACITOR</b> @@ -16824,6 +16792,38 @@ Source: http://www.vishay.com .. dcrcw.pdf + +<b>CAPACITOR</b> + + + + + + + + +>NAME +>VALUE + + + + + +<b>CAPACITOR</b> + + + + + + + + +>NAME +>VALUE + + + + @@ -16961,13 +16961,6 @@ Source: http://products.nichicon.co.jp/en/pdf/XJA043/e-ud.pdf - -Chip, 1.00 X 0.50 X 0.60 mm body -<p>Chip package with body size 1.00 X 0.50 X 0.60 mm</p> - - - - CAPACITOR @@ -16980,18 +16973,12 @@ Source: http://products.nichicon.co.jp/en/pdf/XJA043/e-ud.pdf - + CAPACITOR - -CAPACITOR - - - - CAPACITOR @@ -17166,6 +17153,19 @@ Source: http://www.vishay.com .. dcrcw.pdf + +Chip, 1.00 X 0.50 X 0.50 mm body +<p>Chip package with body size 1.00 X 0.50 X 0.50 mm</p> + + + + + +CAPACITOR + + + + @@ -17592,7 +17592,7 @@ Source: http://www.vishay.com .. dcrcw.pdf - + @@ -18715,26 +18715,26 @@ Source: http://www.st.com/stonline/products/literature/ds/7194/ld1117axx.pdf - - + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -18759,15 +18759,15 @@ Source: http://www.st.com/stonline/products/literature/ds/7194/ld1117axx.pdf - - - - - - + + + + + + - + @@ -18777,10 +18777,10 @@ Source: http://www.st.com/stonline/products/literature/ds/7194/ld1117axx.pdf - - - - + + + + @@ -18846,19 +18846,19 @@ Source: http://www.st.com/stonline/products/literature/ds/7194/ld1117axx.pdf - - - + + + - + - - + + @@ -18875,11 +18875,11 @@ Source: http://www.st.com/stonline/products/literature/ds/7194/ld1117axx.pdf - + - + @@ -18906,8 +18906,8 @@ Source: http://www.st.com/stonline/products/literature/ds/7194/ld1117axx.pdf - - + + @@ -18924,14 +18924,14 @@ Source: http://www.st.com/stonline/products/literature/ds/7194/ld1117axx.pdf - - + + - - - - + + + + @@ -18940,14 +18940,14 @@ Source: http://www.st.com/stonline/products/literature/ds/7194/ld1117axx.pdf - - - - - - - - + + + + + + + + diff --git a/stereo_mix/stereo_mix.cc b/stereo_mix/stereo_mix.cc index 4cb5978..e3bf74d 100644 --- a/stereo_mix/stereo_mix.cc +++ b/stereo_mix/stereo_mix.cc @@ -99,10 +99,10 @@ int main(void) uint32_t value_l; uint32_t value_r; - uint16_t pan_pot = adc.value(ADC_GROUP_POT + i) >> (16 - 12); // adc is only 12 bit anyways - uint16_t vol_pot = adc.value(ADC_GROUP_CV + i) >> (16 - 12); - int16_t pan_cv = (adc.value(ADC_CHANNEL_CV_PAN_1 + i) - 32768) >> (16 - 12); - uint16_t vol_cv = adc.value(ADC_CHANNEL_CV_VOL_1 + i) >> (16 - 12); + uint16_t pan_pot = adc.value(ADC_GROUP_POT + ADC_CHANNEL_PAN_1 + i) >> (16 - 12); // adc is only 12 bit anyways + uint16_t vol_pot = adc.value(ADC_GROUP_POT + ADC_CHANNEL_VOL_1 + i) >> (16 - 12); + int16_t pan_cv = (adc.value(ADC_GROUP_CV + ADC_CHANNEL_PAN_1 + i) - 32768) >> (16 - 12); + uint16_t vol_cv = adc.value(ADC_GROUP_CV + ADC_CHANNEL_VOL_1 + i) >> (16 - 12); int32_t pan = pan_pot + pan_cv; int32_t vol = vol_pot + vol_cv;