byte[] plc_data = new byte[1024];
public void SetDouble(int addr, int value)
{
for (int i = 0; i < plc_data.Length; i++)
{
if (i == (addr - 4200) * 2 + 11)
{
// byte는 8bit 이므로 256으로 나눠서 넣어야 한다.
// 하위 비트를 먼저 쓰고 상위 비트를 나중에 쓴다.
// PLC는 주소 하나에 16bit임. byte 2개
plc_data[i] = Convert.ToByte(value % 256);
plc_data[i + 1] = Convert.ToByte(value / 256);
break;
}
}
}
public void SetDouble(int addr, int value)
{
for (int i = 0; i < plc_data.Length; i++)
{
if (i == (addr - 4200) * 2 + 11)
{
// byte는 8bit 이므로 256으로 나눠서 넣어야 한다.
// 하위 비트를 먼저 쓰고 상위 비트를 나중에 쓴다.
// PLC는 주소 하나에 16bit임. byte 2개
plc_data[i] = Convert.ToByte(value % 256);
plc_data[i + 1] = Convert.ToByte(value / 256);
break;
}
}
}
댓글