Simple tool for PWM piezo speaker
Piezo.h@0:39de01daa2de, 2016-10-01 (annotated)
- Committer:
- TeaPack_CZ
- Date:
- Sat Oct 01 19:09:55 2016 +0000
- Revision:
- 0:39de01daa2de
- Child:
- 1:220d39711dc6
Initial commit
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
TeaPack_CZ | 0:39de01daa2de | 1 | #ifndef PIEZO |
TeaPack_CZ | 0:39de01daa2de | 2 | #define PIEZO |
TeaPack_CZ | 0:39de01daa2de | 3 | |
TeaPack_CZ | 0:39de01daa2de | 4 | #include "mbed.h" |
TeaPack_CZ | 0:39de01daa2de | 5 | |
TeaPack_CZ | 0:39de01daa2de | 6 | class Piezo{ |
TeaPack_CZ | 0:39de01daa2de | 7 | |
TeaPack_CZ | 0:39de01daa2de | 8 | public: |
TeaPack_CZ | 0:39de01daa2de | 9 | Piezo(PinName Pwmout); |
TeaPack_CZ | 0:39de01daa2de | 10 | |
TeaPack_CZ | 0:39de01daa2de | 11 | void play(float, int); |
TeaPack_CZ | 0:39de01daa2de | 12 | void playAsync(float, int); |
TeaPack_CZ | 0:39de01daa2de | 13 | |
TeaPack_CZ | 0:39de01daa2de | 14 | //void setFrequency(int Hz); |
TeaPack_CZ | 0:39de01daa2de | 15 | //void setDuration(int time_ms); |
TeaPack_CZ | 0:39de01daa2de | 16 | void stop(); |
TeaPack_CZ | 0:39de01daa2de | 17 | |
TeaPack_CZ | 0:39de01daa2de | 18 | private: |
TeaPack_CZ | 0:39de01daa2de | 19 | PwmOut _pwm; |
TeaPack_CZ | 0:39de01daa2de | 20 | Ticker _timer; |
TeaPack_CZ | 0:39de01daa2de | 21 | Ticker _updater; |
TeaPack_CZ | 0:39de01daa2de | 22 | |
TeaPack_CZ | 0:39de01daa2de | 23 | float Period; |
TeaPack_CZ | 0:39de01daa2de | 24 | |
TeaPack_CZ | 0:39de01daa2de | 25 | float min_freq; |
TeaPack_CZ | 0:39de01daa2de | 26 | float max_freq; |
TeaPack_CZ | 0:39de01daa2de | 27 | |
TeaPack_CZ | 0:39de01daa2de | 28 | int Duration; |
TeaPack_CZ | 0:39de01daa2de | 29 | void autoStop(); |
TeaPack_CZ | 0:39de01daa2de | 30 | |
TeaPack_CZ | 0:39de01daa2de | 31 | float stepMultiplier; |
TeaPack_CZ | 0:39de01daa2de | 32 | |
TeaPack_CZ | 0:39de01daa2de | 33 | }; |
TeaPack_CZ | 0:39de01daa2de | 34 | |
TeaPack_CZ | 0:39de01daa2de | 35 | #endif |