mbed_robotcar / Mbed OS priority_test
Committer:
naoki_fukushima
Date:
Mon Jul 13 06:19:53 2020 +0000
Revision:
0:d69424c893b6
priority

Who changed what in which revision?

UserRevisionLine numberNew contents of line
naoki_fukushima 0:d69424c893b6 1 #include "mbed.h"
naoki_fukushima 0:d69424c893b6 2 #include "rtos.h"
naoki_fukushima 0:d69424c893b6 3
naoki_fukushima 0:d69424c893b6 4 DigitalOut led1(p18);
naoki_fukushima 0:d69424c893b6 5 DigitalOut led2(p19);
naoki_fukushima 0:d69424c893b6 6 DigitalOut led3(p20);
naoki_fukushima 0:d69424c893b6 7
naoki_fukushima 0:d69424c893b6 8 Semaphore slot(1);
naoki_fukushima 0:d69424c893b6 9
naoki_fukushima 0:d69424c893b6 10 void Led(void const *name){
naoki_fukushima 0:d69424c893b6 11 while(true){
naoki_fukushima 0:d69424c893b6 12 slot.wait();
naoki_fukushima 0:d69424c893b6 13 printf("優先度:%s\n\r",name);
naoki_fukushima 0:d69424c893b6 14 if(name=="-1"){
naoki_fukushima 0:d69424c893b6 15 led1 = !led1;
naoki_fukushima 0:d69424c893b6 16 ThisThread::sleep_for(100);
naoki_fukushima 0:d69424c893b6 17 led1 = !led1;
naoki_fukushima 0:d69424c893b6 18 }else if(name=="0"){
naoki_fukushima 0:d69424c893b6 19 led2 = !led2;
naoki_fukushima 0:d69424c893b6 20 ThisThread::sleep_for(100);
naoki_fukushima 0:d69424c893b6 21 led2 = !led2;
naoki_fukushima 0:d69424c893b6 22 }else if(name=="1"){
naoki_fukushima 0:d69424c893b6 23 led3 = !led3;
naoki_fukushima 0:d69424c893b6 24 ThisThread::sleep_for(100);
naoki_fukushima 0:d69424c893b6 25 led3 = !led3;
naoki_fukushima 0:d69424c893b6 26 }
naoki_fukushima 0:d69424c893b6 27 slot.release();
naoki_fukushima 0:d69424c893b6 28 }
naoki_fukushima 0:d69424c893b6 29 }
naoki_fukushima 0:d69424c893b6 30
naoki_fukushima 0:d69424c893b6 31
naoki_fukushima 0:d69424c893b6 32 int main(){
naoki_fukushima 0:d69424c893b6 33 Thread thread1(Led,(void*)"-1",osPriorityBelowNormal);
naoki_fukushima 0:d69424c893b6 34 Thread thread2(Led,(void*)"1",osPriorityAboveNormal);
naoki_fukushima 0:d69424c893b6 35
naoki_fukushima 0:d69424c893b6 36 Led((void*)"0");
naoki_fukushima 0:d69424c893b6 37 }
naoki_fukushima 0:d69424c893b6 38
naoki_fukushima 0:d69424c893b6 39
naoki_fukushima 0:d69424c893b6 40