

#ifndef _BLV_NOR_DEV_H_
#define _BLV_NOR_DEV_H_


#include "stdint.h"
#include "BLV_485_Protocol.h"
#include "BLV_All_Dev_Init.h"


#define  RFGatewayHostNetRead      0x01     //读
#define  RFGatewayHostNetWrite     0x02     //写
#define  RFGatewayHostNetFree      0x00     //空闲

#define  RFGATEWAYADDRDEFAULT      0x01     //主网关默认地址

#define       RFGATEWAYHEADLEN    0x06                 //无线网关协议头
#define       RFGATEWAYOFFSET    0x07      //无线偏移量

#define  RFGATEWAYHOSTTYPE         0x00     //主网关类型     	
#define  RFGATEWAYDOORTYPE         0x01     //门磁类型     	
#define  RFGATEWAYPIRTYPE          0x02     //红外类型   
#define  RFGATEWAYSERIALTYPE       0x03     //485透传设备  从网关
#define  RFGATEWAYRELAYPIRTYPE     0x04     //继电器红外类型   
#define  RFGATEWAYCARDTYPE         0x05     //插卡取电类型   
#define  RFGATEWAYSTRIPTYPE        0x06     //灯带类型            控制3路
#define  RFGATEWAYLEDTYPE          0x06     //调光类型            控制2路
#define  RFGATEWAYSWTTYPE          0x07     //开关类型            控制4路
#define  RFGATEWAYVOICETYPE        0x08     //语音模块类型        
#define  RFGATEWAYTEMTYPE          0x09     //温控器类型            控制4路
#define  RFGATEWAYLOCKTYPE         0x0A     //无线微信锁类型 
#define  RFGATEWAYCURTAINTYPE      0x0B     //无线窗帘类型 

#define  SERIALRFCMD                 0x06   //主机下发给网关,透传数据


//typedef struct RFGatewayHost_INFO* 		RFGatewayHost_INFOP;     //定义开关结构体指针

typedef struct //RFGatewayHost_INFO
{
	BLV_COMM_RECORD_G comm_record;		//通讯记录
	
	/*配置设备参数开始*/
//	uint8_t RFGatewayHostChannelCfg;  //配置传过来的参数
	/*配置设备参数结束*/
	
	/*本地设备参数开始*/
	uint8_t DevSendCnt;     //设备发送计数   计数达到重发次数都没有回复，判为离线  占4位
	uint8_t DevOffline;       //设备离线标志 1，设备离线   0，设备在线             占2位
	uint8_t DevOfflineLast;       //设备离线标志 1，设备离线   0，设备在线         占2位
	
	uint8_t   RFGatewaySn;               //无线网关Sn号
	
	uint8_t   RFGatewayHostChannelRef;    //参考
	uint8_t   RFGatewayHostChannel;           //通道地址
	uint8_t   RFGatewayHostNetCtrlFlag;       //主网关网络控制标志，上电就会置读，如果状态不一致就变成写
	uint32_t  RFGatewayHostCycleTime;        //当前时间
	/*本地设备参数结束*/

}__attribute__ ((__packed__))RFGatewayHost_INFO;

void BLW_RS485_RF_GatewayHost_Init(uint8_t devaddr);    
void BLW_RS485_RF_GatewayHost_Logic_Init(LOGICFILE_DEVICE_INFO *dev_info,uint8_t *data,uint16_t data_len);


#endif






