Bust-a-Beat

Dependencies:   mbed wave_player mbed-rtos 4DGL-uLCD-SE SDFileSystem PinDetect

Committer:
javenho14
Date:
Wed Apr 27 01:34:47 2022 +0000
Revision:
2:d4fbe8a6302e
Init

Who changed what in which revision?

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