
For Contest
Dependencies: BLE_API HCSR04 X_NUCLEO_IDB0XA1 mbed
Fork of contest_IOT6 by
Revision 8:8d6474336444, committed 2015-11-04
- Comitter:
- Alex_Hochart
- Date:
- Wed Nov 04 20:41:31 2015 +0000
- Parent:
- 7:fd3602c86d75
- Commit message:
- For Contest
Changed in this revision
diff -r fd3602c86d75 -r 8d6474336444 display.h --- a/display.h Wed Nov 04 15:29:42 2015 +0000 +++ b/display.h Wed Nov 04 20:41:31 2015 +0000 @@ -53,14 +53,14 @@ void set_pos_vector(int *pos, int distance){ - if(distance <= 10){ + if(distance <= 9){ for(int i=0;i<=5;i++){ pos[i] = 1; } } - else if(distance >= 34){ + else if(distance >= 33){ for(int i=24;i<=29;i++){ pos[i] = 1; } } else{ - for(int i=(distance-10);i<=(distance-4);i++){ pos[i] = 1; } + for(int i=(distance-9);i<=(distance-4);i++){ pos[i] = 1; } } } @@ -103,27 +103,27 @@ int print_ball(Serial &pc, int *distance1, int *distance2, double *posBallX, double *posBallY){ pc.printf("\033[%d;%dH",(int)*posBallY, (int)*posBallX); //Place le curseur à 0:0 pc.printf(" "); //Place le curseur à 0:0 - if(*posBallY <= 50){ + if(*posBallX <= 50){ if(*distance1 <= 10){ - *posBallX = 4; + *posBallY = 4; } - else if(*distance1 >= 34){ - *posBallX = 27; + else if(*distance1 >= 33){ + *posBallY = 28; } else{ - *posBallX = *distance1; + *posBallY = *distance1-5; } } else { if(*distance2 <= 10){ - *posBallX = 4; + *posBallY = 4; } else if(*distance2 >= 34){ - *posBallX = 27; + *posBallY = 28; } else{ - *posBallX = *distance2; + *posBallY = *distance2-5; } } pc.printf("\033[%d;%dH",(int)*posBallY, (int)*posBallX); //Place le curseur à 0:0
diff -r fd3602c86d75 -r 8d6474336444 jeu.h --- a/jeu.h Wed Nov 04 15:29:42 2015 +0000 +++ b/jeu.h Wed Nov 04 20:41:31 2015 +0000 @@ -78,7 +78,7 @@ p2_score=0; chronoActive=0; - posBallX = 5.0; + posBallX = 4.0; posBallY = 19.0; angBall = 25.0; state = 0;
diff -r fd3602c86d75 -r 8d6474336444 main.cpp --- a/main.cpp Wed Nov 04 15:29:42 2015 +0000 +++ b/main.cpp Wed Nov 04 20:41:31 2015 +0000 @@ -5,17 +5,17 @@ #include <math.h> -#define ECHO_1 PA_9 -#define ECHO_2 PB_9 -#define TRIG_1 PC_7 -#define TRIG_2 PB_8 +#define TRIG_1 PA_9 +#define TRIG_2 PB_10 +#define ECHO_1 PC_7 +#define ECHO_2 PA_8 #define PUSH USER_BUTTON //PC_13 #define LED_1 LED1 /* #define ECHO_1 PA_4 #define ECHO_2 PB_3 -#define TRIG_1 PB_5 +#define TRIG_1 PA_5 #define TRIG_2 PA_10 #define PUSH PA_9 //PC_13 #define LED_1 PA_8 @@ -27,7 +27,7 @@ //------------------------------------ -DigitalOut led(LED_1); //Led d'état +//DigitalOut led(LED_1); //Led d'état DigitalIn bp(PUSH); Serial pc(USBTX, USBRX); //UART @@ -75,8 +75,10 @@ tickerChrono.attach(&jeu, &InfosJeu::incrementeChrono, 1); //Initialisation du BLE + /* initJeuBLE(ble); ble.gap().onDisconnection(disconnectionCallback); + */ //Initialisation de l'affichage pong_init_ttempro(pc); @@ -87,20 +89,20 @@ /* ******* Mise à jour des données BLE chaque seconde ******* - */ + if(triggerSensorPolling && ble.getGapState().connected){ triggerSensorPolling = false; // flag indiquant qu'une seconde s'est écoulée, il faut mettre à jour les données BLE miseAJourBLE(ble, jeu.p1_score, jeu.p2_score, jeu.chrono); }else{ ble.waitForEvent(); // low power wait for event } - + */ /* ******* Mécanique de jeu ******** */ switch(jeu.state){ case 0 : if(bp.read() != 1){ - jeu.state = 3; + jeu.state = 4; pong_init_ttempro(pc); } break; @@ -119,7 +121,6 @@ print_ball(pc,&jeu.distance1,&jeu.distance2,&jeu.posBallX,&jeu.posBallY); if(bp.read() != 1){ jeu.state = 3; - pong_init_ttempro(pc); jeu.setChronoActive(); } break; @@ -144,13 +145,13 @@ pc.printf("\033[16;60H"); pc.printf("P2 WIN "); jeu.stopChrono(); - jeu.reinitPosition(0, 0, 5.0, 19.0, 25.0); // (p1_score, p2_score, posBallX, posBallY, angBall) + jeu.reinitPosition(0, 0, 4.0, 19.0, 25.0); // (p1_score, p2_score, posBallX, posBallY, angBall) } else{ pc.printf("\033[2J"); //Efface la console - pc.printf("\033[10;60H"); + pc.printf("\033[16;55H"); pc.printf("P1 : %d // P2 : %d",jeu.p1_score,jeu.p2_score); - jeu.reinitPosition(jeu.p1_score, jeu.p2_score, 5.0, 19.0, 25.0); // (p1_score, p2_score, posBallX, posBallY, angBall) + jeu.reinitPosition(jeu.p1_score, jeu.p2_score, 4.0, 19.0, 25.0); // (p1_score, p2_score, posBallX, posBallY, angBall) } jeu.state = 0; break; @@ -161,18 +162,18 @@ pc.printf("\033[16;60H"); pc.printf("P1 WIN "); jeu.stopChrono(); - jeu.reinitPosition(0, 0, 124.0, 19.0, 145.0); // (p1_score, p2_score, posBallX, posBallY, angBall) + jeu.reinitPosition(0, 0, 125.0, 19.0, 145.0); // (p1_score, p2_score, posBallX, posBallY, angBall) } else{ pc.printf("\033[2J"); //Efface la console - pc.printf("\033[10;60H"); + pc.printf("\033[16;55H"); pc.printf("P1 : %d // P2 : %d",jeu.p1_score,jeu.p2_score); - jeu.reinitPosition(jeu.p1_score, jeu.p2_score, 124.0, 19.0, 145.0); // (p1_score, p2_score, posBallX, posBallY, angBall) + jeu.reinitPosition(jeu.p1_score, jeu.p2_score, 125.0, 19.0, 145.0); // (p1_score, p2_score, posBallX, posBallY, angBall) } jeu.state = 0; break; } - wait(0.1); + wait(0.075); } }