Pol Rodoreda Valeri
/
RTOS_rma_2
jiosd
Fork of rtos_basic by
main.cpp@7:8fcd03be2590, 2016-11-11 (annotated)
- Committer:
- polrodoreda
- Date:
- Fri Nov 11 18:48:15 2016 +0000
- Revision:
- 7:8fcd03be2590
- Parent:
- 3:c92e21f305d8
P5; 2
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
emilmont | 1:491820ee784d | 1 | #include "mbed.h" |
emilmont | 1:491820ee784d | 2 | #include "rtos.h" |
polrodoreda | 7:8fcd03be2590 | 3 | |
emilmont | 1:491820ee784d | 4 | |
polrodoreda | 7:8fcd03be2590 | 5 | DigitalOut led1S(p8); |
polrodoreda | 7:8fcd03be2590 | 6 | DigitalOut led2S(p10); |
polrodoreda | 7:8fcd03be2590 | 7 | |
polrodoreda | 7:8fcd03be2590 | 8 | Timer tim1; |
polrodoreda | 7:8fcd03be2590 | 9 | Timer tim2; |
polrodoreda | 7:8fcd03be2590 | 10 | Timer tim3; |
polrodoreda | 7:8fcd03be2590 | 11 | |
polrodoreda | 7:8fcd03be2590 | 12 | int vectorT1[2][100]; |
polrodoreda | 7:8fcd03be2590 | 13 | int vectorT2[2][100]; |
polrodoreda | 7:8fcd03be2590 | 14 | int inde = 0; |
polrodoreda | 7:8fcd03be2590 | 15 | const int max = 1000; |
polrodoreda | 7:8fcd03be2590 | 16 | int T=100; |
polrodoreda | 7:8fcd03be2590 | 17 | int Tfor=76; |
polrodoreda | 7:8fcd03be2590 | 18 | |
polrodoreda | 7:8fcd03be2590 | 19 | void t1_thread(void const *args) { |
polrodoreda | 7:8fcd03be2590 | 20 | while(true) { |
polrodoreda | 7:8fcd03be2590 | 21 | tim3.reset(); |
polrodoreda | 7:8fcd03be2590 | 22 | |
polrodoreda | 7:8fcd03be2590 | 23 | vectorT1[0][inde]=tim1.read_ms(); |
polrodoreda | 7:8fcd03be2590 | 24 | vectorT2[1][inde]=tim2.read_ms(); |
polrodoreda | 7:8fcd03be2590 | 25 | for(int i=0; i< max; i++ ){ |
polrodoreda | 7:8fcd03be2590 | 26 | for(int j=0; j< max; j++ ){ |
polrodoreda | 7:8fcd03be2590 | 27 | int a=1; |
polrodoreda | 7:8fcd03be2590 | 28 | } |
polrodoreda | 7:8fcd03be2590 | 29 | } |
polrodoreda | 7:8fcd03be2590 | 30 | Thread::wait(10*tim3.read_ms()); |
emilmont | 1:491820ee784d | 31 | } |
emilmont | 1:491820ee784d | 32 | } |
polrodoreda | 7:8fcd03be2590 | 33 | |
polrodoreda | 7:8fcd03be2590 | 34 | /*void t2_thread(void const *args) { |
polrodoreda | 7:8fcd03be2590 | 35 | while(true) { |
polrodoreda | 7:8fcd03be2590 | 36 | |
polrodoreda | 7:8fcd03be2590 | 37 | } |
polrodoreda | 7:8fcd03be2590 | 38 | }*/ |
emilmont | 1:491820ee784d | 39 | int main() { |
polrodoreda | 7:8fcd03be2590 | 40 | tim1.start(); |
polrodoreda | 7:8fcd03be2590 | 41 | tim2.start(); |
polrodoreda | 7:8fcd03be2590 | 42 | tim3.start(); |
emilmont | 1:491820ee784d | 43 | |
polrodoreda | 7:8fcd03be2590 | 44 | Thread thread1(t1_thread); |
polrodoreda | 7:8fcd03be2590 | 45 | //Thread thread2(t2_thread); |
polrodoreda | 7:8fcd03be2590 | 46 | //osThreadSetPriority(osThreadGetId(),osPriorityBelowNormal); |
emilmont | 1:491820ee784d | 47 | while (true) { |
polrodoreda | 7:8fcd03be2590 | 48 | tim3.reset(); |
polrodoreda | 7:8fcd03be2590 | 49 | |
polrodoreda | 7:8fcd03be2590 | 50 | vectorT2[0][inde]=tim2.read_ms(); |
polrodoreda | 7:8fcd03be2590 | 51 | vectorT1[1][inde]=tim1.read_ms(); |
polrodoreda | 7:8fcd03be2590 | 52 | for(int i=0; i< max; i++ ){ |
polrodoreda | 7:8fcd03be2590 | 53 | for(int j=0; j< max; j++ ){ |
polrodoreda | 7:8fcd03be2590 | 54 | int a=1; |
polrodoreda | 7:8fcd03be2590 | 55 | } |
polrodoreda | 7:8fcd03be2590 | 56 | } |
polrodoreda | 7:8fcd03be2590 | 57 | for(int i=0; i< max; i++ ){ |
polrodoreda | 7:8fcd03be2590 | 58 | for(int j=0; j< max; j++ ){ |
polrodoreda | 7:8fcd03be2590 | 59 | int a=1; |
polrodoreda | 7:8fcd03be2590 | 60 | } |
polrodoreda | 7:8fcd03be2590 | 61 | } |
polrodoreda | 7:8fcd03be2590 | 62 | Thread::wait(1.5*tim3.read_ms()); |
polrodoreda | 7:8fcd03be2590 | 63 | |
polrodoreda | 7:8fcd03be2590 | 64 | if(inde < 100){ |
polrodoreda | 7:8fcd03be2590 | 65 | inde++; |
polrodoreda | 7:8fcd03be2590 | 66 | }else{ |
polrodoreda | 7:8fcd03be2590 | 67 | printf("INIT PRINT\r\n"); |
polrodoreda | 7:8fcd03be2590 | 68 | for(int i=0; i < inde; i++ ){ |
polrodoreda | 7:8fcd03be2590 | 69 | printf("%d:\t%d,%d,%d,%d\r\n",i, vectorT1[0][i], vectorT1[1][i], vectorT2[0][i], vectorT2[1][i]); |
polrodoreda | 7:8fcd03be2590 | 70 | } |
polrodoreda | 7:8fcd03be2590 | 71 | printf("END PRINT\r\n"); |
polrodoreda | 7:8fcd03be2590 | 72 | inde=0; |
polrodoreda | 7:8fcd03be2590 | 73 | tim1.reset(); |
polrodoreda | 7:8fcd03be2590 | 74 | tim2.reset(); |
polrodoreda | 7:8fcd03be2590 | 75 | } |
emilmont | 1:491820ee784d | 76 | } |
emilmont | 1:491820ee784d | 77 | } |