/// <summary> /// Create a OpSpec that writes on to the iso18k6b tag memory /// </summary> /// <param name="tagOperation"> Tag operation</param> /// <returns>PARAM_ThingMagicISO180006BWrite</returns> private PARAM_ThingMagicISO180006BWrite BuildIso180006bWriteTagDataOpSpec(Iso180006b.WriteData tagOperation) { PARAM_ThingMagicISO180006BWrite iso18k6bWriteTagaData = new PARAM_ThingMagicISO180006BWrite(); //Set the protocol to iso18k6b ParamSet("/reader/tagop/protocol", TagProtocol.ISO180006B); //Byte address iso18k6bWriteTagaData.ByteAddress = Convert.ToUInt16(tagOperation.Address.ToString("X")); //Data to be written iso18k6bWriteTagaData.WriteData = LTKD.ByteArray.FromHexString(ByteFormat.ToHex((byte [])tagOperation.Data).Split('x')[1].ToString()); //Set the OpSpecID to a unique number. iso18k6bWriteTagaData.OpSpecID = ++OpSpecID; return iso18k6bWriteTagaData; }
/// <summary> /// Create a OpSpec that Lock a byte of memory on an ISO180006B tag /// </summary> /// <param name="tagOperation"> Tag operation</param> /// <returns>PARAM_ThingMagicISO180006BLock</returns> private PARAM_ThingMagicISO180006BLock BuildIso180006bLockTagOpSpec(Iso180006b.LockTag tagOperation) { PARAM_ThingMagicISO180006BLock iso18k6bLockTag = new PARAM_ThingMagicISO180006BLock(); //Set the protocol to iso18k6b ParamSet("/reader/tagop/protocol", TagProtocol.ISO180006B); //Byte address iso18k6bLockTag.Address = Convert.ToByte(tagOperation.Address.ToString("X") ); //Set the OpSpecID to a unique number. iso18k6bLockTag.OpSpecID = ++OpSpecID; return iso18k6bLockTag; }
/// <summary> /// Create a OpSpec that reads tag memory /// </summary> /// <param name="tagOperation"> Tag operation</param> /// <returns>PARAM_ThingMagicISO180006BRead</returns> private PARAM_ThingMagicISO180006BRead BuildIso180006bReadDataOpSpec(Iso180006b.ReadData tagOperation) { PARAM_ThingMagicISO180006BRead iso18k6bRead = new PARAM_ThingMagicISO180006BRead(); //Set the protocol to iso18k6b ParamSet("/reader/tagop/protocol", TagProtocol.ISO180006B); //Byte address iso18k6bRead.ByteAddress = Convert.ToUInt16(tagOperation.byteAddress.ToString("X")); //Byte length iso18k6bRead.ByteLen = (ushort)tagOperation.length; //Set the OpSpecID to a unique number. iso18k6bRead.OpSpecID = ++OpSpecID; return iso18k6bRead; }