From 276074e350f64ec8b71d0573a9936c075a345270 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期二, 01 七月 2025 15:42:50 +0800
Subject: [PATCH] 1.VCR结果上报,测试OK; 2.Aligner和Measurement的Panel data上报。

---
 SourceCode/Bond/Servo/CMeasurement.cpp    |   17 +++++++++++++++++
 SourceCode/Bond/Servo/CEquipment.cpp      |    2 +-
 SourceCode/Bond/Servo/CEFEM.cpp           |    1 +
 SourceCode/Bond/Servo/CVcrEventReport.cpp |    4 ++--
 SourceCode/Bond/Servo/CBonder.cpp         |   17 -----------------
 5 files changed, 21 insertions(+), 20 deletions(-)

diff --git a/SourceCode/Bond/Servo/CBonder.cpp b/SourceCode/Bond/Servo/CBonder.cpp
index f927d55..3c42d87 100644
--- a/SourceCode/Bond/Servo/CBonder.cpp
+++ b/SourceCode/Bond/Servo/CBonder.cpp
@@ -349,23 +349,6 @@
 		}
 
 		{
-			// Panel Data Report
-			CEqReadStep* pStep = new CEqReadStep(0xA17f, 386 * 2,
-				[&](void* pFrom, int code, const char* pszData, size_t size) -> int {
-					if (code == ROK && pszData != nullptr && size > 0) {
-						decodePanelDataReport((CStep*)pFrom, pszData, size);
-					}
-					return -1;
-				});
-			pStep->setName(STEP_EQ_PANEL_DATA_REPORT);
-			pStep->setProp("Port", (void*)1);
-			pStep->setWriteSignalDev(0x45e);
-			if (addStep(STEP_ID_PANEL_DATA_REPORT, pStep) != 0) {
-				delete pStep;
-			}
-		}
-
-		{
 			// FAC Data Report
 			CEqReadStep* pStep = new CEqReadStep(0xA60E, 108 * 2,
 				[&](void* pFrom, int code, const char* pszData, size_t size) -> int {
diff --git a/SourceCode/Bond/Servo/CEFEM.cpp b/SourceCode/Bond/Servo/CEFEM.cpp
index 8175eed..fdaf6c1 100644
--- a/SourceCode/Bond/Servo/CEFEM.cpp
+++ b/SourceCode/Bond/Servo/CEFEM.cpp
@@ -473,6 +473,7 @@
 			pStep->setName(STEP_EQ_VCR1_EVENT_REPORT);
 			pStep->setProp("Port", (void*)1);
 			pStep->setWriteSignalDev(0x4a);
+			pStep->setReturnDev(0x91e);
 			if (addStep(STEP_ID_VCR1_EVENT_REPORT, pStep) != 0) {
 				delete pStep;
 			}
diff --git a/SourceCode/Bond/Servo/CEquipment.cpp b/SourceCode/Bond/Servo/CEquipment.cpp
index 9b3ea67..bef7c8d 100644
--- a/SourceCode/Bond/Servo/CEquipment.cpp
+++ b/SourceCode/Bond/Servo/CEquipment.cpp
@@ -1619,7 +1619,7 @@
 		index += sizeof(short);
 		CToolUnits::convertString(&pszData[index], 128 * 2, strPanelJudgeData);
 		index += 128 * 2;
-		CToolUnits::convertString(&pszData[index], 256 * 2, strPanelJudgeData);
+		CToolUnits::convertString(&pszData[index], 256 * 2, strPanelGradeData);
 		index += 256 * 2;
 
 
diff --git a/SourceCode/Bond/Servo/CMeasurement.cpp b/SourceCode/Bond/Servo/CMeasurement.cpp
index 5ed1588..f69f7a6 100644
--- a/SourceCode/Bond/Servo/CMeasurement.cpp
+++ b/SourceCode/Bond/Servo/CMeasurement.cpp
@@ -363,6 +363,23 @@
 				delete pStep;
 			}
 		}
+
+		{
+			// Panel Data Report
+			CEqReadStep* pStep = new CEqReadStep(0x1A17f, 386 * 2,
+				[&](void* pFrom, int code, const char* pszData, size_t size) -> int {
+					if (code == ROK && pszData != nullptr && size > 0) {
+						decodePanelDataReport((CStep*)pFrom, pszData, size);
+					}
+					return -1;
+				});
+			pStep->setName(STEP_EQ_PANEL_DATA_REPORT);
+			pStep->setProp("Port", (void*)1);
+			pStep->setWriteSignalDev(0x105e);
+			if (addStep(STEP_ID_PANEL_DATA_REPORT, pStep) != 0) {
+				delete pStep;
+			}
+		}
 	}
 
 	// 必须要实现的虚函数,在此初始化Slot信息
diff --git a/SourceCode/Bond/Servo/CVcrEventReport.cpp b/SourceCode/Bond/Servo/CVcrEventReport.cpp
index 248cd03..9741a11 100644
--- a/SourceCode/Bond/Servo/CVcrEventReport.cpp
+++ b/SourceCode/Bond/Servo/CVcrEventReport.cpp
@@ -46,7 +46,7 @@
 
 	int CVcrEventReport::serialize(char* pszBuffer, int nBufferSize)
 	{
-		if (nBufferSize < 640) return -1;
+		if (nBufferSize < 30) return -1;
 
 		int index = 0;
 		int strLen = min(20, m_strGlassId.size());
@@ -73,7 +73,7 @@
 
 	int CVcrEventReport::unserialize(const char* pszBuffer, int nBufferSize)
 	{
-		if (nBufferSize < 640) return -1;
+		if (nBufferSize < 30) return -1;
 
 		int index = 0;
 		CToolUnits::convertString(&pszBuffer[index], 20, m_strGlassId);

--
Gitblit v1.9.3