TVZ2022 / Pavetic_BuzzerLib
Committer:
dpavetic
Date:
Sun Nov 27 10:33:00 2022 +0000
Revision:
0:f867aece57de
Initial lib version

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dpavetic 0:f867aece57de 1 #include "Buzzer.h"
dpavetic 0:f867aece57de 2
dpavetic 0:f867aece57de 3 using namespace mbed;
dpavetic 0:f867aece57de 4
dpavetic 0:f867aece57de 5 Buzzer::Buzzer(PinName pin) : _pwm(pin) { _pwm.write(0.0); }
dpavetic 0:f867aece57de 6
dpavetic 0:f867aece57de 7 void Buzzer::silence() { _pwm.write(0.0); }
dpavetic 0:f867aece57de 8 void empty() {
dpavetic 0:f867aece57de 9 }
dpavetic 0:f867aece57de 10
dpavetic 0:f867aece57de 11 /**
dpavetic 0:f867aece57de 12 * Buzzer with given frequency and rithm.
dpavetic 0:f867aece57de 13 *
dpavetic 0:f867aece57de 14 * @param frequency - the frequency of the tone in Hz
dpavetic 0:f867aece57de 15 * @param rithm - rithm of the song
dpavetic 0:f867aece57de 16 */
dpavetic 0:f867aece57de 17 void Buzzer::buzz(float freq, float rithm) {
dpavetic 0:f867aece57de 18 _pwm.period(1.0 / freq);
dpavetic 0:f867aece57de 19 _pwm.write(0.5f);
dpavetic 0:f867aece57de 20 ThisThread::sleep_for(Kernel::Clock::duration_u32((int)(rithm * 500)));
dpavetic 0:f867aece57de 21 }