/********************************************************
*                                                                                                            
* 文 件 名： PSDConfigDefine.h   
* 版权说明： 北京交控科技有限公司 
* 创建时间： 2012-03-20
* 作    者： 联锁组
* 功能描述： 屏蔽门配置头文件  
* 函数包括：
* 使用注意：
* 修改记录：   
*
********************************************************/ 

#ifndef _PSD_DEFINE_H_
#define _PSD_DEFINE_H_



/*屏蔽门总数最大值*/
#define PSD_SUM_MAX                        ((UINT16)90U)     /*定义屏蔽门数量最大值*/

/*和屏蔽门关联的出站进路数目最大值*/
#define RALATED_OUT_STATION_ROUTE_SUM_MAX  ((UINT16)10U)     /*屏蔽门关联的出站进路数目最大值*/

/*屏蔽门互锁解除状态*/
#define PSD_MUTUALLOCK_REMOVE_NO                   ((UINT8)0x55U)   /*未互锁解除*/
#define PSD_MUTUALLOCK_REMOVE_YES                  ((UINT8)0xaaU)   /*互锁解除*/
#define PSD_MUTUALLOCK_REMOVE_DEFAULT              ((UINT8)0xffU)   /*互锁解除默认值*/
#define PSD_ATS_MUTUALLOCK_REMOVE_YES              ((UINT8)0x01U)   /*PSC ATS确认互锁解除*/
#define PSD_ATS_AND_JD_MUTUALLOCK_REMOVE_YES       ((UINT8)0x02U)   /*PSC ATS和继电同时确认互锁解除*/

/*屏蔽门互锁解除按钮状态*/
#define PSD_MUTUALLOCK_STATE_DOWN                ((UINT8)0x55U)   /*互锁解除按钮按下*/
#define PSD_MUTUALLOCK_STATE_UP                  ((UINT8)0xaaU)   /*互锁解除按钮未按下*/
#define PSD_MUTUALLOCK_STATE_DEFAULT             ((UINT8)0xFFU)   /*互锁解除按钮默认值*/

/*屏蔽门状态*/
#define PSD_STATE_CLOSE                    ((UINT8)0x55U)   /*关门*/
#define PSD_STATE_OPEN                     ((UINT8)0xaaU)   /*开门*/
#define PSD_STATE_CLOSE_VIETNAM            ((UINT8)0xaaU)   /*关门,越南线接口文档状态定义与燕房线不一致*/
#define PSD_STATE_OPEN_VIETNAM             ((UINT8)0x55U)   /*开门*/
#define PSD_STATE_INVALID_HLHT             ((UINT8)0xFFU)   /*无效*/

/*站台按钮状态*/
#define PSD_BUTTON_STATE_DOWN              ((UINT8)0x55U)   /*按下*/
#define PSD_BUTTON_STATE_UP                ((UINT8)0xaaU)   /*未按下*/

/*屏蔽门驱动状态*/
#define PSD_DRIVE_STATE_CLOSE              ((UINT8)0x11U)   /*关门*/
#define PSD_DRIVE_STATE_OPEN               ((UINT8)0x22U)   /*开门*/
#define PSD_DRIVE_STATE_INVALID            ((UINT8)0xffU)   /*无效*/

/*屏蔽门状态转移涉及相关状态*/
#define PSD_INITIAL_STATE                  ((UINT8)0x00U)   /*初始状态*/
#define PSD_OPEN_CMD                       ((UINT8)0x01U)   /*接收到开门命令状态*/
#define PSD_OPEN_STATE                     ((UINT8)0x02U)   /*门成功打开状态*/
#define PSD_CLOSE_CMD                      ((UINT8)0x03U)   /*接收到关门命令状态*/
#define PSD_CLOSE_STATE                    ((UINT8)0x04U)   /*门成功关闭状态*/


/*屏蔽门相关默认信息定义*/
#define PSD_INVALID_ID                    ((UINT16)0xFFFFU)      /*屏蔽门无效ID*/
#define PSD_DEFAULT_CONTROL_CMD           ((UINT8)0x00U)		  /*屏蔽门默认控制命令*/
#define PSD_DEFAULT_FAULT_ISOLATION       ((UINT32)0xFFFFFFFFU)  /*屏蔽门默认故障隔离信息*/
#define PSD_DEFAULT_ALL_OPEN_STATE        ((UINT32)0xFFFFFFFFU)  /*屏蔽门默认全部打开状态*/
#define PSD_INVALID_CMD					  ((UINT8)0xFFU)		  /*屏蔽门无效控制命令*/
#define PSD_FAULT_ISOLATION_SCX			  ((UINT8)0x81U)		  /*试车线屏蔽门设置故障隔离信息：1和8门隔离*/
#define PSD_OPEN_STATE_SCX				  ((UINT32)0xFFFFFF7EU)  /*试车线故障隔离时屏蔽门打开状态，除1和8门外，全部打开*/

/*屏蔽门驱动电源状态*/
#define PSD_DRIVE_POWER_NORMAL			  ((UINT8)0x55U)	/*驱动电源状态正常*/
#define PSD_DRIVE_POWER_ERROR			  ((UINT8)0xAAU)	/*驱动电源状态故障*/

/*屏蔽门控制电源状态*/
#define PSD_CONTROL_POWER_NORMAL		  ((UINT8)0x55U)	/*控制电源状态正常*/
#define PSD_CONTROL_POWER_ERROR			  ((UINT8)0xAAU)	/*控制电源状态故障*/

/*屏蔽门边缘控制器状态*/
#define PSD_EDGE_CONTROLLER_NORMAL		  ((UINT8)0x55U)	/*边缘控制器状态正常*/
#define PSD_EDGE_CONTROLLER_ERROR		  ((UINT8)0xAAU)	/*边缘控制器状态故障*/

/*屏蔽门障碍物报警状态*/
#define PSD_ALARM_OBS_NO				  ((UINT8)0xAAU)	/*无故障物*/
#define PSD_ALARM_OBS_YES				  ((UINT8)0x55U)	/*有故障物*/

/*屏蔽门开关门故障状态*/
#define PSD_OPEN_CLOSE_NORMAL			  ((UINT8)0x55U)	/*开关门故障状态为正常*/
#define PSD_OPEN_CLOSE_ERROR			  ((UINT8)0xAAU)	/*开关门故障状态为故障*/

/*燕房线FAO编组信息定义*/
#define PSD_FOUR_EDIT_GROUP_FAO_YF               ((UINT8)0x01U)            /*四编组*/
#define PSD_SIX_EDIT_GROUP_FAO_YF                ((UINT8)0x02U)            /*六编组*/

/*屏蔽门编组信息定义*/
#define PSD_FOUR_EDIT_GROUP               ((UINT8)0x04U)            /*四编组*/
#define PSD_SIX_EDIT_GROUP                ((UINT8)0x06U)            /*六编组*/
#define PSD_EIGHT_EDIT_GROUP              ((UINT8)0x08U)            /*八编组*/

/*办理出来的出站进路信号关闭是否在屏蔽门打开之前的标志*/
#define PSD_OPEN_BEFORE_SIG_CLOSE_YES     ((UINT8)0xaaU)     /*屏蔽门打开之前信号关闭*/
#define PSD_OPEN_BEFORE_SIG_CLOSE_NO      ((UINT8)0x55U)     /*屏蔽门打开之后信号关闭*/

#define PSD_HAVE_TRAIN_DOOR_YES			((UINT8)0x55U)			/*屏蔽门有车门信息*/
#define PSD_HAVE_TRAIN_DOOR_NO			((UINT8)0xaaU)			/*屏蔽门无车门信息*/

#define PSD_VIRTUAL_ATTR_YES			((UINT8)0x55U)			/*是虚拟屏蔽门*/
#define PSD_VIRTUAL_ATTR_NO				((UINT8)0xaaU)			/*不是虚拟屏蔽门*/

/*屏蔽门控制类型*/
#define PSD_CONTROL_TYPE_OC_P			((UINT8)0x55u)			/*由OC-P控制*/
#define PSD_CONTROL_TYPE_RCI			((UINT8)0xAAu)			/*由RCI控制*/

/*障碍物信息*/
#define PSD_REMORA_YES				((UINT8)0xAAU)			/*有障碍物*/
#define PSD_REMORA_NO				((UINT8)0x55U)			/*已检测且无障碍物*/

/*间隙探测互锁解除状态*/
#define JXTC_MUTUALLOCK_REMOVE_NO           ((UINT8)0x55U)   /*未互锁解除*/
#define JXTC_MUTUALLOCK_REMOVE_YES          ((UINT8)0xaaU)   /*互锁解除*/

/*间隙探测启动状态*/
#define JXTC_START_DETECTION_NO           ((UINT8)0x55U)   /*未启动探测*/
#define JXTC_START_DETECTION_YES          ((UINT8)0xaaU)   /*已启动探测*/

#define JXTC_STOP_DETECTION_NO           ((UINT8)0x55U)   /*未停止探测*/
#define JXTC_STOP_DETECTION_YES          ((UINT8)0xaaU)   /*已停止探测*/

/*站台开门按钮状态*/
#define PSD_OPEN_BUTTON_STATE_VALID              ((UINT8)0x55U)   /*有效*/
#define PSD_OPEN_BUTTON_STATE_INVALID            ((UINT8)0xaaU)   /*无效*/

/*站台发车按钮状态*/
#define PLATFORM_DEPAR_BUTTON_STATE_VALID              ((UINT8)0x55U)   /*有效*/
#define PLATFORM_DEPAR_BUTTON_STATE_INVALID			   ((UINT8)0xaaU)   /*无效*/
#define PLATFORM_DEPAR_BUTTON_NO		               ((UINT8)0xccU)   /*无站台发车按钮*/

/*站台按钮旁路状态*/
#define PSD_BUTTON_PANGLU_STATE_VALID              ((UINT8)0x55U)   /*有效*/
#define PSD_BUTTON_PANGLU_STATE_INVALID			   ((UINT8)0xaaU)   /*无效*/

/*VOBC2CI车门关闭且锁闭*/
#define PSD_DOOR_CLOSEDANDLOCKED_VALID        ((UINT8)0x55U)         /*VOBC2CI车门关闭且锁闭有效*/
#define PSD_DOOR_CLOSEDANDLOCKED_INVALID	  ((UINT8)0xAAU)         /*VOBC2CI车门关闭且锁闭无效*/

/*站台按钮默认状态*/
#define PSD_RELATED_BUTTON_STATE_DEFAULT		((UINT8)0xFFU)

/*屏蔽门状态更新方式*/
#define PSD_STATE_FROM_VOBC		((UINT8)0x55U)
#define PSD_STATE_FROM_PSC		((UINT8)0xaaU)

/*PSC范围的PSD旁路状态确认*/
#define CI_PSC_PL_CONFIRM_NO   ((UINT8)0x55U)  /*PSC旁路状态未确认*/
#define CI_PSC_PL_CONFIRM_YES  ((UINT8)0xaaU)  /*PSC旁路状态已确认*/

#define JXTC_NO_DRIVE_STATE       ((UINT8)0x01U)   /*间隙探测步骤1：开始驱动启动、停止继电器吸起*/
#define JXTC_DRIVE_UP_KEEP_STATE  ((UINT8)0x02U)   /*间隙探测步骤2：驱动启动、停止继电器吸起保持；超时驱动落下状态*/
#define JXTC_DRIVE_DOWN_STATE     ((UINT8)0x03U)   /*间隙探测步骤3：采集启动、停止继电器落下状态*/

#define JXTC_DRIVE_START_STOP_YES      ((UINT8)0x01U)  /*已驱动启动或停止一次*/
#define JXTC_DRIVE_START_STOP_NO       ((UINT8)0x00U)  /*不驱动启动或停止*/

/*发送CIM屏蔽门报警相关*/
#define PSD_OPEN_OUT_TIME		    ((UINT8)0x55U)/*驱动开门未开门*/
#define PSD_CLOSE_OUT_TIME			((UINT8)0xaaU)/*驱动关门未关门*/

#define PSD_OPEN_DRVANDCOLL_DIFF		    ((UINT8)0x55U)/*开门驱动采集不一致*/
#define PSD_CLOSE_DRVANDCOLL_DIFF			((UINT8)0xaaU)/*关门驱动采集不一致*/

/*站台清客相关*/
#define ATS_TO_CI_PLATFORM_QK_NO   ((UINT8)0x55U)  /*ATS未发送联锁站台清客*/
#define ATS_TO_CI_PLATFORM_QK_YES  ((UINT8)0xaaU)  /*ATS发送联锁站台清客*/

#define QK_BUTTON_STEADY_LIGHT_NO   ((UINT8)0x55U)  /*清客按钮未驱过稳灯标志*/
#define QK_BUTTON_STEADY_LIGHT_YES  ((UINT8)0xaaU)  /*清客按钮已驱过稳灯标志*/

/*清客确认箱PCB按钮状态*/
#define QK_PSD_BUTTON_STATE_DOWN              ((UINT8)0x55U)   /*按下*/
#define QK_PSD_BUTTON_STATE_UP                ((UINT8)0xaaU)   /*未按下*/

/*清客确认箱PDB按钮指示灯闪灯状态*/
#define QK_BUTTON_FLASH_LIGHT_NO   ((UINT8)0x55U)  /*清客确认箱PDB按钮指示灯不驱动闪灯标志*/
#define QK_BUTTON_FLASH_LIGHT_YES  ((UINT8)0xaaU)  /*清客确认箱PDB按钮指示灯驱动闪灯标志*/

/*视频清客相关*/
#define VIDEO_QK_STATE_TESTING     ((UINT8)0x55U)  /*视频清客状态—检测中*/
#define VIDEO_QK_STATE_DEFAULT     ((UINT8)0xffU)  /*视频清客状态—默认*/

#define VIDEO_QK_RESULT_TESTNO       ((UINT8)0x55U)  /*视频清客结果—已检测无人*/
#define VIDEO_QK_RESULT_TESTHAVE     ((UINT8)0xaaU)  /*视频清客结果—已检测有人*/
#define VIDEO_QK_RESULT_TESTDEFAULT  ((UINT8)0xffU)  /*视频清客结果—默认*/

#define VIDEO_QK_DRIVE_STATE_NO       ((UINT8)0x55U)  /*视频清客驱动状态—无人*/
#define VIDEO_QK_DRIVE_STATE_HAVE     ((UINT8)0xaaU)  /*视频清客驱动状态—有人*/
#define VIDEO_QK_DRIVE_STATE_TESTING  ((UINT8)0xccU)  /*视频清客驱动状态—检测中*/
#define VIDEO_QK_DRIVE_STATE_INVALID  ((UINT8)0xffU)  /*视频清客驱动状态—无效*/

/*屏蔽门异常打开状态*/
#define PSD_EXCEPT_OPEN_NO            ((UINT8)0xAAU)   /*未异常打开*/
#define PSD_EXCEPT_OPEN_YES           ((UINT8)0x55U)   /*异常打开*/

/*OC-P旁路状态确认*/
#define OC_PSC_PL_CONFIRM_YES  ((UINT8)0xaaU)  /*OC-P旁路状态已确认*/
#define OC_PSC_PL_CONFIRM_NO   ((UINT8)0x55U)  /*OC-P旁路状态未确认*/

/*获取屏蔽门信息*/
#define HIGH_FOUR_CHAR			((UINT8)0U)		/*高四字节*/
#define LOW_FOUR_CHAR			((UINT8)1U)		/*低四字节*/

#endif
