FRC - Hackathon Pixy
Diff: Pixy.cpp
- 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;