Messa in campo 4 file - 26/06/2020 Francia

Dependencies:   mbed X_NUCLEO_IHM03A1_for

Fork of FORIGO_Modula_V7_3_VdcStep_maggio2020 by Francesco Pistone

Revision:
33:81b406a911b6
Parent:
32:cfc3d7420fa5
Child:
34:eb04f4f41dfd
--- a/main.cpp	Thu Jun 20 07:56:35 2019 +0000
+++ b/main.cpp	Thu Jun 20 08:35:20 2019 +0000
@@ -1165,67 +1165,75 @@
                 canDataCheck=1;
             }
         }
-        if (tractorSpeed_MtS_timed <= 0.01f){
+        //if (tractorSpeed_MtS_timed <= 0.01f){
             if (rxMsg.id==RX_Configure) {
                 uint8_t flags = rxMsg.data[0];
                 if ((flags&0x80)==0x80) {   // comando taglianylon
-                    tagliaNylonAttivo=true;
+                    if (oldTagliaNylon==false){
+                        tagliaNylonAttivo=true;
+                        oldTagliaNylon=true;
+                    }
                 } else {
-                    tagliaNylonAttivo=false;
-                    uint16_t steps = (uint32_t) rxMsg.data[2]*0x00000100;
-                    steps = steps + ((uint32_t)rxMsg.data[1]);
-                    TBmotorSteps =steps;
-                    //stepSetting();
-                    cellsCountSet = rxMsg.data[3];
-                    if ((flags&0x01)==0x01) {
-                        if (encoder==false) {
-                            encoder=true;
-                            speedFromPick=0;
-                            DcEncoder.rise(NULL);
-                            dcSetting();
-                        }
-                    } else {
-                        if (encoder==true) {
-                            encoder=false;
-                            speedFromPick=1;
-                            DcEncoder.rise(NULL);
-                            dcSetting();
-                        }
+                    if (oldTagliaNylon==true){
+                        tagliaNylonAttivo=false;
+                        oldTagliaNylon=false;
                     }
-                    if ((flags&0x02)==0x02) {
-                        tankLevelEnable=true;
-                    } else {
-                        tankLevelEnable=false;
-                    }
-                    if ((flags&0x04)==0x04) {
-                        seedSensorEnable=true;
-                    } else {
-                        seedSensorEnable=false;
-                    }
-                    if ((flags&0x08)==0x08) {
-                        drumSelect=true;     // usare per selezione del tamburo =0 meccanico =1 PNEUMATICO
-                    } else {
-                        drumSelect=false;    // forzato a true per Germania
+                    if ((tagliaNylonAttivo==false)&&(tractorSpeed_MtS_timed<=0.01f)){
+                        uint16_t steps = (uint32_t) rxMsg.data[2]*0x00000100;
+                        steps = steps + ((uint32_t)rxMsg.data[1]);
+                        TBmotorSteps =steps;
+                        //stepSetting();
+                        cellsCountSet = rxMsg.data[3];
+                        if ((flags&0x01)==0x01) {
+                            if (encoder==false) {
+                                encoder=true;
+                                speedFromPick=0;
+                                DcEncoder.rise(NULL);
+                                dcSetting();
+                            }
+                        } else {
+                            if (encoder==true) {
+                                encoder=false;
+                                speedFromPick=1;
+                                DcEncoder.rise(NULL);
+                                dcSetting();
+                            }
+                        }
+                        if ((flags&0x02)==0x02) {
+                            tankLevelEnable=true;
+                        } else {
+                            tankLevelEnable=false;
+                        }
+                        if ((flags&0x04)==0x04) {
+                            seedSensorEnable=true;
+                        } else {
+                            seedSensorEnable=false;
+                        }
+                        if ((flags&0x08)==0x08) {
+                            drumSelect=true;     // usare per selezione del tamburo =0 meccanico =1 PNEUMATICO
+                        } else {
+                            drumSelect=false;    // forzato a true per Germania
+                        }
+                        if ((flags&0x10)==0x10) {
+                            canDataCheckEnable=true;
+                        } else {
+                            canDataCheckEnable=false;
+                        }
+                        if ((flags&0x20)==0x20) {
+                            tamburoStandard=1;
+                        } else {
+                            tamburoStandard=0;
+                        }
+                        if ((flags&0x40)==0x40) {
+                            currentCheckEnable=true;
+                        } else {
+                            currentCheckEnable=false;
+                        }
+                        aggiornaParametri();
                     }
-                    if ((flags&0x10)==0x10) {
-                        canDataCheckEnable=true;
-                    } else {
-                        canDataCheckEnable=false;
-                    }
-                    if ((flags&0x20)==0x20) {
-                        tamburoStandard=1;
-                    } else {
-                        tamburoStandard=0;
-                    }
-                    if ((flags&0x40)==0x40) {
-                        currentCheckEnable=true;
-                    } else {
-                        currentCheckEnable=false;
-                    }
-                    aggiornaParametri();
                 }
             }
-        }
+        //}
     }
     #endif
     #if defined(overWriteCanSimulation)