/******************************base.cpp文件说明********************************** * Descript :源文件,包含项目所需要使用的Xnet函数的实现 * Author :caitiancheng * Date :2021_12_19 *******************************************************************************/ /******************************************头文件***********************************************/ #include "base.h" /****************************ConStatus函数********************************* Function :读从站连接状态 Output :从站连接状态 *********************************************************************/ bool Base::ConStatus() { bool Ok=true; short Res; Read_Short(XNet_SD,8020,1,&Res); if(Res==1) { Ok=true; }else { Ok=false; } return Ok; } /****************************SalveStatus函数********************************* Function :读从站状态 Output :返回读出的值 *********************************************************************/ int Base::SalveStatus() { short Res; Read_Short(XNet_SD,8021,1,&Res); return Res; } /****************************WriteMBool函数********************************* Function :写M寄存器的值 Output : *********************************************************************/ void Base::WriteMBool(int start,bool ok) { Write_Bool(XNet_M,start,1,ok); } /****************************WriteDShort函数********************************* Function :写D寄存器short型(单字)的值 Output : *********************************************************************/ void Base::WriteDShort(int start,short value) { Write_Short(XNet_D,start,1,value); } /****************************WriteDInt函数********************************* Function :写D寄存器int型(双字)的值 Output : *********************************************************************/ void Base::WriteDInt(int start,int value) { Write_Int(XNet_D,start,2,value); } /****************************WriteSDShort函数********************************* Function :写SD寄存器short型的值 Output : *********************************************************************/ void Base::WriteSDShort(int start,int value) { Write_Short(XNet_SD,start,2,value); } /****************************WriteSFDInt函数********************************* Function :写SFD寄存器int型的值 Output : *********************************************************************/ void Base::WriteSFDInt(int start,int value) { Write_Int(XNet_SFD,start,2,value); } /****************************ReadSFDInt函数********************************* Function :读SFD寄存器int型的值 Output :返回读出的值 *********************************************************************/ int Base::ReadSFDInt(int Addr) { int ResValue; Read_Int(XNet_SFD,Addr,2,&ResValue); return ResValue; } /****************************ReadSMBool函数********************************* Function :读SM寄存器的值 Output :返回读出的值 *********************************************************************/ bool Base::ReadSMBool(int Addr) { bool ResValue; Read_Bool(XNet_SM,Addr,1,&ResValue); return ResValue; } /****************************ReadSDShort函数********************************* Function :读SD寄存器的值 Output :返回读出的值 *********************************************************************/ short Base::ReadSDShort(int Addr) { short ResValue; Read_Short(XNet_SD,Addr,1,&ResValue); return ResValue; }