From d1aa8faa0632de2dafb7d081a3a93a3c2d4f8962 Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期二, 24 六月 2025 17:36:22 +0800
Subject: [PATCH] 1.与EFEM对接调试Port Command(Type Change、Mode Change、Transfer Mode Change、Enable Mode Change、Type Auto Change、Cassette Type Change)并修改完善代码。 2.增加Recive Able信号的获取,并以此作为能否放料的逻辑判断依据。 3.配方获取完善,待测。
---
SourceCode/Bond/Servo/CPortStatusReport.cpp | 41 +++++++++++++++++++++++++++++++++++++++++
1 files changed, 41 insertions(+), 0 deletions(-)
diff --git a/SourceCode/Bond/Servo/CPortStatusReport.cpp b/SourceCode/Bond/Servo/CPortStatusReport.cpp
index 6b2b7ca..03864e2 100644
--- a/SourceCode/Bond/Servo/CPortStatusReport.cpp
+++ b/SourceCode/Bond/Servo/CPortStatusReport.cpp
@@ -176,6 +176,34 @@
std::to_string(m_nCassetteStatus).c_str(), "", weight++));
}
+ void CPortStatusReport::serialize(CArchive& ar)
+ {
+ if (ar.IsStoring()) {
+ ar << m_nPortStatus;
+ ar << m_nCassetteSequenceNo;
+ WriteString(ar, m_strCassetteID);
+ for (int i = 0; i < 12; i++) {
+ ar << m_nJobExistenceSlot[i];
+ }
+ ar << m_nLoadingCassetteType;
+ ar << m_nQTimeFlag;
+ ar << m_nCassetteMappingState;
+ ar << m_nCassetteStatus;
+ }
+ else {
+ ar >> m_nPortStatus;
+ ar >> m_nCassetteSequenceNo;
+ ReadString(ar, m_strCassetteID);
+ for (int i = 0; i < 12; i++) {
+ ar >> m_nJobExistenceSlot[i];
+ }
+ ar >> m_nLoadingCassetteType;
+ ar >> m_nQTimeFlag;
+ ar >> m_nCassetteMappingState;
+ ar >> m_nCassetteStatus;
+ }
+ }
+
bool CPortStatusReport::canPickFromPort()
{
// 1. Port 状态必须是 Load Ready(上料请求)
@@ -208,5 +236,18 @@
return false;
}
+
+ void CPortStatusReport::WriteString(CArchive& ar, std::string& string)
+ {
+ CString strTemp = string.c_str();
+ ar << strTemp;
+ }
+
+ void CPortStatusReport::ReadString(CArchive& ar, std::string& string)
+ {
+ CString strTemp;
+ ar >> strTemp;
+ string = (LPTSTR)(LPCTSTR)strTemp;
+ }
}
--
Gitblit v1.9.3