| 123456789101112131415161718192021222324252627282930313233 | using PlcSiemens.Core.Extension;using PlcSiemens.O;using PlcSiemens.Protocol.Common;namespace PlcSiemens.Protocol.Control{    public class PlcStopParamsRequest    {        public byte Fun { get; set; }     // stop 0x29        public byte[] Uk5 { get; set; } // unknown 5 bytes 0x00        public byte Len2 { get; set; }   // Length part 2 : 0x09        public char[] Cmd { get; set; }  // ascii 'P_PROGRAM' 0x09        public ushort PacketLength        { get { return 0x10; } }        public void Build()        {            Fun = (byte)PduFuncType.PduStop;            Uk5 = new byte[] { 0x00, 0x00, 0x00, 0x00, 0x00 };            Len2 = 0x09;            Cmd = new[] { 'P', '_', 'P', 'R', 'O', 'G', 'R', 'A', 'M' };        }        public void GetByteBuffer(ByteBuffer buffer)        {            buffer.Push(Fun);            buffer.Push(Uk5);            buffer.Push(Len2);            Cmd.ForEach(t => buffer.Push((byte)t));        }    }}
 |