Xisco Sastre Cabot
/
rtos_2
rtos2
Fork of rtos_basic by
Diff: main.cpp
- Revision:
- 7:14841d8f93e4
- Parent:
- 3:c92e21f305d8
diff -r 209f4db62daf -r 14841d8f93e4 main.cpp --- a/main.cpp Tue Jun 04 16:01:32 2013 +0100 +++ b/main.cpp Fri Nov 13 14:41:24 2015 +0000 @@ -1,21 +1,43 @@ #include "mbed.h" #include "rtos.h" - DigitalOut led1(LED1); DigitalOut led2(LED2); - -void led2_thread(void const *args) { +double status; +Timer t; +bool b; + +void thread1(void const *args) { while (true) { - led2 = !led2; - Thread::wait(1000); + t.stop(); + if (b) { + printf("The time taken was %f seconds \r\n", t.read()); + b = false; + } + t.reset(); + led1 = !led1; + for(double i=0; i<100000; i++) { + status = i; + } + led1 = !led1; + Thread::wait(300); + } } + + +int main() { + led1 = false; + led2 = false; + b = true; + osThreadSetPriority(osThreadGetId(),osPriorityHigh); + Thread my_thread1(thread1, NULL, osPriorityHigh); + while (true) { + t.reset(); + t.start(); + led2 = !led2; + for(double i=0; i<100000; i++) { + status = i; + } + led2 = !led2; + Thread::wait(300); + } } - -int main() { - Thread thread(led2_thread); - - while (true) { - led1 = !led1; - Thread::wait(500); - } -}