| 123456789101112131415161718192021222324252627282930313233343536373839 | using PlcSiemens.Core.Extension;using PlcSiemens.O;using PlcSiemens.Protocol.Common;namespace PlcSiemens.Protocol.Control{    public class PlcHotStartParamsRequest    {        public byte Fun;     // start 0x28        public byte[] Uk7; // unknown 7        public ushort Len1;   // Length part 1 : 0x0002        //public ushort SFun;    // 'C ' 0x4320        public byte Len2;   // Length part 2 : 0x09        public char[] Cmd;  // ascii 'P_PROGRAM'        public ushort PacketLength = 0x14;        public void Build()        {            Fun = (byte)PduFuncType.PduStart;            Uk7 = new byte[] { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFD };            Len1 = 0x0000;            //SFun = 0x00;            Len2 = 0x09;            Cmd = new[] { 'P', '_', 'P', 'R', 'O', 'G', 'R', 'A', 'M' };        }        public void GetByteBuffer(ByteBuffer buffer)        {            buffer.Push(Fun);            buffer.Push(Uk7);            buffer.Push(Len1);            //buffer.Push(SFun);            buffer.Push(Len2);            Cmd.ForEach(t => buffer.Push((byte)t));        }    }}
 |