LPCX1549-RTOSを動かしてみました。

RTOSのライブラリを利用して以下のコードを動かしてみました

#include "mbed.h"
#include "rtos.h"
 
DigitalOut led1(P0_29);
DigitalOut led2(P0_9);
Serial pc(USBTX, USBRX); // tx, rx

int a,b;

void led1_thread(void const *argument) {
    while (true) {
        led1 = !led1;
        Thread::wait(1000);
    }
}

void led2_thread(void const *argument) {
    while (true) {
        led2 = !led2;
        a = a + 1;
        Thread::wait(100);
    }
}

void print_thread(void const *argument) {
    while (true) {
        b = b + 1;
        Thread::wait(1000);
    }
}

 
int main() {
    Thread th1(led1_thread);
    Thread th2(led2_thread);
    Thread th3(print_thread);
    pc.baud(115200);
    while (true) {
     pc.printf("\033[1;1H");
     pc.printf("LED_Count");
     pc.printf("\033[2;1H");
     pc.printf("%d",a);
     pc.printf("\033[1;15H");
     pc.printf("b++ count");
     pc.printf("\033[2;15H");
     pc.printf("%d",b);
    }
}

これで割り込みが入りながらLチカしてるのが判ると思います。


Please log in to post comments.