WITB2

Dependencies:   mbed 4DGL-uLCD-SE PinDetect

Committer:
Nydrel
Date:
Thu Nov 29 18:37:00 2018 +0000
Revision:
5:ed52ac77cdf9
Parent:
0:5e90b8577fef
witb 2;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jd7142128 0:5e90b8577fef 1 #include "mbed.h"
jd7142128 0:5e90b8577fef 2 // new class to play a note on Speaker based on PwmOut class
jd7142128 0:5e90b8577fef 3 class Speaker
jd7142128 0:5e90b8577fef 4 {
jd7142128 0:5e90b8577fef 5 public:
jd7142128 0:5e90b8577fef 6 Speaker(PinName pin) : _pin(pin) {
jd7142128 0:5e90b8577fef 7 // _pin(pin) means pass pin to the Speaker Constructor
jd7142128 0:5e90b8577fef 8 }
jd7142128 0:5e90b8577fef 9 // class method to play a note based on PwmOut class
jd7142128 0:5e90b8577fef 10 void PlayNote(float frequency, float duration, float volume) {
jd7142128 0:5e90b8577fef 11 _pin.period(1.0/frequency);
jd7142128 0:5e90b8577fef 12 _pin = volume/2.0;
jd7142128 0:5e90b8577fef 13 wait(duration);
jd7142128 0:5e90b8577fef 14 _pin = 0.0;
jd7142128 0:5e90b8577fef 15 }
jd7142128 0:5e90b8577fef 16
jd7142128 0:5e90b8577fef 17 private:
jd7142128 0:5e90b8577fef 18 PwmOut _pin;
jd7142128 0:5e90b8577fef 19 };