fctom1215
2020-08-28 cff87234c496f0a4522cd2ac57941f14c729b6ad
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) {
            // 未按指令操作挡位,不合格