dnj

Dependencies:   mbed-rtos mbed

Fork of rtos_basic by mbed official

main.cpp

Committer:
polrodoreda
Date:
2016-11-11
Revision:
7:62b77d1d7f0d
Parent:
3:c92e21f305d8

File content as of revision 7:62b77d1d7f0d:

#include "mbed.h"
#include "rtos.h"

 
DigitalOut led1S(p8); 
DigitalOut led2S(p10);

Timer tim1;
Timer tim2;
Timer tim;

int vector[4][100];
int index = 0;

 void t1_thread(void const *args) {
    while(true) {
        if(tim2.read_ms()==0){
            vector[0][index]=tim.read_ms();    
        }
        tim1.start();
        tim2.stop();
        if(tim1.read_ms()>100){
            tim1.stop();
            vector[1][index]=tim.read_ms();
            tim1.reset();
        }
    }
}

 void t2_thread(void const *args) {
    while(true) {
        if(tim1.read_ms()==0){
            vector[2][index]=tim.read_ms();    
        }
        tim2.start();
        tim1.stop();
        if(tim2.read_ms()>200){
            tim2.stop();
            vector[3][index]=tim.read_ms();
            tim2.reset();
            if(index<100){
                index++;
            }else{
                for(int i=0; i<100;i++){
                    printf("%d,%d,%d,%d\r\n", vector[0][i], vector[1][i], vector[2][i], vector[3][i]);
                }
                printf("\r\n");
                   
            }
        }
    }
}
int main() {
    Thread thread1(t1_thread);
    Thread thread2(t2_thread);
    tim.start();
    while (true) {
    }
}