I created an audio recording system in LABVIEW. I bought an output-receiving microphone with frequencies 20HZ-20kHZ.
When I play a frequency above 100HZ the software writes it accordingly. But when I play a frequency below 100 Hz the software doubles it by 3.
For example, when I played a frequency of 60Hz the software recorded it as 180HZ.
First I would like to know why.
And secondly I would love a solution so that the frequency that is heard will be displayed as it is.
if you used tone detection (td) and provide only a short slice of data (<=10ms, maybe <20ms due to window of fft in the td vi), the td vi will detect the next highest frequency. Usually the 3 harmonic created by your setup 😉
take a look at the FFT of a window at least 20 periodes of your signal. Do you find THD?