mbed Sensor node for Instrumented Booth over ETH.

Dependencies:   EthernetInterface-1 MaxbotixDriver Presence HTU21D_TEMP_HUMID_SENSOR_SAMPLE Resources SHARPIR mbed-rtos mbed-src WDT_K64F nsdl_lib

Fork of Trenton_Switch_LPC1768_ETH by Demo Team

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers MAX9814.cpp Source File

MAX9814.cpp

00001 /*
00002     MAX9814.cpp - MAX9814 sensor library
00003     Developed by Andrea Corrado   
00004 */
00005 
00006 #include "mbed.h"
00007 #include "MAX9814.h"
00008 
00009 MAX9814::MAX9814(PinName pin): _pin(pin) { //, _led1(LED1), _led2(LED2), _led3(LED3) {
00010     
00011 }
00012 
00013 
00014 
00015 float MAX9814::sound_level() {
00016 
00017     _t.start();
00018     float peakToPeak=0, signalMax=0, signalMin=1024;
00019 
00020     while (_t.read_ms()<50) {
00021         _sample=_pin.read();
00022 
00023         if (_sample<1024) {
00024             if (_sample>signalMax)
00025                 signalMax=_sample;
00026 
00027             else if (_sample<signalMin)
00028                 signalMin=_sample;
00029         }
00030     }
00031     _t.stop();
00032     _t.reset();
00033     peakToPeak=signalMax-signalMin;
00034     _value= (peakToPeak*3.3);
00035     _value = floor(_value * 100) / 100;
00036 
00037     return _value;
00038 }