


#ifndef _BLV_NOR_DEVFUN_H_
#define _BLV_NOR_DEVFUN_H_



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

#define SRAM_NORMAL_Device_List_Addr		0x00000C	//普通设备链表最后偏移地址

typedef enum
{
	CLOSE = 0,
	OPEN = 1,
}__attribute__ ((__packed__))uint1_t;

typedef struct{
//	uint8_t 	port_mode;				//端口模式 - 0x01:正常模式 0x02:透传模式 0x03:监控模式
//	uint8_t 	pass_state;				//透传状态机
//	uint32_t 	mode_tick;				//模式当前时间戳
//	uint32_t 	mode_outtime;			//模式超时时间
//	uint32_t 	pass_tick;				//透传当前时间戳
//	uint32_t 	pass_outtime;			//透传超时时间
//	uint32_t    baud;					//当前波特率
//	fun3_prt	BaudRateCfg;			//波特率切换函数	   
	
//	uint8_t 	Act_Start;				//Active状态机
//	uint8_t 	device_num;				//主动设备总数
//	uint8_t		process_num;			//数据处理计数
//	
//	uint32_t 	n_list_read_addr;		//当前读取的设备链表地址
//	uint32_t    Last_list_addr;			//下一个设备链表地址
//	uint32_t 	send_wait;				//发送等待时间
//	uint8_t		Process_Flag;			//处理标志
//	uint8_t 	Send_Flag;				//发送标记
//	uint8_t 	Retry_Flag;				//重发标记：发送之前置数,收到回复标记后标记清零，
//	
//	uint32_t	n_dev_waittime;			//当前设备发送等待时间
//	uint8_t 	n_retry_num;			//当前设备重发数
//	uint32_t 	n_polling_cf;			//当前设备轮询发送回调函数指针
//	uint32_t 	n_processing_cf;		//当前设备数据回调函数指针
	uint8_t 	NorDeviceNum;				//普通设备总数                     范围0~(DevActionNumMax-1)
	uint8_t   NorDevicei;         //用于遍历普通设备的参数
	
}__attribute__ ((packed))BLV_NORDEV_Manage_G;

void Add_Nor_Device_To_List2(Device_Public_Information_G *dev_info,uint8_t *dev_data,uint16_t data_len);
void BLV_Nor_Dev_ModeTask(void);


extern BLV_NORDEV_Manage_G NorDevInfoGlobal;

#endif
