buzzer
Diff: Buzzer.cpp
- Revision:
- 0:c5a5dc015c10
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Buzzer.cpp Sun Dec 22 11:13:24 2019 +0000 @@ -0,0 +1,45 @@ +#include "Buzzer.h" + +Buzzer::Buzzer(PinName pin) +{ + _buzzer = new DigitalOut(pin); + //_ticker = new Ticker(); +} + +Buzzer::Buzzer(PinName pin, float period) +{ + _buzzer = new DigitalOut(pin); + _period = period; + //_ticker = new Ticker(); +} + +Buzzer::~Buzzer() +{ + delete _buzzer; +} + +void Buzzer::definirPeriode(float period) +{ + _period = period; +} + +void Buzzer::changerPeriode(float period) +{ + definirPeriode(period); + demarrer(); +} + +void Buzzer::demarrer() +{ + _ticker.attach(callback(this, &Buzzer::bipper), _period); +} + +void Buzzer::arreter() +{ + _ticker.detach(); +} + +void Buzzer::bipper() +{ + *_buzzer = !*_buzzer; +} \ No newline at end of file