mbed_example
/
rtos_signals
signals example
main.cpp@4:fc60c5b6c104, 2017-01-11 (annotated)
- Committer:
- Bartek Szatkowski
- Date:
- Wed Jan 11 15:07:51 2017 +0000
- Revision:
- 4:fc60c5b6c104
- Parent:
- 1:6a8fcc666593
- Child:
- 5:476186ff82cf
Update to use current RTOS API
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
emilmont | 1:6a8fcc666593 | 1 | #include "mbed.h" |
emilmont | 1:6a8fcc666593 | 2 | #include "rtos.h" |
emilmont | 1:6a8fcc666593 | 3 | |
emilmont | 1:6a8fcc666593 | 4 | DigitalOut led(LED1); |
emilmont | 1:6a8fcc666593 | 5 | |
Bartek Szatkowski |
4:fc60c5b6c104 | 6 | void led_thread() { |
emilmont | 1:6a8fcc666593 | 7 | while (true) { |
emilmont | 1:6a8fcc666593 | 8 | // Signal flags that are reported as event are automatically cleared. |
emilmont | 1:6a8fcc666593 | 9 | Thread::signal_wait(0x1); |
emilmont | 1:6a8fcc666593 | 10 | led = !led; |
emilmont | 1:6a8fcc666593 | 11 | } |
emilmont | 1:6a8fcc666593 | 12 | } |
emilmont | 1:6a8fcc666593 | 13 | |
emilmont | 1:6a8fcc666593 | 14 | int main (void) { |
Bartek Szatkowski |
4:fc60c5b6c104 | 15 | Thread thread; |
Bartek Szatkowski |
4:fc60c5b6c104 | 16 | |
Bartek Szatkowski |
4:fc60c5b6c104 | 17 | thread.start(callback(led_thread)); |
Bartek Szatkowski |
4:fc60c5b6c104 | 18 | |
emilmont | 1:6a8fcc666593 | 19 | while (true) { |
emilmont | 1:6a8fcc666593 | 20 | Thread::wait(1000); |
emilmont | 1:6a8fcc666593 | 21 | thread.signal_set(0x1); |
emilmont | 1:6a8fcc666593 | 22 | } |
emilmont | 1:6a8fcc666593 | 23 | } |