A debouncing InterruptIn wrapper
ButtonIn.h
- Committer:
- evwijk
- Date:
- 2012-02-07
- Revision:
- 1:e806603f0088
- Parent:
- 0:2e999fcd4c7b
- Child:
- 2:c353357a97e4
File content as of revision 1:e806603f0088:
#include "mbed.h" #ifndef _ButtonIn_ #define _ButtonIn_ class ButtonInCallbackInstance; class ButtonIn { private: InterruptIn _button; Timeout _buttonDownTimeout; volatile bool _buttonCanPress; void (*_callback)(void); ButtonInCallbackInstance *_callbackInstance; void (ButtonInCallbackInstance::*_callbackMethod)(void); void click(); void call(); void reset(); public: ButtonIn(PinName buttonPin); void attach(void (*method)(void) = 0); template<class T> void attach(T* instance, void (T::*method)(void)); }; #endif