using System; using System.Collections.Generic; using System.Linq; using System.Runtime.InteropServices; using System.Text; namespace RCUHost.Protocols { /// /// 空调设置 Packet 服务器 -> RCU /// [StructLayout(LayoutKind.Sequential, Pack = 1)] public struct AirConditionSettingPacket { /// /// 空调编号 /// public byte AirNo; /// /// 开关机:0/关,1/开 /// public byte OnOff; /// /// 设定温度 /// public byte SettingTemp; /// /// 补偿温度:范围 -6.0~6.0,存放格式 值*10 /// public byte CompensatoryTemp; /// /// 风速:0/停止, 1/低速, 2/中速, 3/高速, 4/自动 /// public byte Speed; /// /// 模式: 0/制冷,1/制热,2/送风,3/除湿 /// public byte Mode; /// /// 是否锁定温度:0/否,1/是 /// public byte IsLockTemp; /// /// 锁定温度 /// public byte LockTemp; /*************温控器设置*************************************************************/ /// /// 保温温度 /// public byte KeepTemp; /// /// 初始温度 /// public byte InitTemp; /// /// 最高温度 /// public byte HighTemp; /// /// 最低温度 /// public byte LowerTemp; /// /// 冷热转换延时,单位:秒 /// public byte ColdHotSwitchDelayTime; /// /// 手自模式:0/手动,1/自动 /// public byte ColdHotMode; /// /// 死区温度 /// public byte DeadTemp; /// /// 热偏差 /// public byte HotDevition; /// /// 冷偏差 /// public byte ColdDevition; /// /// 欢迎模式时间(分钟) /// public byte WelcomeTime; /// /// 是否关联房态:0/否,1/是 /// public byte RelateRoomStatus; /// /// 是否关联门磁:0/否,1/是 /// public byte RelateDoorContact; /// /// 温度到达停止风机运行:0/否,1/是 /// public byte FanStop; /// /// 禁止风机高速运行:0/否,1/是 /// public byte DisableFanHighSpeed; /*************睡眠温度设置*************************************************************/ /// /// 睡眠启用标志 /// public byte SleepFlag; /// /// 睡眠开始时间 byte0:小时, byte1:分钟 /// [MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2)] public byte[] SleepStartTime; /// /// 睡眠结束时间 byte0:小时, byte1:分钟 /// [MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2)] public byte[] SleepEndTime; /// /// 睡眠模式偏差 /// public byte SleepDevition; /*************空调定时设置*************************************************************/ /// /// 定时启用标志 /// public byte TimeFlag; /// /// 定时开始时间1 byte0:小时, byte1:分钟 /// [MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2)] public byte[] TimeStartTime1; /// /// 定时结束时间1 byte0:小时, byte1:分钟 /// [MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2)] public byte[] TimeEndTime1; /// /// 定时开始时间2 byte0:小时, byte1:分钟 /// [MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2)] public byte[] TimeStartTime2; /// /// 定时结束时间2 byte0:小时, byte1:分钟 /// [MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2)] public byte[] TimeEndTime2; /// /// 定时开始时间3 byte0:小时, byte1:分钟 /// [MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2)] public byte[] TimeStartTime3; /// /// 定时结束时间3 byte0:小时, byte1:分钟 /// [MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst = 2)] public byte[] TimeEndTime3; /*************其它*************************************************************/ /// /// CRC16 /// public ushort CRC; } }