//scan m1x1 slave IO status private void systemScan() { while (true) { if (keyOfIOStatus) { U32 status = 0; I16 rt = CCMNet.CS_mnet_m1_get_io_status(RingNoOfMNet, axisPara.SlaveIP, ref status); this.status.RDY = BitConverterEx.TestB(status, 0); this.status.ALM = BitConverterEx.TestB(status, 1); this.status.LimitP = BitConverterEx.TestB(status, 2); this.status.LimitN = BitConverterEx.TestB(status, 3); this.status.ORG = BitConverterEx.TestB(status, 4); this.status.DIR = BitConverterEx.TestB(status, 5); this.status.EMG = BitConverterEx.TestB(status, 6); this.status.PCS = BitConverterEx.TestB(status, 7); this.status.ERC = BitConverterEx.TestB(status, 8); this.status.ZPhase = BitConverterEx.TestB(status, 9); this.status.CLR = BitConverterEx.TestB(status, 10); this.status.Latch = BitConverterEx.TestB(status, 11); this.status.SD = BitConverterEx.TestB(status, 12); this.status.INP = BitConverterEx.TestB(status, 13); this.status.SVON = BitConverterEx.TestB(status, 14); this.status.RALM = BitConverterEx.TestB(status, 15); if (this.status.ALM || this.status.EMG) { this.status.Home = false; } Thread.Sleep(50); } } }