WarnLight.h 2.9 KB
/**
 ********************************************************************
 * @file   WarnLight.h
 *         WarnLight的头文件
 *
 *********************************************************************
 */

/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/
#ifndef WARNLIGHT_H
#define WARNLIGHT_H

/* Includes ------------------------------------------------------------------*/
#include "JZsdk_Base/JZsdk_Code/JZsdk_Code.h"

#ifdef __cplusplus
extern "C" {
#endif

/* Exported constants --------------------------------------------------------*/
/* 常亮定义*/

/* Exported types ------------------------------------------------------------*/
typedef struct T_JzWarnLightAttribute{
    int mode; //模式
    int status;    //状态
    int Color1;     //颜色1
    int Color2;     //颜色2 
}T_JzWarnLightAttribute;


typedef struct T_JzWarnLightInfo{
    T_JzWarnLightAttribute Attribute;
    JZ_MODULE_CONTROL_WAY ControlMode; //控制模式 
    int mode_version;   //警灯式的版本
    JZ_DEVICE_PORT_TYPE Device; //控制的设备
    int FrameSequence;//是否指定特别的序列号
}T_JzWarnLightInfo;

typedef enum E_JzWarnLightColor{
    E_JZ_WARNLIGHT_COLOR_RED = 1,
    E_JZ_WARNLIGHT_COLOR_GREEN = 2,
    E_JZ_WARNLIGHT_COLOR_BLUE = 3,
    E_JZ_WARNLIGHT_COLOR_YELLOW = 4,
    E_JZ_WARNLIGHT_COLOR_WHITE = 5,
}E_JzWarnLightColor;

typedef enum E_JzWarnLightMode{
    E_JZ_WARNLIGHT_MODE_ALTERATING_FAST_FALSHING = 1,   //交替快速闪烁
    E_JZ_WARNLIGHT_MODE_ALTERATING_SLOW_FALSHING = 2,   //交替慢速闪烁
    E_JZ_WARNLIGHT_MODE_ALTERATING_UNISONG_FALSHING = 3,    //交替单色闪烁
    E_JZ_WARNLIGHT_MODE_SIMULTANEOUS_FAST_FALSHING = 4,    //同时快速闪烁
    E_JZ_WARNLIGHT_MODE_SIMULTANEOUS_SLOW_FALSHING = 5,    //同时慢速闪烁
}E_JzWarnLightMode;

typedef enum E_JzWarnLightMode2{
    E_JZ_WARNLIGHT_MODE_2_RED_BULE_WARN = 1,   //红蓝警示模式
    E_JZ_WARNLIGHT_MODE_2_YELLOW_WARN = 2,   //黄闪减速模式
    E_JZ_WARNLIGHT_MODE_2_RED_WARN = 3,   //红闪停车模式
    E_JZ_WARNLIGHT_MODE_2_GREEN_WARN = 4,   //绿闪通行模式
    E_JZ_WARNLIGHT_MODE_2_RAINBOW_WARN = 5,   //彩色闪烁模式
}E_JzWarnLightMode2;

/* Exported functions --------------------------------------------------------*/
T_JZsdkReturnCode WarnLight_Set_StatusAndMode(int status, int mode);
T_JZsdkReturnCode WarnLight_Set_Color(int Color1, int Color2);

T_JZsdkReturnCode WarnLight_Get_Attribute(T_JzWarnLightAttribute *Attribute);

T_JZsdkReturnCode WarnLight_Flush_StatusAndMode();
T_JZsdkReturnCode WarnLight_Flush_Color();

T_JZsdkReturnCode WarnLight_Obatin_StatusAndMode(int status, int mode);
T_JZsdkReturnCode WarnLight_Obatin_Color(int Color1, int Color2);

T_JZsdkReturnCode WarnLight_Init(T_JzWarnLightInfo RegInfo);
T_JZsdkReturnCode WarnLight_SendStatus(T_JzWarnLightAttribute LightAttribute, int UartPort);


#ifdef __cplusplus
}
#endif

#endif