From cff87234c496f0a4522cd2ac57941f14c729b6ad Mon Sep 17 00:00:00 2001
From: fctom1215 <fctom1215@outlook.com>
Date: 星期五, 28 八月 2020 01:05:09 +0800
Subject: [PATCH] 坐标

---
 lib/src/main/cpp/test_items2/operate_gear.cpp |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/lib/src/main/cpp/test_items2/operate_gear.cpp b/lib/src/main/cpp/test_items2/operate_gear.cpp
index 5a81d6b..73de9c3 100644
--- a/lib/src/main/cpp/test_items2/operate_gear.cpp
+++ b/lib/src/main/cpp/test_items2/operate_gear.cpp
@@ -15,6 +15,7 @@
 
 static int expectGear;
 static int upDownShift;
+static int oldGear;
 
 static int setup;
 
@@ -46,6 +47,9 @@
     if (setup == 0) {
         return true;
     } else if (setup == 1) {
+        if (sensor.value != GEAR_N)
+            oldGear = sensor.value;
+
         switch (sensor.value) {
             case GEAR_1: {
                 expectGear = GEAR_2;
@@ -84,7 +88,7 @@
             }
         }
     } else if (setup == 2) {
-        if (sensor.value == GEAR_N) {
+        if (sensor.value == GEAR_N || sensor.value == oldGear) {
 
         } else if (sensor.value != expectGear) {
             // 鏈寜鎸囦护鎿嶄綔鎸′綅锛屼笉鍚堟牸
@@ -93,11 +97,12 @@
             return false;
         } else {
             // 鍦ㄦ鎸′綅琛岄┒涓�瀹氳窛绂伙紝鍐嶆墽琛屼笅涓�涓�
+            oldGear = expectGear;
             shiftTime = *rtkTime;
             setup = 3;
         }
     } else if (setup == 3) {
-        if (TimeGetDiff(&shiftTime, rtkTime) >= D_SEC(5)) {
+        if (TimeGetDiff(&shiftTime, rtkTime) >= D_SEC(4)) {
             setup = 4;
             char buff[128];
             expectGear += 0 - upDownShift;
@@ -105,7 +110,7 @@
         }
     } 
     else if (setup == 4) {
-        if (sensor.value == GEAR_N) {
+        if (sensor.value == GEAR_N || sensor.value == oldGear) {
 
         } else if (sensor.value != expectGear) {
             // 鏈寜鎸囦护鎿嶄綔鎸′綅锛屼笉鍚堟牸

--
Gitblit v1.8.0