Library for Pixy - CMUCAM5 smart camera

Dependents:   TestPixy FRC_2018 FRC2018_Bis 0hackton_08_06_18 ... more

Fork of Pixy by FRC - Hackathon

Revision:
6:f16f250fe2cb
Parent:
5:d395fe0fb0e0
Child:
7:c809db7aa1c0
--- a/Pixy.cpp	Thu May 31 17:24:52 2018 +0000
+++ b/Pixy.cpp	Wed Apr 17 10:07:52 2019 +0000
@@ -86,10 +86,10 @@
                     somme = Pixy_NMFIFO[PIXY_wNMObjet].NMbloc.signature + Pixy_NMFIFO[PIXY_wNMObjet].NMbloc.x + Pixy_NMFIFO[PIXY_wNMObjet].NMbloc.y + Pixy_NMFIFO[PIXY_wNMObjet].NMbloc.width + Pixy_NMFIFO[PIXY_wNMObjet].NMbloc.height;
 
                     if (somme == Pixy_NMFIFO[PIXY_wNMObjet].NMbloc.checksum) {  // Si le checksum est bon, on valide la réception
-                        if (PIXY_wNMObjet < 19)     PIXY_wNMObjet++;            // On incrémente le pointeur d'écriture dans la FIFO Objet
-                        else                        PIXY_wNMObjet = 0;
-                        if (PIXY_nbNMObjet < 19)    PIXY_nbNMObjet++;           // On dit que l'on a un objet de plus
-                        else                        FlagPixyOverflow = 1;       // Si on a plus de 20 objets (en attente) => Overflow
+                        if (PIXY_wNMObjet < (NM_MAXOBJECT-1))   PIXY_wNMObjet++;            // On incrémente le pointeur d'écriture dans la FIFO Objet
+                        else                                    PIXY_wNMObjet = 0;
+                        if (PIXY_nbNMObjet < (NM_MAXOBJECT-1))  PIXY_nbNMObjet++;           // On dit que l'on a un objet de plus
+                        else                                    FlagPixyOverflow = 1;       // Si on a plus de NM_MAXOBJECT objets (en attente) => Overflow
                     }
                 }
                 break;
@@ -106,10 +106,10 @@
                     somme = Pixy_CCFIFO[PIXY_wCCObjet].CCbloc.signature + Pixy_CCFIFO[PIXY_wCCObjet].CCbloc.x + Pixy_CCFIFO[PIXY_wCCObjet].CCbloc.y + Pixy_CCFIFO[PIXY_wCCObjet].CCbloc.width + Pixy_CCFIFO[PIXY_wCCObjet].CCbloc.height + Pixy_CCFIFO[PIXY_wCCObjet].CCbloc.angle;
 
                     if (somme == Pixy_CCFIFO[PIXY_wCCObjet].CCbloc.checksum) {  // Si le checksum est bon
-                        if (PIXY_wCCObjet < 19)     PIXY_wCCObjet++;            // On incrémente le pointeur d'écriture dans la FIFO CCObjet
-                        else                        PIXY_wCCObjet = 0;
-                        if (PIXY_nbCCObjet < 19)    PIXY_nbCCObjet++;           // On dit que l'on a un objet CC de plus à traiter
-                        else                        FlagPixyOverflow = 1;       // Si on a plus de 20 CC objets (en attente) => Overflow
+                        if (PIXY_wCCObjet < (CC_MAXOBJECT-1))   PIXY_wCCObjet++;            // On incrémente le pointeur d'écriture dans la FIFO CCObjet
+                        else                                    PIXY_wCCObjet = 0;
+                        if (PIXY_nbCCObjet < (CC_MAXOBJECT-1))  PIXY_nbCCObjet++;           // On dit que l'on a un objet CC de plus à traiter
+                        else                                    FlagPixyOverflow = 1;       // Si on a plus de CC_MAXOBJECT CC objets (en attente) => Overflow
                     }
                 }
                 break;
@@ -167,13 +167,13 @@
 
     if (Pixy_CCObjet !=0) {
         if (Pixy_CCFrameIsNew) {                                                //Si on est au début d'une nouvelle trame, on initialise le pointeur de lecture
-            if (Pixy_FirstCCObjet <= Pixy_CCObjet)  PIXY_rCCObjet = 20 - Pixy_CCObjet + Pixy_FirstCCObjet ;
+            if (Pixy_FirstCCObjet <= Pixy_CCObjet)  PIXY_rCCObjet = CC_MAXOBJECT - Pixy_CCObjet + Pixy_FirstCCObjet ;
             else                                    PIXY_rCCObjet = Pixy_FirstCCObjet - Pixy_CCObjet ;
             Pixy_CCFrameIsNew = 0;
         }
         dummy = Pixy_CCFIFO[PIXY_rCCObjet].CCbloc;
-        if (PIXY_rCCObjet < 19)     PIXY_rCCObjet++;                            // On incrémente le pointeur de lecture dans la FIFO CCObjet
-        else                        PIXY_rCCObjet = 0;
+        if (PIXY_rCCObjet < (CC_MAXOBJECT-1))   PIXY_rCCObjet++;                // On incrémente le pointeur de lecture dans la FIFO CCObjet
+        else                                    PIXY_rCCObjet = 0;
         Pixy_CCObjet--;                                                         // On dit que l'on a un objet CC de moins à traiter
     } else {
         dummy.signature = 0xFFFF;
@@ -188,13 +188,13 @@
 
     if (Pixy_NMObjet !=0) {
         if (Pixy_NMFrameIsNew) {                                                //Si on est au début d'une nouvelle trame, on initialise le pointeur de lecture
-            if (Pixy_FirstNMObjet <= Pixy_NMObjet)  PIXY_rNMObjet = 20 - Pixy_NMObjet + Pixy_FirstNMObjet ;
+            if (Pixy_FirstNMObjet <= Pixy_NMObjet)  PIXY_rNMObjet = NM_MAXOBJECT - Pixy_NMObjet + Pixy_FirstNMObjet ;
             else                                    PIXY_rNMObjet = Pixy_FirstNMObjet - Pixy_NMObjet ;
             Pixy_NMFrameIsNew = 0;
         }
         dummy = Pixy_NMFIFO[PIXY_rNMObjet].NMbloc;
-        if (PIXY_rNMObjet < 19)     PIXY_rNMObjet++;                            // On incrémente le pointeur de lecture dans la FIFO CCObjet
-        else                        PIXY_rNMObjet = 0;
+        if (PIXY_rNMObjet < (NM_MAXOBJECT-1))   PIXY_rNMObjet++;                // On incrémente le pointeur de lecture dans la FIFO CCObjet
+        else                                    PIXY_rNMObjet = 0;
         Pixy_NMObjet--;                                                         // On dit que l'on a un objet CC de moins à traiter
     } else {
         dummy.signature = 0xFFFF;