Library thread Blink Led or other processes use RTOS
Fork of BlinkLed by
Example
https://developer.mbed.org/users/AVELARDEV/code/LedsThreading/
BlinkLed.h@3:f317d057edde, 2016-05-24 (annotated)
- Committer:
- AVELARDEV
- Date:
- Tue May 24 06:38:16 2016 +0000
- Revision:
- 3:f317d057edde
- Parent:
- 2:1d0c09c1a8b4
- Child:
- 4:3b34689ec230
Reduce BlinkLed library togayan
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
togayan | 0:a55a3351317d | 1 | /* BlinkLed.h */ |
togayan | 0:a55a3351317d | 2 | #ifndef BLINKLED_H_ |
togayan | 0:a55a3351317d | 3 | #define BLINKLED_H_ |
togayan | 0:a55a3351317d | 4 | |
togayan | 0:a55a3351317d | 5 | #include "mbed.h" |
togayan | 0:a55a3351317d | 6 | #include "rtos.h" |
togayan | 0:a55a3351317d | 7 | |
togayan | 0:a55a3351317d | 8 | /** LED which blinks automatically with RTOS |
togayan | 0:a55a3351317d | 9 | */ |
togayan | 0:a55a3351317d | 10 | class BlinkLed |
togayan | 0:a55a3351317d | 11 | { |
togayan | 0:a55a3351317d | 12 | public: |
togayan | 0:a55a3351317d | 13 | /** Constructor |
togayan | 0:a55a3351317d | 14 | */ |
AVELARDEV | 3:f317d057edde | 15 | BlinkLed(PinName, int); |
togayan | 0:a55a3351317d | 16 | |
togayan | 0:a55a3351317d | 17 | /** Destructor |
togayan | 0:a55a3351317d | 18 | */ |
togayan | 0:a55a3351317d | 19 | ~BlinkLed(); |
togayan | 0:a55a3351317d | 20 | |
togayan | 0:a55a3351317d | 21 | /** Start biinking |
togayan | 0:a55a3351317d | 22 | */ |
togayan | 0:a55a3351317d | 23 | void startBlink(); |
togayan | 0:a55a3351317d | 24 | |
togayan | 0:a55a3351317d | 25 | private: |
togayan | 0:a55a3351317d | 26 | /** Copy constructor |
togayan | 0:a55a3351317d | 27 | * Disable because it is only declaration |
togayan | 0:a55a3351317d | 28 | */ |
togayan | 0:a55a3351317d | 29 | BlinkLed(const BlinkLed&); |
togayan | 0:a55a3351317d | 30 | |
togayan | 0:a55a3351317d | 31 | /** Copy assignment operators |
togayan | 0:a55a3351317d | 32 | * Disable because it is only declaration |
togayan | 0:a55a3351317d | 33 | */ |
togayan | 0:a55a3351317d | 34 | BlinkLed& operator=(const BlinkLed&); |
togayan | 0:a55a3351317d | 35 | |
togayan | 0:a55a3351317d | 36 | /** Function for blinking |
togayan | 0:a55a3351317d | 37 | * This function will be bind to new thread |
togayan | 0:a55a3351317d | 38 | */ |
togayan | 0:a55a3351317d | 39 | static void blink(void const *argument); |
togayan | 0:a55a3351317d | 40 | |
togayan | 0:a55a3351317d | 41 | /** Target Led |
togayan | 0:a55a3351317d | 42 | */ |
AVELARDEV | 3:f317d057edde | 43 | DigitalOut led; |
togayan | 0:a55a3351317d | 44 | |
AVELARDEV | 3:f317d057edde | 45 | /** Blink time |
togayan | 0:a55a3351317d | 46 | */ |
AVELARDEV | 3:f317d057edde | 47 | int n; |
togayan | 0:a55a3351317d | 48 | |
togayan | 0:a55a3351317d | 49 | /** Pointer to thread for blinking |
togayan | 0:a55a3351317d | 50 | */ |
togayan | 0:a55a3351317d | 51 | Thread* thread; |
togayan | 0:a55a3351317d | 52 | }; |
togayan | 0:a55a3351317d | 53 | |
togayan | 0:a55a3351317d | 54 | #endif /* BLINKLED_H_ */ |