Library to control Electret Microphone Amplifier - MAX9814 from adafruit. Allows: To sample analogue voltage to transform into rough sound level. Transfer sound level to visual indicator, volume bar such as 4 LEDs on LPC11U24.

Dependents:   MAX9814_LED_Sound_Indicator

Committer:
andcor02
Date:
Sun Nov 02 21:58:31 2014 +0000
Revision:
3:1a773fb0d7e7
Parent:
2:af2a48ef297c
REV 1.01

Who changed what in which revision?

UserRevisionLine numberNew contents of line
andcor02 1:cf181e6a2ead 1 /*
andcor02 1:cf181e6a2ead 2 MAX9814.h - MAX9814 sensor library
andcor02 1:cf181e6a2ead 3 Developed by Andrea Corrado
andcor02 1:cf181e6a2ead 4 */
andcor02 1:cf181e6a2ead 5
andcor02 3:1a773fb0d7e7 6 /*
andcor02 3:1a773fb0d7e7 7 Example 'main.cpp'
andcor02 2:af2a48ef297c 8
andcor02 3:1a773fb0d7e7 9 #include "mbed.h"
andcor02 3:1a773fb0d7e7 10 #include "MAX9814.h"
andcor02 3:1a773fb0d7e7 11 Serial pc (USBTX, USBRX);
andcor02 1:cf181e6a2ead 12
andcor02 1:cf181e6a2ead 13
andcor02 3:1a773fb0d7e7 14 MAX9814 mic(p20);
andcor02 3:1a773fb0d7e7 15
andcor02 3:1a773fb0d7e7 16 int main()
andcor02 3:1a773fb0d7e7 17 {
andcor02 3:1a773fb0d7e7 18 while (1) {
andcor02 3:1a773fb0d7e7 19 mic.volume_indicator();
andcor02 3:1a773fb0d7e7 20 pc.printf("\n\r Level is %f", mic.sound_level());
andcor02 3:1a773fb0d7e7 21 }
andcor02 3:1a773fb0d7e7 22 }
andcor02 3:1a773fb0d7e7 23
andcor02 3:1a773fb0d7e7 24 */
andcor02 1:cf181e6a2ead 25
andcor02 0:49d2ee7cb020 26 #ifndef MBED_MIC_H
andcor02 0:49d2ee7cb020 27 #define MBED_MIC_H
andcor02 0:49d2ee7cb020 28
andcor02 0:49d2ee7cb020 29 #include "mbed.h"
andcor02 0:49d2ee7cb020 30
andcor02 0:49d2ee7cb020 31 class MAX9814 {
andcor02 0:49d2ee7cb020 32
andcor02 0:49d2ee7cb020 33 public:
andcor02 0:49d2ee7cb020 34
andcor02 0:49d2ee7cb020 35 MAX9814(PinName pin);
andcor02 0:49d2ee7cb020 36
andcor02 0:49d2ee7cb020 37 void led_array(float x);
andcor02 0:49d2ee7cb020 38
andcor02 0:49d2ee7cb020 39 void volume_indicator();
andcor02 0:49d2ee7cb020 40
andcor02 0:49d2ee7cb020 41 float calibration();
andcor02 0:49d2ee7cb020 42
andcor02 0:49d2ee7cb020 43 float sound_level();
andcor02 0:49d2ee7cb020 44
andcor02 0:49d2ee7cb020 45 protected:
andcor02 0:49d2ee7cb020 46 AnalogIn _pin;
andcor02 0:49d2ee7cb020 47 BusOut _led1, _led2, _led3, _led4;
andcor02 0:49d2ee7cb020 48 float _value,_sum,_average;
andcor02 0:49d2ee7cb020 49 int _count;
andcor02 0:49d2ee7cb020 50 float _sample;
andcor02 0:49d2ee7cb020 51 Timer _t,_t1;
andcor02 0:49d2ee7cb020 52 };
andcor02 0:49d2ee7cb020 53
andcor02 0:49d2ee7cb020 54 #endif