/// <summary> /// Constructs an encoded command frame. /// </summary> /// <param name="commandCode"> /// Command code. See <see cref="CommandCodes"/>. /// </param> /// <returns> /// Constructed and encoded command frame. /// </returns> public static byte[] ConstructCommandFrame(CommandCodes commandCode) { byte[] decodedFrame = new byte[12] { (byte)FrameStart.Sart1, (byte)FrameStart.Start2, (byte)commandCode, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, (byte)FrameStop.Stop1, (byte)FrameStop.Stop2 }; decodedFrame = InsertChecksum(decodedFrame); return(FrameEncoding.EncodeFrame(decodedFrame)); }
/// <summary> /// /// </summary> /// <param name="configData"></param> /// <returns></returns> public static byte[] ConstructWriteConfigDataFrame(FrameConfigDataModel configData) { byte[] decodedFrame = new byte[12] { (byte)FrameStart.Sart1, (byte)FrameStart.Start2, (byte)configData.Address, 0x04, (byte)(configData.Data1_2 >> 8), (byte)(configData.Data1_2 & 0x00FF), (byte)(configData.Data3_4 >> 8), (byte)(configData.Data3_4 & 0x00FF), 0x00, 0x00, (byte)FrameStop.Stop1, (byte)FrameStop.Stop2 }; // TODO : ajouter dans la trame l'id et les datas decodedFrame = InsertChecksum(decodedFrame); return(FrameEncoding.EncodeFrame(decodedFrame)); }
/// <summary> /// /// </summary> /// <param name="exerciceData"></param> /// <returns></returns> public static byte[] ConstructWriteExerciceDataFrame(FrameExerciceDataModel exerciceData) { byte[] decodedFrame = new byte[12] { (byte)FrameStart.Sart1, (byte)FrameStart.Start2, (byte)exerciceData.Address, 0x04, exerciceData.Data1, exerciceData.Data2, exerciceData.Data3, exerciceData.Data4, 0x00, 0x00, (byte)FrameStop.Stop1, (byte)FrameStop.Stop2 }; // TODO : ajouter dans la trame l'id et les datas decodedFrame = InsertChecksum(decodedFrame); return(FrameEncoding.EncodeFrame(decodedFrame)); }