Asteroid

Dependencies:   4DGL-uLCD-SE PinDetect mbed

Committer:
Philipjp
Date:
Tue Nov 14 18:03:31 2017 +0000
Revision:
0:73375f76583c
Asteroid

Who changed what in which revision?

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