Last
Dependencies: BLE_API HCSR04 X_NUCLEO_IDB0XA1 mbed
Fork of contest_IOT5 by
display.h@7:fd3602c86d75, 2015-11-04 (annotated)
- Committer:
- Alex_Hochart
- Date:
- Wed Nov 04 15:29:42 2015 +0000
- Revision:
- 7:fd3602c86d75
- Parent:
- 6:55319ed07a08
Last But LASt de chez Last version
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Mickado | 6:55319ed07a08 | 1 | |
Mickado | 6:55319ed07a08 | 2 | #ifndef DISPLAY_H |
Mickado | 6:55319ed07a08 | 3 | #define DISPLAY_H |
Mickado | 6:55319ed07a08 | 4 | |
Mickado | 6:55319ed07a08 | 5 | #include "mbed.h" |
Mickado | 6:55319ed07a08 | 6 | |
Mickado | 6:55319ed07a08 | 7 | void pong_init_ttempro(Serial &pc){ |
Mickado | 6:55319ed07a08 | 8 | |
Mickado | 6:55319ed07a08 | 9 | pc.printf("\033[2J"); //Efface la console |
Mickado | 6:55319ed07a08 | 10 | pc.printf("\033[?25l"); //Cache le curseur |
Mickado | 6:55319ed07a08 | 11 | |
Mickado | 6:55319ed07a08 | 12 | for(int i=0; i <= 128 ; i++){ |
Mickado | 6:55319ed07a08 | 13 | pc.printf("\033[0;%dH",i); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 14 | pc.printf("X"); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 15 | pc.printf("\033[32;%dH",i); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 16 | pc.printf("X"); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 17 | } |
Mickado | 6:55319ed07a08 | 18 | |
Mickado | 6:55319ed07a08 | 19 | for(int i=0; i <= 32 ; i++){ |
Mickado | 6:55319ed07a08 | 20 | pc.printf("\033[%d;0H",i); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 21 | pc.printf("X"); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 22 | pc.printf("\033[%d;128H",i); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 23 | pc.printf("X"); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 24 | } |
Mickado | 6:55319ed07a08 | 25 | |
Mickado | 6:55319ed07a08 | 26 | } |
Mickado | 6:55319ed07a08 | 27 | |
Mickado | 6:55319ed07a08 | 28 | void print_cursor_ttempro(Serial &pc, int *pos1, int *pos1prec, int *pos2, int *pos2prec){ |
Mickado | 6:55319ed07a08 | 29 | for(int i=0;i<=29;i++){ |
Mickado | 6:55319ed07a08 | 30 | if( pos1[i] != pos1prec[i] ){ |
Mickado | 6:55319ed07a08 | 31 | if(pos1[i] == 1){ |
Mickado | 6:55319ed07a08 | 32 | pc.printf("\033[%d;3H",i+2); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 33 | pc.printf("X"); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 34 | } |
Mickado | 6:55319ed07a08 | 35 | else{ |
Mickado | 6:55319ed07a08 | 36 | pc.printf("\033[%d;3H",i+2); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 37 | pc.printf(" "); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 38 | } |
Mickado | 6:55319ed07a08 | 39 | } |
Mickado | 6:55319ed07a08 | 40 | |
Mickado | 6:55319ed07a08 | 41 | if( pos2[i] != pos2prec[i] ){ |
Mickado | 6:55319ed07a08 | 42 | if(pos2[i] == 1){ |
Mickado | 6:55319ed07a08 | 43 | pc.printf("\033[%d;126H",i+2); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 44 | pc.printf("X"); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 45 | } |
Mickado | 6:55319ed07a08 | 46 | else{ |
Mickado | 6:55319ed07a08 | 47 | pc.printf("\033[%d;126H",i+2); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 48 | pc.printf(" "); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 49 | } |
Mickado | 6:55319ed07a08 | 50 | } |
Mickado | 6:55319ed07a08 | 51 | } |
Mickado | 6:55319ed07a08 | 52 | } |
Mickado | 6:55319ed07a08 | 53 | |
Mickado | 6:55319ed07a08 | 54 | void set_pos_vector(int *pos, int distance){ |
Mickado | 6:55319ed07a08 | 55 | |
Mickado | 6:55319ed07a08 | 56 | if(distance <= 10){ |
Mickado | 6:55319ed07a08 | 57 | for(int i=0;i<=5;i++){ pos[i] = 1; } |
Mickado | 6:55319ed07a08 | 58 | } |
Mickado | 6:55319ed07a08 | 59 | else if(distance >= 34){ |
Mickado | 6:55319ed07a08 | 60 | for(int i=24;i<=29;i++){ pos[i] = 1; } |
Mickado | 6:55319ed07a08 | 61 | } |
Mickado | 6:55319ed07a08 | 62 | else{ |
Mickado | 6:55319ed07a08 | 63 | for(int i=(distance-10);i<=(distance-4);i++){ pos[i] = 1; } |
Mickado | 6:55319ed07a08 | 64 | } |
Mickado | 6:55319ed07a08 | 65 | } |
Mickado | 6:55319ed07a08 | 66 | |
Mickado | 6:55319ed07a08 | 67 | int set_print_ball(Serial &pc, int *pos1,int *pos2,double *posBallX, double *posBallY, double *angBall){ |
Mickado | 6:55319ed07a08 | 68 | pc.printf("\033[%d;%dH",(int)*posBallY, (int)*posBallX); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 69 | pc.printf(" "); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 70 | *posBallX = *posBallX + 2.0*cos((double)*angBall*3.1415/180.0); |
Mickado | 6:55319ed07a08 | 71 | *posBallY = *posBallY - 2.0*sin((double)*angBall*3.1415/180.0); |
Mickado | 6:55319ed07a08 | 72 | |
Mickado | 6:55319ed07a08 | 73 | if(*posBallX <= 4){ |
Mickado | 6:55319ed07a08 | 74 | if(pos1[(int)*posBallY] == 1){ |
Mickado | 6:55319ed07a08 | 75 | *posBallX = 8 - *posBallX; |
Mickado | 6:55319ed07a08 | 76 | *angBall = 180 - *angBall; |
Mickado | 6:55319ed07a08 | 77 | } |
Mickado | 6:55319ed07a08 | 78 | else{ return 1; } |
Mickado | 6:55319ed07a08 | 79 | } |
Mickado | 6:55319ed07a08 | 80 | else if(*posBallX >= 125){ |
Mickado | 6:55319ed07a08 | 81 | if(pos2[(int)*posBallY] == 1){ |
Mickado | 6:55319ed07a08 | 82 | *posBallX = 250 - *posBallX; |
Mickado | 6:55319ed07a08 | 83 | *angBall = 180 - *angBall; |
Mickado | 6:55319ed07a08 | 84 | } |
Mickado | 6:55319ed07a08 | 85 | else{ return 2; } |
Mickado | 6:55319ed07a08 | 86 | } |
Mickado | 6:55319ed07a08 | 87 | |
Mickado | 6:55319ed07a08 | 88 | |
Mickado | 6:55319ed07a08 | 89 | if(*posBallY <= 2){ |
Mickado | 6:55319ed07a08 | 90 | *posBallY = -*posBallY+4; |
Mickado | 6:55319ed07a08 | 91 | *angBall = -*angBall; |
Mickado | 6:55319ed07a08 | 92 | } |
Mickado | 6:55319ed07a08 | 93 | else if(*posBallY >= 31){ |
Mickado | 6:55319ed07a08 | 94 | *posBallY = 62 - *posBallY; |
Mickado | 6:55319ed07a08 | 95 | *angBall = -*angBall; |
Mickado | 6:55319ed07a08 | 96 | } |
Mickado | 6:55319ed07a08 | 97 | pc.printf("\033[%d;%dH",(int)*posBallY, (int)*posBallX); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 98 | pc.printf("o"); //Place le curseur à 0:0 |
Mickado | 6:55319ed07a08 | 99 | return 3; |
Mickado | 6:55319ed07a08 | 100 | } |
Mickado | 6:55319ed07a08 | 101 | |
Mickado | 6:55319ed07a08 | 102 | |
Alex_Hochart | 7:fd3602c86d75 | 103 | int print_ball(Serial &pc, int *distance1, int *distance2, double *posBallX, double *posBallY){ |
Alex_Hochart | 7:fd3602c86d75 | 104 | pc.printf("\033[%d;%dH",(int)*posBallY, (int)*posBallX); //Place le curseur à 0:0 |
Alex_Hochart | 7:fd3602c86d75 | 105 | pc.printf(" "); //Place le curseur à 0:0 |
Alex_Hochart | 7:fd3602c86d75 | 106 | if(*posBallY <= 50){ |
Alex_Hochart | 7:fd3602c86d75 | 107 | if(*distance1 <= 10){ |
Alex_Hochart | 7:fd3602c86d75 | 108 | *posBallX = 4; |
Alex_Hochart | 7:fd3602c86d75 | 109 | } |
Alex_Hochart | 7:fd3602c86d75 | 110 | else if(*distance1 >= 34){ |
Alex_Hochart | 7:fd3602c86d75 | 111 | *posBallX = 27; |
Alex_Hochart | 7:fd3602c86d75 | 112 | } |
Alex_Hochart | 7:fd3602c86d75 | 113 | else{ |
Alex_Hochart | 7:fd3602c86d75 | 114 | *posBallX = *distance1; |
Alex_Hochart | 7:fd3602c86d75 | 115 | } |
Alex_Hochart | 7:fd3602c86d75 | 116 | } |
Alex_Hochart | 7:fd3602c86d75 | 117 | else |
Alex_Hochart | 7:fd3602c86d75 | 118 | { |
Alex_Hochart | 7:fd3602c86d75 | 119 | if(*distance2 <= 10){ |
Alex_Hochart | 7:fd3602c86d75 | 120 | *posBallX = 4; |
Alex_Hochart | 7:fd3602c86d75 | 121 | } |
Alex_Hochart | 7:fd3602c86d75 | 122 | else if(*distance2 >= 34){ |
Alex_Hochart | 7:fd3602c86d75 | 123 | *posBallX = 27; |
Alex_Hochart | 7:fd3602c86d75 | 124 | } |
Alex_Hochart | 7:fd3602c86d75 | 125 | else{ |
Alex_Hochart | 7:fd3602c86d75 | 126 | *posBallX = *distance2; |
Alex_Hochart | 7:fd3602c86d75 | 127 | } |
Alex_Hochart | 7:fd3602c86d75 | 128 | } |
Alex_Hochart | 7:fd3602c86d75 | 129 | pc.printf("\033[%d;%dH",(int)*posBallY, (int)*posBallX); //Place le curseur à 0:0 |
Alex_Hochart | 7:fd3602c86d75 | 130 | pc.printf("o"); //Place le curseur à 0:0 |
Alex_Hochart | 7:fd3602c86d75 | 131 | return 3; |
Alex_Hochart | 7:fd3602c86d75 | 132 | } |
Alex_Hochart | 7:fd3602c86d75 | 133 | |
Alex_Hochart | 7:fd3602c86d75 | 134 | |
Alex_Hochart | 7:fd3602c86d75 | 135 | |
Mickado | 6:55319ed07a08 | 136 | #endif |