From c8173fa96f226ff88412d07955fb340de4681ffc Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期四, 06 三月 2025 11:21:34 +0800
Subject: [PATCH] 1.实现 CIM model change指令下发到机器。与之前的从CC link读数据逻辑稍有不同,下发指令为写数据,因此,从原CStep派生两个类,CReadStep(用于读数据),CWriteStep(用于写数据),然后根据使用场景选择合适的基数做应用层逻辑。已完成待测试验证
---
SourceCode/Bond/Servo/CStep.h | 24 +++++-------------------
1 files changed, 5 insertions(+), 19 deletions(-)
diff --git a/SourceCode/Bond/Servo/CStep.h b/SourceCode/Bond/Servo/CStep.h
index 628f116..fc6d403 100644
--- a/SourceCode/Bond/Servo/CStep.h
+++ b/SourceCode/Bond/Servo/CStep.h
@@ -1,10 +1,9 @@
#pragma once
#include "CCLinkIEControl.h"
+#include "CAttributeVector.h"
namespace SERVO {
-#define STEP_EVENT_READDATA 0x01
-#define STEP_EVENT_COMPLETE 0x02
typedef std::function<void(void* pStep, int code, void* pData)> ONSTEPEVENT;
typedef struct _StepListener
@@ -20,26 +19,21 @@
virtual ~CStep();
public:
- unsigned WorkingProc();
void setListener(StepListener listener);
void setCcLink(CCCLinkIEControl* pCcLink);
void setEquipment(CEquipment* pEquipment);
CEquipment* getEquipment();
void setName(const char* pszName);
std::string& getName();
- virtual void setWriteSignalDev(int dev);
+ virtual void getAttributeVector(CAttributeVector& attrubutes);
virtual void init();
- virtual void CStep::term();
- virtual void onSignal(BOOL bSignal);
- virtual int onReadData();
- virtual int onComplete();
- virtual int onTimeout();
+ virtual void term();
+
protected:
inline void Lock() { EnterCriticalSection(&m_criticalSection); }
inline void Unlock() { LeaveCriticalSection(&m_criticalSection); }
- inline void nextStep();
- inline void resetStep();
+ void convertString(const char* pszBuffer, int size, std::string& strOut);
protected:
StepListener m_listener;
@@ -48,14 +42,6 @@
CEquipment* m_pEquipment;
CCCLinkIEControl* m_pCclink;
CRITICAL_SECTION m_criticalSection;
- std::string strName;
- HANDLE m_hWorkThreadHandle;
- unsigned m_nWordThreadAddr;
- HANDLE m_hWorkStop;
- HANDLE m_hSignalOn;
- HANDLE m_hSignalOff;
- int m_nCurStep;
- int m_nWriteSignalDev; // 对方BIT地址
};
}
--
Gitblit v1.9.3