Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: TextLCD mbed MMA8451Q TSI
Speaker.h@17:01fe47dda43b, 2015-10-26 (annotated)
- Committer:
- mfurlanetto
- Date:
- Mon Oct 26 14:38:00 2015 +0000
- Branch:
- mono
- Revision:
- 17:01fe47dda43b
- Parent:
- 10:6e18b220e10c
risolto bug di visualizzazione.
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| mfurlanetto | 6:459ddd3079fa | 1 | #include "mbed.h" |
| mfurlanetto | 8:60231840370f | 2 | |
| mfurlanetto | 8:60231840370f | 3 | #ifndef SPEAKER |
| mfurlanetto | 8:60231840370f | 4 | #define SPEAKER |
| mfurlanetto | 6:459ddd3079fa | 5 | // new class to play a note on Speaker based on PwmOut class |
| mfurlanetto | 6:459ddd3079fa | 6 | // based on zchen311 implementation |
| mfurlanetto | 6:459ddd3079fa | 7 | // http://mbed.org/users/zchen311/code/Speaker/ |
| mfurlanetto | 6:459ddd3079fa | 8 | class Speaker |
| mfurlanetto | 6:459ddd3079fa | 9 | { |
| mfurlanetto | 6:459ddd3079fa | 10 | public: |
| mfurlanetto | 6:459ddd3079fa | 11 | Speaker(PinName pin) : _pin(pin) { |
| mfurlanetto | 6:459ddd3079fa | 12 | _volume=0.2; |
| mfurlanetto | 6:459ddd3079fa | 13 | } |
| mfurlanetto | 6:459ddd3079fa | 14 | // class method to play a note based on PwmOut class |
| mfurlanetto | 10:6e18b220e10c | 15 | void changeFrequency(double newNote) { |
| mfurlanetto | 10:6e18b220e10c | 16 | _pin.period(1.0/newNote); |
| mfurlanetto | 6:459ddd3079fa | 17 | _pin = _volume/2.0; |
| mfurlanetto | 6:459ddd3079fa | 18 | } |
| mfurlanetto | 10:6e18b220e10c | 19 | |
| mfurlanetto | 10:6e18b220e10c | 20 | void stop(){ |
| mfurlanetto | 10:6e18b220e10c | 21 | _pin=1; |
| mfurlanetto | 10:6e18b220e10c | 22 | _pin.period(0); |
| mfurlanetto | 6:459ddd3079fa | 23 | } |
| mfurlanetto | 10:6e18b220e10c | 24 | |
| mfurlanetto | 6:459ddd3079fa | 25 | float* getVolumeBuffer(){ |
| mfurlanetto | 6:459ddd3079fa | 26 | return &_volume; |
| mfurlanetto | 6:459ddd3079fa | 27 | } |
| mfurlanetto | 6:459ddd3079fa | 28 | private: |
| mfurlanetto | 6:459ddd3079fa | 29 | PwmOut _pin; |
| mfurlanetto | 6:459ddd3079fa | 30 | float _volume; |
| mfurlanetto | 8:60231840370f | 31 | }; |
| mfurlanetto | 8:60231840370f | 32 | |
| mfurlanetto | 8:60231840370f | 33 | #endif |
