dfgqf
Dependencies: Encoder_Nucleo_16_bits PwmIn mbed
Fork of TestBoardv2_boussole_pixi by
Diff: main.cpp
- Revision:
- 9:18bdd03627d1
- Parent:
- 8:527f5db9b3dc
--- a/main.cpp Fri Jun 09 02:09:09 2017 +0000 +++ b/main.cpp Sat Jun 10 04:40:53 2017 +0000 @@ -452,7 +452,8 @@ int main() { - int i = 0, val_H_balle = 0, val_W_balle=0, max_val_W_balle = 0, indice_balle = 0, val_carre_balle=0, val_x_balle=0; + int i = 0, val_H_balle = 0, val_W_balle=0, max_val_W_balle = 0, indice_balle = 0 ; + double mesure_angle_pixy, val_carre_balle=0,val_x_balle=0; Byte PIXY_rCCObjet = 0, PIXY_rNMObjet = 0; int PIXY_objet; @@ -611,9 +612,62 @@ Pc.printf ("\n\n\rCNY70\n"); Pc.printf ("\rAppuyez sur Entree pour quitter\n"); do { - CNY(); + + if (FlagPixy) { + + if (FlagPixyOverflow) { + Pc.printf ("\rSome Data were lost\n"); + FlagPixyOverflow = 0; + } + for (PIXY_objet = 0; PIXY_objet < Pixy_NMObjet; PIXY_objet++) { + Pc.printf ("\rNMobj #%hd/%hd : sig = %hd : X=%5hd, Y=%5hd (W=%5hd, H=%5hd)\n", PIXY_objet+1, Pixy_NMObjet, Pixy_NMFIFO[PIXY_rNMObjet].NMbloc.signature, Pixy_NMFIFO[PIXY_rNMObjet].NMbloc.x, Pixy_NMFIFO[PIXY_rNMObjet].NMbloc.y, Pixy_NMFIFO[PIXY_rNMObjet].NMbloc.width, Pixy_NMFIFO[PIXY_rNMObjet].NMbloc.height); + + if (PIXY_rNMObjet<19) PIXY_rNMObjet++; + else PIXY_rNMObjet = 0; + } + Pixy_NMObjet = 0; + + for (PIXY_objet = 0; PIXY_objet < Pixy_CCObjet; PIXY_objet++) { + Pc.printf ("\rCCobj #%hd/%hd : sig = %hd : X=%5hd, Y=%5hd (W=%5hd, H=%5hd)\n", PIXY_objet+1, Pixy_CCObjet, Pixy_CCFIFO[PIXY_rCCObjet].CCbloc.signature, Pixy_CCFIFO[PIXY_rCCObjet].CCbloc.x, Pixy_CCFIFO[PIXY_rCCObjet].CCbloc.y, Pixy_CCFIFO[PIXY_rCCObjet].CCbloc.width, Pixy_CCFIFO[PIXY_rCCObjet].CCbloc.height); + + if (PIXY_rCCObjet<19) PIXY_rCCObjet++; + else PIXY_rCCObjet = 0; + } + + i=0; + do{ + //test carre +/-5% + val_carre_balle = Pixy_NMFIFO[i].NMbloc.height/Pixy_NMFIFO[i].NMbloc.width; + + if ((0.95<val_carre_balle)&&(val_carre_balle<1.05)) + { + val_x_balle =Pixy_NMFIFO[i].NMbloc.x; + Pc.printf("\n balle0"); + } + i++; + + mesure_angle_pixy=(val_x_balle-160)*0.234375; + Pc.printf("\r x_balle : %lf ° ",val_x_balle); + }while((val_x_balle==0)||(i<20)); + + Pixy_CCObjet = 0; + Pc.printf("\n\r"); + FlagPixy = 0; + wait_ms(200); + + + } + + /*if(val_x_balle>190)tour_gauche(); + + else if(val_x_balle<130) tour_droit(); + + else avancer();*/ + + } while(!Pc.readable()); MENU_choix = Pc.getc(); + En=0; break; case 5 :