From 829fe6c6bc33d53fda9c31fd45a37e1df87befff Mon Sep 17 00:00:00 2001
From: mrDarker <mr.darker@163.com>
Date: 星期五, 30 一月 2026 11:16:24 +0800
Subject: [PATCH] Merge branch 'clh' into liuyang

---
 SourceCode/Bond/Servo/Common.h |  146 +++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 124 insertions(+), 22 deletions(-)

diff --git a/SourceCode/Bond/Servo/Common.h b/SourceCode/Bond/Servo/Common.h
index e723756..41b56e7 100644
--- a/SourceCode/Bond/Servo/Common.h
+++ b/SourceCode/Bond/Servo/Common.h
@@ -16,7 +16,15 @@
 #define RX_CODE_ALARM_SET				1008
 #define RX_CODE_ALARM_CLEAR				1009
 #define RX_CODE_EQ_DATA_CHANGED			1010
+#define RX_CODE_MASTER_STATE_CHANGED	1011
+#define RX_CODE_EQ_ROBOT_TASK			1012
+#define RX_CODE_LOADPORT_STATUS_CHANGED	1014
+#define RX_CODE_CONTROL_STATE_CHANGED	1015
+#define RX_CODE_CONTROLJOB_CHANGED		1016
 
+/* 软件侧 ALID */
+#define ALID_SOFTWARE_PAUSE_EVENT		9000
+#define ALID_SOFTWARE_TEST_ALARM		9099
 
 /* Channel Name */
 #define MC_CHANNEL1_NAME		"McChannel1"
@@ -26,15 +34,26 @@
 #define APPDLG_BACKGROUND_COLOR				RGB(255, 255, 255)
 #define LOGDLG_BACKGROUND_COLOR				RGB(255, 255, 255)
 #define PANEL_MASTER_BACKGROUND_COLOR		RGB(255, 255, 255)
+#define PANEL_PRODUCTION_BACKGROUND_COLOR	RGB(255, 255, 255)
 #define PANEL_ATTRIBUTES_BACKGROUND_COLOR	RGB(255, 255, 255)
 #define PANEL_EQUIPMENT_BACKGROUND_COLOR	RGB(255, 255, 255)
 #define PAGE_GRPAH1_BACKGROUND_COLOR		RGB(255, 255, 255)
 #define PAGE_GRPAH2_BACKGROUND_COLOR		RGB(255, 255, 255)
 #define EQ_BOX_OFFLINE						RGB(222, 222, 222)
 #define EQ_BOX_ONLINE						RGB(0, 176, 80)
+#define EQ_BOX_OCCUPIED                     RGB(255, 127, 39)
 #define EQ_BOX_FRAME1						RGB(22, 22, 22)
 #define EQ_BOX_FRAME2						RGB(255, 127, 39)
-
+#define CR_MSGBOX_BKGND						RGB(7, 71, 166)
+#define CR_MSGBOX_TITLE						RGB(200, 216, 246)
+#define CR_MSGBOX_MESSAGE					RGB(200, 216, 246)
+#define TOP_TOOLBAR_BACKGROUND				RGB(240, 240, 240)	
+#define STATUSBAR_BK_NORMAL					RGB(195, 195, 195)
+#define STATUSBAR_BK_STARTING				RGB(58, 127, 78)
+#define STATUSBAR_BK_RUNNING				RGB(34, 177, 76)
+#define STATUSBAR_BK_ALARM					RGB(255, 127, 39)
+#define CIM_STATUS_BK_SELECTED				STATUSBAR_BK_RUNNING
+#define CIM_STATUS_BK_DISCONNECTED			STATUSBAR_BK_NORMAL
 
 /* LOG BTN */
 #define BTN_LOG_FRAME_NORMAL			RGB(88, 88, 88)
@@ -53,23 +72,66 @@
 #define BTN_ALARM_BKGND_PRESS			RGB(133, 203, 225)
 
 /* Equipment ID */
-#define EQ_ID_EFEM				1
-#define EQ_ID_Bonder1			2
-#define EQ_ID_Bonder2			3
-#define EQ_ID_LOADPORT1			4
-#define EQ_ID_LOADPORT2			5
-#define EQ_ID_LOADPORT3			6
-#define EQ_ID_LOADPORT4			7
+#define EQ_ID_LOADPORT1			1
+#define EQ_ID_LOADPORT2			2
+#define EQ_ID_LOADPORT3			3
+#define EQ_ID_LOADPORT4			4
+#define EQ_ID_ARM_TRAY1			5
+#define EQ_ID_ARM_TRAY2			6
+#define EQ_ID_ALIGNER			7
 #define EQ_ID_FLIPER			8
 #define EQ_ID_VACUUMBAKE		9
-#define EQ_ID_ALIGNER			10
-#define EQ_ID_BAKE_COOLING		11
-#define EQ_ID_MEASUREMENT		12
-#define EQ_ID_ARM				13
-#define EQ_ID_ARM_TRAY1			14
-#define EQ_ID_ARM_TRAY2			15
-#define EQ_ID_OPERATOR_REMOVE	999
+#define EQ_ID_Bonder1			10
+#define EQ_ID_Bonder2			11
+#define EQ_ID_BAKE_COOLING		12
+#define EQ_ID_MEASUREMENT		13
+#define EQ_ID_EFEM				100
+#define EQ_ID_ARM				101
+#define EQ_ID_OPERATOR_REMOVE	102
 
+/* Equipment Name */
+#define EQ_NAME_LOADPORT1			"LoadPort1"
+#define EQ_NAME_LOADPORT2			"LoadPort2"
+#define EQ_NAME_LOADPORT3			"LoadPort3"
+#define EQ_NAME_LOADPORT4			"LoadPort4"
+#define EQ_NAME_ARM_TRAY1			"ArmTray1"
+#define EQ_NAME_ARM_TRAY2			"ArmTray2"
+#define EQ_NAME_ALIGNER				"Aligner"
+#define EQ_NAME_FLIPER				"Fliper"
+#define EQ_NAME_VACUUMBAKE			"VacuumBake"
+#define EQ_NAME_BONDER1				"Bonder1"
+#define EQ_NAME_BONDER2				"Bonder2"
+#define EQ_NAME_BAKE_COOLING		"BakeCooling"
+#define EQ_NAME_MEASUREMENT			"Measurement"
+#define EQ_NAME_EFEM				"EFEM"
+#define EQ_NAME_ARM					"Arm"
+#define EQ_NAME_OPERATOR_REMOVE		"OperatorRemove"
+
+// 设备元信息结构体
+struct DeviceMetaInfo {
+	int nDeviceID;
+	const char* strDeviceName;  // 指针,仅指向常量字符串
+};
+
+// 全局设备元信息列表
+static const DeviceMetaInfo g_allDeviceMetaInfos[] = {
+	{EQ_ID_LOADPORT1, EQ_NAME_LOADPORT1},
+	{EQ_ID_LOADPORT2, EQ_NAME_LOADPORT2},
+	{EQ_ID_LOADPORT3, EQ_NAME_LOADPORT3},
+	{EQ_ID_LOADPORT4, EQ_NAME_LOADPORT4},
+	{EQ_ID_ARM_TRAY1, EQ_NAME_ARM_TRAY1},
+	{EQ_ID_ARM_TRAY2, EQ_NAME_ARM_TRAY2},
+	{EQ_ID_ALIGNER,   EQ_NAME_ALIGNER},
+	{EQ_ID_FLIPER,    EQ_NAME_FLIPER},
+	{EQ_ID_VACUUMBAKE, EQ_NAME_VACUUMBAKE},
+	{EQ_ID_Bonder1, EQ_NAME_BONDER1},
+	{EQ_ID_Bonder2, EQ_NAME_BONDER2},
+	{EQ_ID_BAKE_COOLING, EQ_NAME_BAKE_COOLING},
+	{EQ_ID_MEASUREMENT, EQ_NAME_MEASUREMENT},
+	{EQ_ID_EFEM, EQ_NAME_EFEM},
+	{EQ_ID_ARM, EQ_NAME_ARM},
+	{EQ_ID_OPERATOR_REMOVE, EQ_NAME_OPERATOR_REMOVE},
+};
 
 /* step name */
 #define STEP_MODE						_T("EQMode")
@@ -210,7 +272,7 @@
 #define STEP_EQ_STORED_JOB15			_T("EQStoredJobReport15")
 #define STEP_EQ_DISPATCHINT_MODE_CHANGE	_T("EQDispatchingModeChangeCommand")
 #define STEP_EFEM_ROBOT_CMD				_T("EFEMRobotCmd")
-#define STEP_EFEM_IN_OP_MODE_CHANGE		_T("EFEMIndexerOperationModeChangeCommand")
+#define STEP_EQ_IN_OP_MODE_CHANGE		_T("EQIndexerOperationModeChangeCommand")
 #define STEP_PORT1_TYPE_CHANGE			_T("Port1TypeChange")
 #define STEP_PORT2_TYPE_CHANGE			_T("Port2TypeChange")
 #define STEP_PORT3_TYPE_CHANGE			_T("Port3TypeChange")
@@ -235,7 +297,11 @@
 #define STEP_PORT2_CASSETTE_TYPE_CHANGE	_T("Port2CassetteTypeChange")
 #define STEP_PORT3_CASSETTE_TYPE_CHANGE	_T("Port3CassetteTypeChange")
 #define STEP_PORT4_CASSETTE_TYPE_CHANGE	_T("Port4CassetteTypeChange")
-
+#define STEP_EQ_PANEL_DATA_REPORT		_T("EQPanelDataReport")
+#define STEP_EQ_FAC_DATA_REPORT			_T("EQFacDataReport")
+#define STEP_EFEM_PANEL_DATA_REQUEST	_T("EFEMPanelDataRequest")
+#define STEP_EQ_JOB_PROCESS_START_REPORT	_T("EQJobProcessStartReport")
+#define STEP_EQ_JOB_PROCESS_END_REPORT		_T("EQJobProcessEndReport")
 
 /* Step ID */
 #define STEP_ID_CIMMODE_CHANGED_CMD_REPLY		0x550
@@ -259,6 +325,7 @@
 #define STEP_ID_VCR1_EVENT_REPORT				0x56A
 #define STEP_ID_MASTER_RECIPE_LIST_REPORT		0x56B
 #define STEP_ID_RECIPE_PARAMETER_REPORT			0x56C
+#define STEP_ID_FAC_DATA_REPORT					0x56D
 #define STEP_ID_RECIVE_JOB_UPS1					0x580
 #define STEP_ID_RECIVE_JOB_UPS2					0x581
 #define STEP_ID_RECIVE_JOB_UPS3					0x582
@@ -307,6 +374,11 @@
 #define STEP_ID_FETCHED_OUT_JOB_REPORT13		0x5BB
 #define STEP_ID_FETCHED_OUT_JOB_REPORT14		0x5BC
 #define STEP_ID_FETCHED_OUT_JOB_REPORT15		0x5BD
+#define STEP_ID_JOB_PROCESS_START_REPORT		0x5BF
+#define STEP_ID_JOB_PROCESS_END_REPORT			0x5C0
+#define STEP_ID_JOB_DATA_REQUEST				0x5C1
+#define STEP_ID_PANEL_DATA_REQUEST				0x5D0
+#define STEP_ID_PANEL_DATA_REPORT				0x5D1
 #define STEP_ID_IN_OP_CMD_REPLY					0x5F0
 #define STEP_ID_DISPATCHING_MODE_CHANGE_REPLY	0x5F1
 #define STEP_ID_PORT1_TYPE_CHANGE				0x600
@@ -381,6 +453,10 @@
 #define STEP_ID_PROT2_CASSETTE_TYPE_CHANGE_REPLY	0x699
 #define STEP_ID_PROT3_CASSETTE_TYPE_CHANGE_REPLY	0x69A
 #define STEP_ID_PROT4_CASSETTE_TYPE_CHANGE_REPLY	0x69B
+#define STEP_ID_PROT1_CASSETTE_CTR_CMD_REPLY		0x6A0
+#define STEP_ID_PROT2_CASSETTE_CTR_CMD_REPLY		0x6A1
+#define STEP_ID_PROT3_CASSETTE_CTR_CMD_REPLY		0x6A2
+#define STEP_ID_PROT4_CASSETTE_CTR_CMD_REPLY		0x6A3
 #define STEP_ID_ROBOT_CMD_REPLY						0x6b0
 
 
@@ -402,12 +478,7 @@
 
 
 /* 流程控制相关代码 */
-#define FLOW_REJECT					0x0
-#define FLOW_ACCEPT					0x1
 #define FLOW_TEST					0x1000
-#define FLOW_SIGNAL					0x1001
-#define FLOW_DATA					0x1002
-#define FLOW_MOVE_MATERIAL			0x1003
 
 
 /* Port Status */
@@ -480,3 +551,34 @@
 #define RT_REQUEST_FROM_EAS		4
 
 
+ /* Robot Task Status */
+#define ROBOT_EVENT_CREATE		0   // 新任务创建
+#define ROBOT_EVENT_FINISH		1   // 正常完成
+#define ROBOT_EVENT_ERROR		2   // 出现错误
+#define ROBOT_EVENT_ABORT		3   // 人为中止
+#define ROBOT_EVENT_RESTORE		4   // 回撤
+
+
+/* PPID名字最大长度 */
+#define PPID_NAME_MAX			80
+
+
+/* 解除警告 按钮 */
+#define BTN_ALARM_OFF_FRAME_NORMAL		RGB(88, 88, 88)
+#define BTN_ALARM_OFF_FRAME_HOVER		RGB(88, 88, 88)
+#define BTN_ALARM_OFF_FRAME_PRESS		RGB(88, 88, 88)
+#define BTN_ALARM_OFF_BKGND_NORMAL		RGB(255, 127, 39)
+#define BTN_ALARM_OFF_BKGND_HOVER		RGB(255, 157, 59)
+#define BTN_ALARM_OFF_BKGND_PRESS		RGB(255, 100, 29)
+
+/* 静音按钮 */
+#define BTN_SOUND_OFF_FRAME_NORMAL		RGB(88, 88, 88)
+#define BTN_SOUND_OFF_FRAME_HOVER		RGB(88, 88, 88)
+#define BTN_SOUND_OFF_FRAME_PRESS		RGB(88, 88, 88)
+#define BTN_SOUND_OFF_BKGND_NORMAL		RGB(255, 127, 39)
+#define BTN_SOUND_OFF_BKGND_HOVER		RGB(255, 157, 59)
+#define BTN_SOUND_OFF_BKGND_PRESS		RGB(255, 100, 29)
+#define BTN_SOUND_ON_BKGND_NORMAL		RGB(100, 200, 100)
+#define BTN_SOUND_ON_BKGND_HOVER		RGB(150, 250, 150)
+#define BTN_SOUND_ON_BKGND_PRESS		RGB(50, 150, 50)
+

--
Gitblit v1.9.3