for DigitalOut toggling, Class "ticker" used.
Diff: ToggleDigitalOut.cpp
- Revision:
- 0:d4dad8ffa192
diff -r 000000000000 -r d4dad8ffa192 ToggleDigitalOut.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ToggleDigitalOut.cpp Wed May 15 14:59:36 2013 +0000 @@ -0,0 +1,24 @@ +#include "mbed.h" +#include "ToggleDigitalOut.h" + +ToggleDigitalOut :: ToggleDigitalOut(PinName pin) : DigitalOut(pin){ + ticker = 0; +} +ToggleDigitalOut :: ~ToggleDigitalOut(){ + stopToggling(); +} +void ToggleDigitalOut :: toggle(void){ + write(!read()); +} +void ToggleDigitalOut :: toggling(float span){ + stopToggling(); + ticker = new Ticker(); + ticker->attach(this,&ToggleDigitalOut::toggle,span); +} +void ToggleDigitalOut :: stopToggling(void){ + if(ticker){ + ticker->detach(); + delete ticker; + } + ticker = 0; +}