Переглянути джерело

Remove volume pot and bias amplitudes for external audio amplifier. Top frequencies still need more bias.

Emil 3 роки тому
батько
коміт
1c2d7026ee
1 змінених файлів з 8 додано та 6 видалено
  1. 8 6
      adc_fft.c

+ 8 - 6
adc_fft.c

@@ -72,7 +72,7 @@ uint8_t cap_res[NSAMP];
 
 uint64_t lastColorChange;
 
-double soundVolume = 1;
+double soundVolume = 0.6;
 
 void setup();
 
@@ -152,7 +152,9 @@ int main() {
         for (int i = 0; i < NUM_PIXELS; i++) {
             //rgb color = hsv2rgb(359 - fmin(359, powerInLog[i]/200.0 * 359), 1, fmin(0.5, powerInLog[i]/100.0));
             //uint32_t value = ((uint32_t)(fmin(color.r, 1) * 255) << 8) | ((uint32_t)(fmin(color.g, 1) * 255) << 16) | (uint32_t)(fmin(color.b, 1) * 255);
-            float newPower = powerInLog[i] * pow(fmax(fmax(i, 100)-99, 1), 1.05); //frequencyAmplitudeBias for top 50 pixels
+            float newPower = powerInLog[i] * pow(1.04, fmax(fmax(i, 50)-49, 1)); //frequencyAmplitudeBias for top 100 pixels (1.03^x)
+            //float newPower = powerInLog[i] * pow(fmax(fmax(i, 100)-99, 1), 1.03); //frequencyAmplitudeBias for top 50 pixels (x^1.05)
+            newPower *= pow(fmax(fmax(i, 100)-99, 1), 1.03);
             float power = newPower;
             if (newPower < powerBuffer[i]) {
                 power = (newPower + powerBuffer[i])/2;
@@ -270,11 +272,11 @@ void startSample() {
 
             memcpy(cap_res, cap_buf, sizeof cap_res);
         }
-        adc_select_input(1);
-        uint16_t volume = adc_read();
-        soundVolume = fmax(volume / 2048.0 - 0.2, 0);
+        //adc_select_input(1);
+        //uint16_t volume = adc_read();
+        //soundVolume = fmax(volume / 2048.0 - 0.2, 0);
         //printf("Volume = %f, adc value = %d\n", soundVolume, volume);
-        sleep_us(100);
+        //sleep_us(100);
     }
 }