Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const int sampleWindow = 50;+
- unsigned int sample;
- void setup()
- {
- Serial.begin(9600);
- }
- void loop()
- {
- unsigned long startMillis= millis();
- unsigned int peakToPeak = 0;
- unsigned int signalMax = 0;
- unsigned int signalMin = 1024;
- // collect data for 50 mS
- while (millis() - startMillis < sampleWindow)
- {
- sample = analogRead(0);
- if (sample < 1024)
- {
- if (sample > signalMax)
- {
- signalMax = sample;
- }
- else if (sample < signalMin)
- {
- signalMin = sample;
- }
- }
- }
- peakToPeak = signalMax - signalMin;
- double volts = ((peakToPeak * 5.0) /1024);
- double decibel = 20*log(volts/0.005012);
- Serial.print("zvuk_u_decibelima:");
- Serial.print(decibel-20);
- Serial.print(",");
- Serial.print("zvuk_u_Voltima:");
- Serial.println(volts);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement