Toggle the LED of the LPC1768 using an electret microphone

Dependencies:   mbed

Committer:
faif
Date:
Sun Jun 04 11:50:37 2017 +0000
Revision:
0:01301c8c38ab
Toggle the LED of lpc1768 using an electret microphone

Who changed what in which revision?

UserRevisionLine numberNew contents of line
faif 0:01301c8c38ab 1 #include "mbed.h"
faif 0:01301c8c38ab 2 #include "sound_switch.h"
faif 0:01301c8c38ab 3
faif 0:01301c8c38ab 4 static const float THRESHOLD = 0.5;
faif 0:01301c8c38ab 5 const float BOUNCE_DELAY = 0.2;
faif 0:01301c8c38ab 6
faif 0:01301c8c38ab 7 enum
faif 0:01301c8c38ab 8 {
faif 0:01301c8c38ab 9 OFF = 0,
faif 0:01301c8c38ab 10 ON = 1
faif 0:01301c8c38ab 11 };
faif 0:01301c8c38ab 12
faif 0:01301c8c38ab 13 int main()
faif 0:01301c8c38ab 14 {
faif 0:01301c8c38ab 15 float i;
faif 0:01301c8c38ab 16 while (true)
faif 0:01301c8c38ab 17 {
faif 0:01301c8c38ab 18 i = mic;
faif 0:01301c8c38ab 19 if (i < THRESHOLD)
faif 0:01301c8c38ab 20 {
faif 0:01301c8c38ab 21 toggle_state(myled);
faif 0:01301c8c38ab 22 wait(BOUNCE_DELAY);
faif 0:01301c8c38ab 23 }
faif 0:01301c8c38ab 24 }
faif 0:01301c8c38ab 25 }
faif 0:01301c8c38ab 26
faif 0:01301c8c38ab 27 void toggle_state(DigitalOut& s)
faif 0:01301c8c38ab 28 {
faif 0:01301c8c38ab 29 switch(s)
faif 0:01301c8c38ab 30 {
faif 0:01301c8c38ab 31 case OFF:
faif 0:01301c8c38ab 32 s = ON;
faif 0:01301c8c38ab 33 break;
faif 0:01301c8c38ab 34 case ON:
faif 0:01301c8c38ab 35 s = OFF;
faif 0:01301c8c38ab 36 break;
faif 0:01301c8c38ab 37 }
faif 0:01301c8c38ab 38 }