⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 zlp.cpp

📁 modbus通讯原代码工程程序
💻 CPP
字号:
#include "zlp.H"

extern int GetYKYTCmdInfoFromHMI(CChannel *tempCh,CSystemPara *sp);
extern void OnYKYT(CChannel *tempCh,CSystemPara *sp, int type);
extern void ReleaseMem(CChannel *tempCh);
extern void OnNormal(CChannel *tempCh, CSystemPara *sp);
extern void RcvDGram(CChannel *tempCh, CSystemPara *sp);
extern void SendDGram(CChannel *tempCh, CSystemPara *sp);

//
UINT WINAPI GetMaxRecLen (CChannel *tempCh)
{
	tempCh->ChanRcvLen = MAX_RECV_LEN;
	tempCh->GenInvChanNum = CHAN_GZ_NUM;
	tempCh->bChanConTime = CHAN_CON_TIME;
	tempCh->bChanComTime = chancomtime[tempCh->channel.GetBaudRate()];

	return MAX_RECV_LEN;
}

//
void WINAPI ChanCom (CChannel *tempCh, CSystemPara *sp)
{
	INCS;

	if(tempCh->nWaitRcv)
		RcvDGram(tempCh,sp);
	SendDGram(tempCh,sp);

	OUTCS;
}

//
void WINAPI ChanCon (CChannel *tempCh, CSystemPara *sp)
{
	INCS;

	if(tempCh->ChanGPara[2]==0xFF)
	{// 退出前释放内存
		ReleaseMem(tempCh);
		OUTCS;
		return;
	}

	BYTE nYKYTCmd = GetYKYTCmdInfoFromHMI(tempCh,sp);
	switch(nYKYTCmd)
	{
	case NULL_YKYT:		
	case CANCEL_YK:
	case CANCEL_YT:
		break;
	case SELECT_YK:
	case EXECUTE_YK:	
	case SELECT_YT:
	case EXECUTE_YT:
		OnYKYT(tempCh,sp,nYKYTCmd);
		OUTCS;
		return;	
	}
	
	if(tempCh->scflag!=ALREADYSEND)
	{// 上次组的报文报文尚未发送
		OUTCS;
		return;
	}

	OnNormal(tempCh,sp);

	OUTCS;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -