Library thread Blink Led or other processes use RTOS
Fork of BlinkLed by
Example
https://developer.mbed.org/users/AVELARDEV/code/LedsThreading/
Diff: BlinkLed.h
- Revision:
- 0:a55a3351317d
- Child:
- 2:1d0c09c1a8b4
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/BlinkLed.h Sat Sep 01 04:02:02 2012 +0000 @@ -0,0 +1,62 @@ +/* BlinkLed.h */ +#ifndef BLINKLED_H_ +#define BLINKLED_H_ + +#include "mbed.h" +#include "rtos.h" + +/** LED which blinks automatically with RTOS +*/ +class BlinkLed +{ +public: + /** Constructor + */ + BlinkLed(PinName pin, float dutyChangeStep); + + /** Destructor + */ + ~BlinkLed(); + + /** Start biinking + */ + void startBlink(); + + /** Finish biinking + */ + void finishBlink(); + +private: + /** Copy constructor + * Disable because it is only declaration + */ + BlinkLed(const BlinkLed&); + + /** Copy assignment operators + * Disable because it is only declaration + */ + BlinkLed& operator=(const BlinkLed&); + + /** Function for blinking + * This function will be bind to new thread + */ + static void blink(void const *argument); + + /** Target Led + */ + PwmOut led; + + /** Duty ratio step of changing every 20ms + */ + float dutyChangeStep; + + /** Flag of pause + */ + bool pause; + + /** Pointer to thread for blinking + */ + Thread* thread; +}; + +#endif /* BLINKLED_H_ */