test RTOS

Dependencies:   mbed-rtos mbed

Committer:
kazu_zamasu
Date:
Wed Apr 30 18:08:44 2014 +0000
Revision:
0:7f40098a12b6
test

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kazu_zamasu 0:7f40098a12b6 1 #include "mbed.h"
kazu_zamasu 0:7f40098a12b6 2 #include "rtos.h"
kazu_zamasu 0:7f40098a12b6 3
kazu_zamasu 0:7f40098a12b6 4 DigitalOut led1(P0_29);
kazu_zamasu 0:7f40098a12b6 5 DigitalOut led2(P0_9);
kazu_zamasu 0:7f40098a12b6 6 Serial pc(USBTX, USBRX); // tx, rx
kazu_zamasu 0:7f40098a12b6 7
kazu_zamasu 0:7f40098a12b6 8 int a=0,b=0;
kazu_zamasu 0:7f40098a12b6 9 void led1_thread(void const *argument) {
kazu_zamasu 0:7f40098a12b6 10 while (true) {
kazu_zamasu 0:7f40098a12b6 11 led1 = !led1;
kazu_zamasu 0:7f40098a12b6 12 Thread::wait(500);
kazu_zamasu 0:7f40098a12b6 13 }
kazu_zamasu 0:7f40098a12b6 14 }
kazu_zamasu 0:7f40098a12b6 15
kazu_zamasu 0:7f40098a12b6 16 void led2_thread(void const *argument) {
kazu_zamasu 0:7f40098a12b6 17 while (true) {
kazu_zamasu 0:7f40098a12b6 18 led2 = !led2;
kazu_zamasu 0:7f40098a12b6 19 a = a + 1;
kazu_zamasu 0:7f40098a12b6 20 Thread::wait(250);
kazu_zamasu 0:7f40098a12b6 21 }
kazu_zamasu 0:7f40098a12b6 22 }
kazu_zamasu 0:7f40098a12b6 23
kazu_zamasu 0:7f40098a12b6 24 void print_thread(void const *argument) {
kazu_zamasu 0:7f40098a12b6 25 while (true) {
kazu_zamasu 0:7f40098a12b6 26 b = b + 1;
kazu_zamasu 0:7f40098a12b6 27 Thread::wait(500);
kazu_zamasu 0:7f40098a12b6 28 }
kazu_zamasu 0:7f40098a12b6 29 }
kazu_zamasu 0:7f40098a12b6 30
kazu_zamasu 0:7f40098a12b6 31
kazu_zamasu 0:7f40098a12b6 32 int main() {
kazu_zamasu 0:7f40098a12b6 33 Thread th1(led1_thread);
kazu_zamasu 0:7f40098a12b6 34 Thread th2(led2_thread);
kazu_zamasu 0:7f40098a12b6 35 Thread th3(print_thread);
kazu_zamasu 0:7f40098a12b6 36 pc.baud(115200);
kazu_zamasu 0:7f40098a12b6 37 while ( b < 300 ) {
kazu_zamasu 0:7f40098a12b6 38 pc.printf("\033[1;1H");
kazu_zamasu 0:7f40098a12b6 39 pc.printf("LED_Count");
kazu_zamasu 0:7f40098a12b6 40 pc.printf("\033[2;1H");
kazu_zamasu 0:7f40098a12b6 41 pc.printf("%d",a);
kazu_zamasu 0:7f40098a12b6 42 pc.printf("\033[1;15H");
kazu_zamasu 0:7f40098a12b6 43 pc.printf("b++ count");
kazu_zamasu 0:7f40098a12b6 44 pc.printf("\033[2;15H");
kazu_zamasu 0:7f40098a12b6 45 pc.printf("%d",b);
kazu_zamasu 0:7f40098a12b6 46 }
kazu_zamasu 0:7f40098a12b6 47 pc.printf("\033[1;1H");
kazu_zamasu 0:7f40098a12b6 48 pc.printf("LED_Count");
kazu_zamasu 0:7f40098a12b6 49 pc.printf("\033[2;1H");
kazu_zamasu 0:7f40098a12b6 50 pc.printf("%d",a);
kazu_zamasu 0:7f40098a12b6 51 pc.printf("\033[1;15H");
kazu_zamasu 0:7f40098a12b6 52 pc.printf("b++ count");
kazu_zamasu 0:7f40098a12b6 53 pc.printf("\033[2;15H");
kazu_zamasu 0:7f40098a12b6 54 pc.printf("%d",b);
kazu_zamasu 0:7f40098a12b6 55
kazu_zamasu 0:7f40098a12b6 56 }