Daniel Nguyen

Dependencies:   4DGL-uLCD-SE mbed

Committer:
dnguyen314
Date:
Thu Nov 02 19:15:07 2017 +0000
Revision:
0:7d7f6032c719
hi

Who changed what in which revision?

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