From 7c5b25c8617807635e9f272ebe9e98304d07cf2f Mon Sep 17 00:00:00 2001
From: fctom1215 <fctom1215@outlook.com>
Date: 星期五, 14 二月 2020 14:28:25 +0800
Subject: [PATCH] 增加单片机信息传递。

---
 lib/src/main/cpp/test_items/turn_a90.cpp |   29 +++++++++++++++++------------
 1 files changed, 17 insertions(+), 12 deletions(-)

diff --git a/lib/src/main/cpp/test_items/turn_a90.cpp b/lib/src/main/cpp/test_items/turn_a90.cpp
index d03e269..f76ac16 100644
--- a/lib/src/main/cpp/test_items/turn_a90.cpp
+++ b/lib/src/main/cpp/test_items/turn_a90.cpp
@@ -21,9 +21,9 @@
 
 static bool TA90Testing;
 
-static int azimuth;
+static int enterAreaHeading;
 static bool turnLeftFinished;
-static uint64_t stopTimepoint = 0;
+static uint32_t stopTimepoint = 0;
 
 static bool reportStopCarTimeout;
 static int prevMoveDirect;
@@ -34,11 +34,11 @@
 
 void StartTurnA90(int moveDirect, double heading, const struct RtkTime *rtkTime)
 {
-    azimuth = (int) heading;
+    DEBUG("杩涘叆鐩磋杞集鍦哄湴");
+    enterAreaHeading = (int) heading;
     prevMoveDirect = moveDirect;
     if (moveDirect == 0) {
-        stopTimepoint = TimeMakeComposite(2000 + rtkTime->YY, rtkTime->MM, rtkTime->DD, rtkTime->hh, rtkTime->mm, rtkTime->ss);
-        stopTimepoint = stopTimepoint * 1000 + rtkTime->mss*10;
+        stopTimepoint = TimeMakeComposite(rtkTime->hh, rtkTime->mm, rtkTime->ss, rtkTime->mss*10);
     }
     reportStopCarTimeout = false;
     crashRedLine = false;
@@ -66,8 +66,7 @@
 
     if (moveDirect != prevMoveDirect) {
         if (moveDirect == 0) {
-            stopTimepoint = TimeMakeComposite(2000 + rtkTime->YY, rtkTime->MM, rtkTime->DD, rtkTime->hh, rtkTime->mm, rtkTime->ss);
-            stopTimepoint = stopTimepoint * 1000 + rtkTime->mss*10;
+            stopTimepoint = TimeMakeComposite(rtkTime->hh, rtkTime->mm, rtkTime->ss, rtkTime->mss*10);
             reportStopCarTimeout = false;
 
             DEBUG("鍋滆溅浜� %d %d %d %d %d %d %d", rtkTime->YY, rtkTime->MM, rtkTime->DD, rtkTime->hh, rtkTime->mm, rtkTime->ss, rtkTime->mss);
@@ -76,8 +75,7 @@
         }
         prevMoveDirect = moveDirect;
     } else if (moveDirect == 0) {
-        uint64_t tp = TimeMakeComposite(2000 + rtkTime->YY, rtkTime->MM, rtkTime->DD, rtkTime->hh, rtkTime->mm, rtkTime->ss);
-        tp = tp * 1000 + rtkTime->mss * 10;
+        uint32_t tp = TimeMakeComposite(rtkTime->hh, rtkTime->mm, rtkTime->ss, rtkTime->mss*10);
 
         if (tp - stopTimepoint >= STOP_CAR_TIME && !reportStopCarTimeout) {
             // 鍋滆溅瓒�2绉掞紝姣忔鎵�5鍒�
@@ -90,14 +88,21 @@
     // 妫�鏌ヨ浆鍚戠姸鎬�
     int az = (int) heading;
 
-    if (ABS(az - azimuth) > 180) {
-        az = 360 - ABS(az-azimuth);
+    if (ABS(az - enterAreaHeading) > 180) {
+        az = 360 - ABS(az-enterAreaHeading);
     } else {
-        az = ABS(az - azimuth);
+        az = ABS(az - enterAreaHeading);
     }
+
+
 
     if (az >= 30) {
         if (!turnLeftFinished) {
+            if((( ((int)heading) + 360 - enterAreaHeading) % 360) < 180) {
+                DEBUG("鍙宠浆");
+            } else {
+                DEBUG("宸﹁浆");
+            }
             // 杞悜鐏湭寮�鍚紝鎵�10鍒�
             AddExamFault(30, rtkTime);
             DEBUG("杞悜鐏湭寮�鍚�");

--
Gitblit v1.8.0