/******************************************************************************** * File Name: MBCross.h * Function Describe: Header file for MBCross.c * Explain: * Writer:SLW * Date: ********************************************************************************/ #ifndef __MBCROSS_H #define __MBCROSS_H /******************************Begin*********************************************/ #define PACK_HEAD0 0xAB #define PACK_HEAD1 0xCD //0x01表示关闭红外探测器,0x02表示打开红外探测器,0x03表示关闭视频模块,0x04表示打开视频模块,占1个字节,0x05表示软件复位 #define CMD_INFRARED_CLOSE 0x01 #define CMD_INFRARED_OPEN 0x02 #define CMD_CAMERA_CLOSE 0x03 #define CMD_CAMERA_OPEN 0x04 #define CMD_SOFT_RESET 0x05 #define TC_DATA_MAX_LEN 180 //透传传感器数据最大长度 3字节一组传感器,180字节相当于60组传感器 typedef struct SUT_CROSS { unsigned char InfraredEn; unsigned char CameraEn; }SUT_CROSS; //------------------------------------------------------------------------------- //以下为主板发送过来,待传服务器的数据结构 typedef struct __sendTestdat_t { unsigned char NetMode;//当前网络模式: 1—4G网络 2—LAN网络(卫星) unsigned char CSQ;//4G 信号i昂都 unsigned char Infrared; //红外总使能状态,对应第21字节 unsigned char Camera; //视频总使能状态,对应第22字节 unsigned char InfraredEn;//红外总使能控制,异步操作,服务器下行命令先修改此值,然后收到主机发过来的数据后再发此命令给主机 unsigned char CameraEn;//视频总使能控制,异步操作,服务器下行命令先修改此值,然后收到主机发过来的数据后再发此命令给主机 unsigned char ResetEn;//复位使能,只执行1次 unsigned char OnceRecvFlag;//曾经收到过标志 double Longitude ;//经度 double Latitude;//纬度 unsigned short Speed;//速度 unsigned short Aspect;//方位 unsigned short TcLen;//TC 透传数据长度 unsigned short RecvReady;//0未接受过 1已接受过 unsigned short RecvIdelCt;//收不到数据计时器 60秒收不到,重启 unsigned char TcUpdated;//更新TC标志 1发生了变更 0 未发生 unsigned char TcData[TC_DATA_MAX_LEN]; }__attribute__((packed)) sendTestdat_t;// extern sendTestdat_t sutTestData; //将主板(RS485)发过来的数据pData解码到pSendTest中 int DecodecFromMB(unsigned char *pData,sendTestdat_t *pSendTest); void SendCmdToMB(unsigned char Cmd); /******************************End***********************************************/ #endif