|
|
@ -206,8 +206,17 @@ namespace Rs.Motion
|
|
|
|
ECatIO eio = (ECatIO)io;
|
|
|
|
ECatIO eio = (ECatIO)io;
|
|
|
|
apiResult = mc_ecat.GTN_EcatIOBitReadOutput(eio.Core, eio.SlaveNo, eio.Offset, eio.Index, out byte pValue);
|
|
|
|
apiResult = mc_ecat.GTN_EcatIOBitReadOutput(eio.Core, eio.SlaveNo, eio.Offset, eio.Index, out byte pValue);
|
|
|
|
if (apiResult == 0)
|
|
|
|
if (apiResult == 0)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
if (io.IsReverse)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
return (short)((~pValue) & 0x01);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
{
|
|
|
|
return pValue;
|
|
|
|
return pValue;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
else
|
|
|
|
else
|
|
|
|
{
|
|
|
|
{
|
|
|
|
ECatIO eio = (ECatIO)io;
|
|
|
|
ECatIO eio = (ECatIO)io;
|
|
|
@ -215,8 +224,16 @@ namespace Rs.Motion
|
|
|
|
if (apiResult == 0)
|
|
|
|
if (apiResult == 0)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
byte pValue = (byte)(~(value >> eio.Index) & 0x01);
|
|
|
|
byte pValue = (byte)(~(value >> eio.Index) & 0x01);
|
|
|
|
|
|
|
|
if(io.IsReverse)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
return (short)((~pValue) & 0x01);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
else
|
|
|
|
|
|
|
|
{
|
|
|
|
return pValue;
|
|
|
|
return pValue;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else if (io.Card.Vender == "GugaoPulse")
|
|
|
|
else if (io.Card.Vender == "GugaoPulse")
|
|
|
|