Hi everyone,
I've recently bought a SPH0645LM4H from Adafruit, and am running the SPH0645 hardware test example file (code below). I am using a teensy 4.1 and have the pins connected using jumper wires as follows:
SEL: GND
LRCL: 20
DOUT: 8
BCLK: 21
GND: GND
3V: 3.3V
These is the configuration from this post. When I run the file, this is the output I get:
Any ideas?
Code below:
I've recently bought a SPH0645LM4H from Adafruit, and am running the SPH0645 hardware test example file (code below). I am using a teensy 4.1 and have the pins connected using jumper wires as follows:
SEL: GND
LRCL: 20
DOUT: 8
BCLK: 21
GND: GND
3V: 3.3V
These is the configuration from this post. When I run the file, this is the output I get:
Any ideas?
Code below:
Code:
/* SPH0645 MEMS Microphone Test (Adafruit product #3421)
*
* Forum thread with connection details and other info:
* https://forum.pjrc.com/threads/60599?p=238070&viewfull=1#post238070
*/
#include <Audio.h>
// GUItool: begin automatically generated code
AudioInputI2S i2s1; //xy=180,111
AudioFilterStateVariable filter1; //xy=325,101
AudioAmplifier amp1; //xy=470,93
AudioAnalyzeFFT1024 fft1024_1; //xy=616,102
AudioConnection patchCord1(i2s1, 0, filter1, 0);
AudioConnection patchCord2(filter1, 2, amp1, 0);
AudioConnection patchCord3(amp1, fft1024_1);
// GUItool: end automatically generated code
void setup() {
AudioMemory(50);
filter1.frequency(30); // filter out DC & extremely low frequencies
amp1.gain(8.5); // amplify sign to useful range
}
void loop() {
if (fft1024_1.available()) {
// each time new FFT data is available
// print 20 bins to the Arduino Serial Monitor
Serial.print("FFT: ");
for (int i = 0; i < 20; i++) {
float n = fft1024_1.read(i);
if (n >= 0.001) {
Serial.print(n, 3);
Serial.print(" ");
} else {
Serial.print(" -- "); // don't print "0.000"
}
}
Serial.println();
}
}