Library thread Blink Led or other processes use RTOS

Dependents:   LedsThreading

Fork of BlinkLed by Satoshi Togawa

Example

https://developer.mbed.org/users/AVELARDEV/code/LedsThreading/

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_ */