PURS ZI 009
Revision 0:1843b5f93694, committed 2016-09-07
- Comitter:
- tbjazic
- Date:
- Wed Sep 07 15:46:01 2016 +0000
- Commit message:
- initial
Changed in this revision
Beepaj.cpp | Show annotated file Show diff for this revision Revisions of this file |
Beepaj.h | Show annotated file Show diff for this revision Revisions of this file |
diff -r 000000000000 -r 1843b5f93694 Beepaj.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Beepaj.cpp Wed Sep 07 15:46:01 2016 +0000 @@ -0,0 +1,32 @@ +#include "mbed.h" +#include "Beepaj.h" + +Beepaj::Beepaj(PinName pinTipkala, PinName pinZvucnika) : pokreni(pinTipkala), zvucnik(pinZvucnika) { + pokreni.rise(this, &Beepaj::generirajSignal); + debounce.start(); + zvucnik = 0; + zvucnik.period(1.0f/1e3); +} + +void Beepaj::generirajSignal() { + if (debounce.read_ms() > 20) { + ukljuciBeep(); + ticker.attach(this, &Beepaj::ukljuciBeep, 1); + vrijemeSignala.attach(this, &Beepaj::iskljuciSignal, 4.5); + debounce.reset(); + } +} + +void Beepaj::ukljuciBeep() { + zvucnik = 0.5; + vrijemeBeepa.attach(this, &Beepaj::iskljuciBeep, 0.5); +} + +void Beepaj::iskljuciBeep() { + zvucnik = 0; +} + +void Beepaj::iskljuciSignal() { + zvucnik = 0; + ticker.detach(); +} \ No newline at end of file
diff -r 000000000000 -r 1843b5f93694 Beepaj.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Beepaj.h Wed Sep 07 15:46:01 2016 +0000 @@ -0,0 +1,21 @@ +#ifndef BEEPAJ_H +#define BEEPAJ_H + +#include "mbed.h" + +class Beepaj { + public: + Beepaj(PinName pinTipkala, PinName pinZvucnika); + private: + InterruptIn pokreni; + PwmOut zvucnik; + Timer debounce; + Timeout vrijemeBeepa, vrijemeSignala; + Ticker ticker; + void ukljuciBeep(); + void iskljuciBeep(); + void generirajSignal(); + void iskljuciSignal(); +}; + +#endif \ No newline at end of file