Redona Kembora
/
BlinkThreadCallback2LED
BlinkThreadCallback2LED
main.cpp@0:7ede95000001, 2018-11-15 (annotated)
- Committer:
- redona
- Date:
- Thu Nov 15 16:59:01 2018 +0000
- Revision:
- 0:7ede95000001
BlinkThreadCallback2LED
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
redona | 0:7ede95000001 | 1 | #include "mbed.h" |
redona | 0:7ede95000001 | 2 | |
redona | 0:7ede95000001 | 3 | DigitalOut led1(LED1); |
redona | 0:7ede95000001 | 4 | DigitalOut led2(LED2); |
redona | 0:7ede95000001 | 5 | |
redona | 0:7ede95000001 | 6 | // Blink function toggles the led in a long running loop |
redona | 0:7ede95000001 | 7 | void blink(DigitalOut *led) { |
redona | 0:7ede95000001 | 8 | *led = !*led; |
redona | 0:7ede95000001 | 9 | wait(1); |
redona | 0:7ede95000001 | 10 | *led = !*led; |
redona | 0:7ede95000001 | 11 | } |
redona | 0:7ede95000001 | 12 | int main() { |
redona | 0:7ede95000001 | 13 | while(1){ |
redona | 0:7ede95000001 | 14 | |
redona | 0:7ede95000001 | 15 | Thread thread1; |
redona | 0:7ede95000001 | 16 | Thread thread2; |
redona | 0:7ede95000001 | 17 | |
redona | 0:7ede95000001 | 18 | thread1.start(callback(blink, &led1)); |
redona | 0:7ede95000001 | 19 | thread1.join(); |
redona | 0:7ede95000001 | 20 | thread2.start(callback(blink, &led2)); |
redona | 0:7ede95000001 | 21 | thread2.join(); |
redona | 0:7ede95000001 | 22 | } |
redona | 0:7ede95000001 | 23 | } |