Emine Acar / Mbed 2 deprecated Sound_Level_Meter1

Dependencies:   mbed PeripheralNames

Committer:
emineacar
Date:
Sat Dec 07 18:09:52 2019 +0000
Revision:
0:1f53ece35c14
deneme1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
emineacar 0:1f53ece35c14 1 #include "mbed.h"
emineacar 0:1f53ece35c14 2 #include"PeripheralNames.h"
emineacar 0:1f53ece35c14 3 #include"PeripheralPins.h"
emineacar 0:1f53ece35c14 4 #include"PinNames.h"
emineacar 0:1f53ece35c14 5
emineacar 0:1f53ece35c14 6 Serial serial(PA_2, PA_3,9600);
emineacar 0:1f53ece35c14 7 AnalogIn Sound(PB_0);
emineacar 0:1f53ece35c14 8 Timer tim;
emineacar 0:1f53ece35c14 9 // Clear the screen //
emineacar 0:1f53ece35c14 10 void clrscr()
emineacar 0:1f53ece35c14 11 {
emineacar 0:1f53ece35c14 12 char clrscr[] = {0x1B, '[', '2' , 'J',0};
emineacar 0:1f53ece35c14 13 serial.printf(clrscr);
emineacar 0:1f53ece35c14 14
emineacar 0:1f53ece35c14 15 }
emineacar 0:1f53ece35c14 16 // // Goto specified line and column //
emineacar 0:1f53ece35c14 17 void gotoscr(int line, int column)
emineacar 0:1f53ece35c14 18 { char scr[] = {0x1B, '[', 0x00, ';' ,0x00, 'H', 0};
emineacar 0:1f53ece35c14 19 scr[2] = line;
emineacar 0:1f53ece35c14 20 scr[4] = column;
emineacar 0:1f53ece35c14 21 serial.printf(scr);
emineacar 0:1f53ece35c14 22 }
emineacar 0:1f53ece35c14 23
emineacar 0:1f53ece35c14 24 int main() {
emineacar 0:1f53ece35c14 25 double mV;
emineacar 0:1f53ece35c14 26 float SMax = 0,Peak,SMin = 4096;
emineacar 0:1f53ece35c14 27 // // Read the peak-topeak output voltage of the audio amplifier,
emineacar 0:1f53ece35c14 28 // then display the voltage on the PC screen //
emineacar 0:1f53ece35c14 29 while(1) // Do forever
emineacar 0:1f53ece35c14 30 {
emineacar 0:1f53ece35c14 31 tim.reset(); // Reset Timer
emineacar 0:1f53ece35c14 32 tim.start(); // Start Timer
emineacar 0:1f53ece35c14 33 SMax = 0.0;
emineacar 0:1f53ece35c14 34 SMin = 3000.0;
emineacar 0:1f53ece35c14 35 while(tim.read_ms() < 50) // Do for 50ms
emineacar 0:1f53ece35c14 36 {
emineacar 0:1f53ece35c14 37 mV = 3000.0f * Sound.read(); // In mV
emineacar 0:1f53ece35c14 38 if(mV > SMax) // Find Max
emineacar 0:1f53ece35c14 39 SMax = mV;
emineacar 0:1f53ece35c14 40 else if(mV < SMin) // Find Min
emineacar 0:1f53ece35c14 41 SMin = mV;
emineacar 0:1f53ece35c14 42 }
emineacar 0:1f53ece35c14 43 Peak = SMax - SMin; // Peak-to-peak
emineacar 0:1f53ece35c14 44 tim.stop(); // Stop Timer
emineacar 0:1f53ece35c14 45 clrscr(); // Clear screen
emineacar 0:1f53ece35c14 46 gotoscr('4', '0'); // Line 4, col 0
emineacar 0:1f53ece35c14 47 serial.printf("Sound Level = %5.2f", Peak); // Display
emineacar 0:1f53ece35c14 48 // Wait 1 second
emineacar 0:1f53ece35c14 49
emineacar 0:1f53ece35c14 50 }
emineacar 0:1f53ece35c14 51
emineacar 0:1f53ece35c14 52 }