Mic arduino files
This commit is contained in:
41
arduino/Mic/Mic.ino
Normal file
41
arduino/Mic/Mic.ino
Normal file
@@ -0,0 +1,41 @@
|
||||
const int sampleWindow = 50; // Sample window width in mS (50 mS = 20Hz)
|
||||
int const AMP_PIN = 7; // Preamp output pin connected to A0
|
||||
unsigned int sample;
|
||||
|
||||
void setup()
|
||||
{
|
||||
Serial.begin(9600);
|
||||
}
|
||||
|
||||
void loop()
|
||||
{
|
||||
unsigned long startMillis = millis(); // Start of sample window
|
||||
unsigned int peakToPeak = 0; // peak-to-peak level
|
||||
|
||||
unsigned int signalMax = 0;
|
||||
unsigned int signalMin = 1024;
|
||||
|
||||
// collect data for 50 mS and then plot data
|
||||
while (millis() - startMillis < sampleWindow)
|
||||
{
|
||||
sample = analogRead(AMP_PIN);
|
||||
if (sample < 1024) // toss out spurious readings
|
||||
{
|
||||
if (sample > signalMax)
|
||||
{
|
||||
signalMax = sample; // save just the max levels
|
||||
}
|
||||
else if (sample < signalMin)
|
||||
{
|
||||
signalMin = sample; // save just the min levels
|
||||
}
|
||||
}
|
||||
}
|
||||
peakToPeak = signalMax - signalMin; // max - min = peak-peak amplitude
|
||||
if (peakToPeak == 4294966272){
|
||||
peakToPeak = 0;
|
||||
}
|
||||
Serial.println(peakToPeak);
|
||||
//double volts = (peakToPeak * 5.0) / 1024; // convert to volts
|
||||
//Serial.println(volts);
|
||||
}
|
Reference in New Issue
Block a user