			 int var = 0;
			 int n = 0;

			 GPIO_ToggleBits(GPIOD, GPIO_Pin_2);
			 GPIO_SetBits(GPIOD, GPIO_Pin_6);

			 if (bufferSwitch == 2) {


				 // undersampling 1
				 /*
				 filterSelect = 48;
				 DSPrunFilter(&LP11_400Hz, &AdcBuffer1[0], &filterBuffer[0]);
				 n = 0;
				 for (var = carry2KHz; var < LENGTH_OF_SAMPLES; var+=24) {
					 underSamplingBuffer2kHz[n] = filterBuffer[var];
					 n++;
				}
				 carry2KHz = var - LENGTH_OF_SAMPLES + 1;
				 */

/*
				 filterSelect = 48;
				 DSPrunFilter(&LP11_400Hz, &AdcBuffer1[0], &filterBuffer[0]);
				 //arm_iir_lattice_f32( &LP11_400Hz, &AdcBuffer1[0], &filterBuffer[0], 41);
				 n = 0;
				 for (var = 0; var < 41; var++) {
					 underSamplingBuffer2kHz[n] = filterBuffer[var*24];
					 n++;
				}
				 //carry2KHz = var - LENGTH_OF_SAMPLES + 1;

				 n = 41;

				 filterSelect = 2;

				 // underSamplingBuffer2kHz[42] = 0.002;
				 // n = 43;

				 DSPrunFilter(&PP1U_25_40Hz, &underSamplingBuffer2kHz[0], &filterBuffer2KHz[0]);
				 arm_abs_f32( &filterBuffer2KHz[0], &underSamplingBuffer2kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer2kHzTemp[0], timeWeightingType, &previousWeightedValue[0] , n, SAMPLING_FREQUENCY_2KHZ);
*/
/*
				 DSPrunFilter(&PP2U_50_80Hz, &underSamplingBuffer2kHz[0], &filterBuffer2KHz[0]);
				 arm_abs_f32( &filterBuffer2KHz[0], &underSamplingBuffer2kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer2kHzTemp[0], timeWeightingType, &previousWeightedValue[1] , n, SAMPLING_FREQUENCY_2KHZ);

				 DSPrunFilter(&PP3U_100_160Hz, &underSamplingBuffer2kHz[0], &filterBuffer2KHz[0]);
				 arm_abs_f32( &filterBuffer2KHz[0], &underSamplingBuffer2kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer2kHzTemp[0], timeWeightingType, &previousWeightedValue[2] , n, SAMPLING_FREQUENCY_2KHZ);

				 DSPrunFilter(&PP4U_200_315Hz, &underSamplingBuffer2kHz[0], &filterBuffer2KHz[0]);
				 arm_abs_f32( &filterBuffer2KHz[0], &underSamplingBuffer2kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer2kHzTemp[0], timeWeightingType, &previousWeightedValue[3] , n, SAMPLING_FREQUENCY_2KHZ);
*/
/*
					//int var;
					for (var = 0; var < LENGTH_OF_SAMPLES_2KHZ; ++var) {
						printf2("%f\r\n",underSamplingBuffer2kHz[var]);
					}


					for (var = 0; var < LENGTH_OF_SAMPLES_2KHZ; ++var) {
						printf2("%f\r\n",filterBuffer2KHz[var]);
					}
*/


				 // undersampling 2
				 filterSelect = 48;

				 DSPrunFilter(&LP12_3000Hz, &AdcBuffer1[0], &filterBuffer[0]);
				 n = 0;
				 for (var = 0; var < LENGTH_OF_SAMPLES; var+=4) {
					 underSamplingBuffer12kHz[n] = filterBuffer[var];
					 underSamplingBuffer12kHz_2[n] = filterBuffer[var];
					 n++;
				}
				 carry12KHz = var - LENGTH_OF_SAMPLES + 1;
				 //n = 251;
				 filterSelect = 12;

				 DSPrunFilter(&PP1U_25_40Hz, &underSamplingBuffer12kHz[0], &filterBuffer12KHz[0]);
				 arm_abs_f32( &filterBuffer12KHz[0], &underSamplingBuffer12kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer12kHzTemp[0], timeWeightingType, &previousWeightedValue[0] , n, SAMPLING_FREQUENCY_12KHZ);

				 //DSPrunFilter(&PP2U_50_80Hz, &underSamplingBuffer12kHz[0], &filterBuffer12KHz[0]);
				 DSPrunFilter(&PP2U_50_80Hz, &underSamplingBuffer12kHz_2[0], &filterBuffer12KHz[0]);
				 arm_abs_f32( &filterBuffer12KHz[0], &underSamplingBuffer12kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer12kHzTemp[0], timeWeightingType, &previousWeightedValue[1] , n, SAMPLING_FREQUENCY_12KHZ);
				 //previousWeightedValue[1] = previousWeightedValue[1]/10;

				 //DSPrunFilter(&PP3U_100_160Hz, &underSamplingBuffer12kHz[0], &filterBuffer12KHz[0]);
				 DSPrunFilter(&PP3U_100_160Hz, &underSamplingBuffer12kHz_2[0], &filterBuffer12KHz[0]);
				 arm_abs_f32( &filterBuffer12KHz[0], &underSamplingBuffer12kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer12kHzTemp[0], timeWeightingType, &previousWeightedValue[2] , n, SAMPLING_FREQUENCY_12KHZ);
				 //previousWeightedValue[2] = previousWeightedValue[2]/1000;

				 DSPrunFilter(&PP4U_200_315Hz, &underSamplingBuffer12kHz[0], &filterBuffer12KHz[0]);
				 arm_abs_f32( &filterBuffer12KHz[0], &underSamplingBuffer12kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer12kHzTemp[0], timeWeightingType, &previousWeightedValue[3] , n, SAMPLING_FREQUENCY_12KHZ);

				 DSPrunFilter(&PP5U_400_630Hz, &underSamplingBuffer12kHz[0], &filterBuffer12KHz[0]);
				 arm_abs_f32( &filterBuffer12KHz[0], &underSamplingBuffer12kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer12kHzTemp[0], timeWeightingType, &previousWeightedValue[4] , n, SAMPLING_FREQUENCY_12KHZ);

				 DSPrunFilter(&PP6U_800_1250Hz, &underSamplingBuffer12kHz[0], &filterBuffer12KHz[0]);
				 arm_abs_f32( &filterBuffer12KHz[0], &underSamplingBuffer12kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer12kHzTemp[0], timeWeightingType, &previousWeightedValue[5] , n, SAMPLING_FREQUENCY_12KHZ);
/*
				 DSPrunFilter(&PP7U_1600_2500Hz, &underSamplingBuffer12kHz[0], &filterBuffer12KHz[0]);
				 arm_abs_f32( &filterBuffer12KHz[0], &underSamplingBuffer12kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer12kHzTemp[0], timeWeightingType, &previousWeightedValue[6] , n, SAMPLING_FREQUENCY_12KHZ);
*/
/*
					for (var = 0; var < LENGTH_OF_SAMPLES_12KHZ; ++var) {
						printf2("%f\r\n",underSamplingBuffer12kHz[var]);
					}


					for (var = 0; var < LENGTH_OF_SAMPLES_12KHZ; ++var) {
						printf2("%f\r\n",filterBuffer12KHz[var]);
					}

*/
/*
				 // full sampling rate
				  filterSelect = 48;

					 DSPrunFilter(&PP1_25_40Hz, &AdcBuffer1[0], &filterBuffer[0]);
					 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
					 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[0] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

					 DSPrunFilter(&PP2_50_80Hz, &AdcBuffer1[0], &filterBuffer[0]);
					 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
					 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[1] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

					 DSPrunFilter(&PP3_100_160Hz, &AdcBuffer1[0], &filterBuffer[0]);
					 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
					 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[2] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

					 DSPrunFilter(&PP4_200_315Hz, &AdcBuffer1[0], &filterBuffer[0]);
					 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
					 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[3] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

					 DSPrunFilter(&PP5_400_630Hz, &AdcBuffer1[0], &filterBuffer[0]);
					 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
					 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[4] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

					 DSPrunFilter(&PP6_800_1250Hz, &AdcBuffer1[0], &filterBuffer[0]);
					 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
					 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[5] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

					 DSPrunFilter(&PP7_1600_2500Hz, &AdcBuffer1[0], &filterBuffer[0]);
					 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
					 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[6] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);
*/
				 filterSelect = 48;
				 DSPrunFilter(&PP7_1600_2500Hz, &AdcBuffer1[0], &filterBuffer[0]);
				 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[6] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

				 DSPrunFilter(&PP8_3150_5000Hz, &AdcBuffer1[0], &filterBuffer[0]);
				 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[7] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

				 DSPrunFilter(&PP9_6300_10000Hz, &AdcBuffer1[0], &filterBuffer[0]);
				 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[8] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

				 DSPrunFilter(&PP10_12500_20000Hz, &AdcBuffer1[0], &filterBuffer[0]);
				 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[9] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);



/*
				int var;
				for (var = 0; var < LENGTH_OF_SAMPLES; ++var) {
					printf2("%f\r\n",AdcBuffer1[var]);
				}


				for (var = 0; var < LENGTH_OF_SAMPLES; ++var) {
					printf2("%f\r\n",filterBuffer[var]);
				}
*/
			}else{

/*
				 // undersampling 1
				filterSelect = 48;
				 DSPrunFilter(&LP11_400Hz, &AdcBuffer2[0], &filterBuffer[0]);
				 n = 0;
				 for (var = carry2KHz; var < LENGTH_OF_SAMPLES; var+=24) {
					 underSamplingBuffer2kHz[n] = filterBuffer[var];
					 n++;
				}
				 carry2KHz = var - LENGTH_OF_SAMPLES + 1;
*/

/*
				filterSelect = 48;
				 DSPrunFilter(&LP11_400Hz, &AdcBuffer2[0], &filterBuffer[0]);
				//arm_iir_lattice_f32( &LP11_400Hz, &AdcBuffer1[0], &filterBuffer[0], 41);
				 n = 0;
				 for (var = 0; var < 41; var++) {
					 underSamplingBuffer2kHz[n] = filterBuffer[var*24];
					 n++;
				}
				 //carry2KHz = var - LENGTH_OF_SAMPLES + 1;

				 n = 41;

				 filterSelect = 2;
*/
				 // underSamplingBuffer2kHz[42] = 0.002;
				 // n = 43;
/*
				 DSPrunFilter(&PP1_25_40Hz, &AdcBuffer2[0], &filterBuffer[0]);
				 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[0] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);
*/




/*
				 DSPrunFilter(&PP1U_25_40Hz, &underSamplingBuffer2kHz[0], &filterBuffer2KHz[0]);
				 arm_abs_f32( &filterBuffer2KHz[0], &underSamplingBuffer2kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer2kHzTemp[0], timeWeightingType, &previousWeightedValue[0] , n, SAMPLING_FREQUENCY_2KHZ);

				 DSPrunFilter(&PP2U_50_80Hz, &underSamplingBuffer2kHz[0], &filterBuffer2KHz[0]);
				 arm_abs_f32( &filterBuffer2KHz[0], &underSamplingBuffer2kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer2kHzTemp[0], timeWeightingType, &previousWeightedValue[1] , n, SAMPLING_FREQUENCY_2KHZ);

				 DSPrunFilter(&PP3U_100_160Hz, &underSamplingBuffer2kHz[0], &filterBuffer2KHz[0]);
				 arm_abs_f32( &filterBuffer2KHz[0], &underSamplingBuffer2kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer2kHzTemp[0], timeWeightingType, &previousWeightedValue[2] , n, SAMPLING_FREQUENCY_2KHZ);

				 DSPrunFilter(&PP4U_200_315Hz, &underSamplingBuffer2kHz[0], &filterBuffer2KHz[0]);
				 arm_abs_f32( &filterBuffer2KHz[0], &underSamplingBuffer2kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer2kHzTemp[0], timeWeightingType, &previousWeightedValue[3] , n, SAMPLING_FREQUENCY_2KHZ);

*/

/*
					//int var;
					for (var = 0; var < LENGTH_OF_SAMPLES_2KHZ; ++var) {
						printf2("%f\r\n",underSamplingBuffer2kHz[var]);
					}


					for (var = 0; var < LENGTH_OF_SAMPLES_2KHZ; ++var) {
						printf2("%f\r\n",filterBuffer2KHz[var]);
					}
*/




				 // undersampling 2
				filterSelect = 48;

				 DSPrunFilter(&LP12_3000Hz, &AdcBuffer2[0], &filterBuffer[0]);
				 n = 0;
				 for (var = 0; var < LENGTH_OF_SAMPLES; var+=4) {
					 underSamplingBuffer12kHz[n] = filterBuffer[var];
					 underSamplingBuffer12kHz_2[n] = filterBuffer[var];
					 n++;
				}
				 carry12KHz = var - LENGTH_OF_SAMPLES + 1;
				 //n = 251;
				 filterSelect = 12;

				 DSPrunFilter(&PP1U_25_40Hz, &underSamplingBuffer12kHz[0], &filterBuffer12KHz[0]);
				 arm_abs_f32( &filterBuffer12KHz[0], &underSamplingBuffer12kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer12kHzTemp[0], timeWeightingType, &previousWeightedValue[0] , n, SAMPLING_FREQUENCY_12KHZ);

				 //DSPrunFilter(&PP2U_50_80Hz, &underSamplingBuffer12kHz[0], &filterBuffer12KHz[0]);
				 DSPrunFilter(&PP2U_50_80Hz, &underSamplingBuffer12kHz_2[0], &filterBuffer12KHz[0]);
				 arm_abs_f32( &filterBuffer12KHz[0], &underSamplingBuffer12kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer12kHzTemp[0], timeWeightingType, &previousWeightedValue[1] , n, SAMPLING_FREQUENCY_12KHZ);
				 //previousWeightedValue[1] = previousWeightedValue[1]/10;

				 //DSPrunFilter(&PP3U_100_160Hz, &underSamplingBuffer12kHz[0], &filterBuffer12KHz[0]);
				 DSPrunFilter(&PP3U_100_160Hz, &underSamplingBuffer12kHz_2[0], &filterBuffer12KHz[0]);
				 arm_abs_f32( &filterBuffer12KHz[0], &underSamplingBuffer12kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer12kHzTemp[0], timeWeightingType, &previousWeightedValue[2] , n, SAMPLING_FREQUENCY_12KHZ);
				 //previousWeightedValue[2] = previousWeightedValue[2]/1000;

				 DSPrunFilter(&PP4U_200_315Hz, &underSamplingBuffer12kHz[0], &filterBuffer12KHz[0]);
				 arm_abs_f32( &filterBuffer12KHz[0], &underSamplingBuffer12kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer12kHzTemp[0], timeWeightingType, &previousWeightedValue[3] , n, SAMPLING_FREQUENCY_12KHZ);

				 DSPrunFilter(&PP5U_400_630Hz, &underSamplingBuffer12kHz[0], &filterBuffer12KHz[0]);
				 arm_abs_f32( &filterBuffer12KHz[0], &underSamplingBuffer12kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer12kHzTemp[0], timeWeightingType, &previousWeightedValue[4] , n, SAMPLING_FREQUENCY_12KHZ);

				 DSPrunFilter(&PP6U_800_1250Hz, &underSamplingBuffer12kHz[0], &filterBuffer12KHz[0]);
				 arm_abs_f32( &filterBuffer12KHz[0], &underSamplingBuffer12kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer12kHzTemp[0], timeWeightingType, &previousWeightedValue[5] , n, SAMPLING_FREQUENCY_12KHZ);
/*
				 DSPrunFilter(&PP7U_1600_2500Hz, &underSamplingBuffer12kHz[0], &filterBuffer12KHz[0]);
				 arm_abs_f32( &filterBuffer12KHz[0], &underSamplingBuffer12kHzTemp[0], n);
				 TimeWeighting(&underSamplingBuffer12kHzTemp[0], timeWeightingType, &previousWeightedValue[6] , n, SAMPLING_FREQUENCY_12KHZ);
*/
/*
					for (var = 0; var < LENGTH_OF_SAMPLES_12KHZ; ++var) {
						printf2("%f\r\n",underSamplingBuffer12kHz[var]);
					}


					for (var = 0; var < LENGTH_OF_SAMPLES_12KHZ; ++var) {
						printf2("%f\r\n",filterBuffer12KHz[var]);
					}

*/
/*
				 DSPrunFilter(&PP1_25_40Hz, &AdcBuffer2[0], &filterBuffer[0]);
				 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[0] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

				 DSPrunFilter(&PP2_50_80Hz, &AdcBuffer2[0], &filterBuffer[0]);
				 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[1] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

				 DSPrunFilter(&PP3_100_160Hz, &AdcBuffer2[0], &filterBuffer[0]);
				 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[2] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

				 DSPrunFilter(&PP4_200_315Hz, &AdcBuffer2[0], &filterBuffer[0]);
				 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[3] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

				 DSPrunFilter(&PP5_400_630Hz, &AdcBuffer2[0], &filterBuffer[0]);
				 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[4] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

				 DSPrunFilter(&PP6_800_1250Hz, &AdcBuffer2[0], &filterBuffer[0]);
				 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[5] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

				 DSPrunFilter(&PP7_1600_2500Hz, &AdcBuffer2[0], &filterBuffer[0]);
				 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[6] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);
*/




				 // full sampling rate
				 filterSelect = 48;
				DSPrunFilter(&PP7_1600_2500Hz, &AdcBuffer2[0], &filterBuffer[0]);
				arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[6] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

				 DSPrunFilter(&PP8_3150_5000Hz, &AdcBuffer2[0], &filterBuffer[0]);
				 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[7] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

				 DSPrunFilter(&PP9_6300_10000Hz, &AdcBuffer2[0], &filterBuffer[0]);
				 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[8] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);

				 DSPrunFilter(&PP10_12500_20000Hz, &AdcBuffer2[0], &filterBuffer[0]);
				 arm_abs_f32( &filterBuffer[0], &filterBufferTemp[0], LENGTH_OF_SAMPLES);
				 TimeWeighting(&filterBufferTemp[0], timeWeightingType, &previousWeightedValue[9] , LENGTH_OF_SAMPLES, SAMPLING_FREQUENCY_48KHZ);



/*
				int var;
				for (var = 0; var < LENGTH_OF_SAMPLES; ++var) {
					printf2("%f\r\n",AdcBuffer2[var]);
				}


				for (var = 0; var < LENGTH_OF_SAMPLES; ++var) {
					printf2("%f\r\n",filterBuffer[var]);
				}
*/

			}


			 SPLperBand();
			 SPLfinal();
			 printf2("%f\r\n",SPLfinalValue);

			 GPIO_ResetBits(GPIOD, GPIO_Pin_6);



			 bufferFullFlag = 0;
			 spiState = SPI_STATE_IDLE;