/// <summary> /// 读整模块参数 /// </summary> /// <typeparam name="T">类型</typeparam> /// <param name="data"></param> /// <param name="structure"></param> /// <param name="step"></param> /// <param name="count"></param> public void ReadRegister <T>(BaseData data, Object structure, ref int step, ref int count) { switch (step) { case 0: ushort number = (ushort)(BytesConverter.ObjToBytes(structure).Length / 2); ushort address = data.Address; data = new BaseData(address, number, DataType.Byte); ReadRegister(data); step = 1; break; case 1: if (data.Succeed) { structure = BytesConverter.BytesToObj <T>(data.ByteValue); } else if (Succeed) { count++; if (count > 15) { count = 0; step = 0; } } break; default: break; } }