Make noise with a piezo buzzer. Use a pwm pin.

Dependents:   GliderFuncTest1 DropTest

Fork of beep by Peter Drescher

Revision:
2:a34405c20cf5
Parent:
0:18e4a9c978ec
Child:
3:5a8242af60ba
diff -r ddccf0a4a414 -r a34405c20cf5 beep.c
--- a/beep.c	Tue Feb 01 19:08:44 2011 +0000
+++ b/beep.c	Tue Feb 01 19:17:44 2011 +0000
@@ -1,19 +1,49 @@
 #include "beep.h"
 #include "mbed.h"
 
+/** class to make sound with a buzzer, based on a PwmOut
+*   The class use a timeout to switch off the sound  - it is not blocking while making noise
+*
+* Example:
+* @code
+* // Beep with 1Khz for 0.5 seconds
+* #include "mbed.h"
+* #include "beep.h"
+* 
+* Beep buzzer(p21);
+* 
+* int main() {
+*       ...
+*   buzzer.beep(1000,0.5);    
+*       ...
+* }
+* @endcode
+*/
+
 using namespace mbed;
 // constructor
+ /** Create a Beep object connected to the specified PwmOut pin
+    *
+    * @param pin PwmOut pin to connect to 
+    */
+    
 Beep::Beep(PinName pin) : _pwm(pin) {
     _pwm.write(0.0);     // after creating it have to be off
 }
 
-// switch off
+ /** stop the beep instantaneous 
+    * usually not used 
+    */
 void Beep::nobeep() {
     _pwm.write(0.0);
 }
 
-
-// beep
+/** Beep with given frequency and duration.
+     *
+     * @param frequency - the frequency of the tone in Hz
+     * @param time - the duration of the tone in seconds
+     */
+     
 void Beep::beep(float freq, float time) {
 
     _pwm.period(1.0/freq);