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;
}
}