📄 nu_bm_api.h
字号:
#ifndef NU_BM_API_H
#define NU_BM_API_H
#include "Nu_Types.h"
#include "Nu_SYS_API.h"
#define NUM_OF_LIGHT_ROW 9
#define NUM_OF_LIGHT_COLUMN 52
#define UNLOCK 0
#define OTHER_LOCK 1
#define SELF_LOCK 2
#define NU_COUNTERREPORT_ID 0x0100
#define NU_LINKSTATUSREPORT_ID 0x80FC
#define NU_BOARDSTATUSREPORT_ID 0x0500
#define NU_PORTSTATUSREPORT_ID 0x0E00
#define NU_NUM_OF_MEMBERMAP 4
#define NU_MFILLTXPKT_NODE_LEN 1000
/*******************************************************************************
* ++ Packet Format Structure ++
******************************************************************************/
// SETUPGROUP Packet Format
typedef struct{
UI32_T grp_chasid;
UI32_T membermap[NU_NUM_OF_MEMBERMAP];
UI8_T groupid;
}BM_SETUPGROUP_T;
// SETRXXTRAILER Packet Format
typedef struct{
BOOLEAN_T enable_DI;
BOOLEAN_T enable_serialnum;
UI16_T DI_offset;
}BM_SETRXXTRAILER_T;
// SETUPPORTSTATUS Packet Format
typedef struct{
UI32_T pstatus_chasid;
UI32_T membermap[NU_NUM_OF_MEMBERMAP];
}BM_SETUPPORTSTATUS_T;
//---------------------------------------------------------------------------
#define NUM_OF_MODULE 16
#define MAX_NUM_OF_PORT 70
//---------------------------------------------------------------------------
typedef struct{
I8_T modulename[30];
I8_T lockfilename[30];
I8_T groupfilename[30];
UI32_T threshold[12];
//UI32_T num_of_testitem;
}ModuleInfo_T;
typedef struct{
UI8_T groupid;
UI16_T chasid;
UI8_T boardid;
UI8_T portid;
UI16_T cardtype;
UI16_T item_is_used;
I32_T lightindex;
UI8_T portstatus; //0: unlock, 1: other client lock, 2: self lock
UI8_T linkstatus;
time_t linkdown_time;
BOOLEAN_T linkdown_flag;
}PortInfo_T;
typedef struct{
UI64_T TxPkt;
UI64_T TxByte;
UI64_T RxPkt;
UI64_T RxByte;
UI64_T RxCRCErr;
UI64_T RxChkSumErr;
UI64_T RxAlignErr;
UI64_T RxOverSize;
UI64_T RxUnderSize;
UI64_T RxDribbleErr;
}Counter_T;
// MFILLTXPKTID Packet Format
typedef struct{
UI8_T company_mac[3];
UI8_T mode;
UI32_T frame_cnt;
UI32_T frame_gap;
UI16_T frame_len;
UI16_T frame_len_ctrl;
UI16_T frame_len_bgn;
UI16_T frame_len_end;
UI16_T payload_ctrl;
UI16_T DI_offset;
UI8_T Tx_ctrl;
UI8_T backoff_ctu;
UI8_T backoff_delay_time;
UI8_T backoff_cnt;
UI16_T frame_type;
UI8_T ether_type_len[2];
UI32_T burst_cnt;
UI32_T interburst_gap;
UI16_T frame_gap_ctrl;
UI16_T frame_gap_bgn;
UI16_T frame_gap_end;
UI16_T reserved;
UI8_T node[NU_MFILLTXPKT_NODE_LEN];
}BM_MFILLTXPKT_T;
// STARTTRIGGERCOUNTER Packet Format
typedef struct{
UI32_T trigger1_offset;
UI32_T trigger2_offset;
UI32_T trigger3_offset;
UI32_T trigger4_offset;
UI8_T trigger1[6];
UI8_T trigger2[6];
UI8_T trigger3[6];
UI8_T trigger4[6];
UI16_T trigger1_len;
UI16_T trigger2_len;
UI16_T trigger3_len;
UI16_T trigger4_len;
UI32_T trigger_ctrl;
}BM_STARTTGRCTR_T;
// SETLOOPBACK Packet Format
typedef struct{
UI8_T mode;
UI8_T speed;
}BM_SETLOOPBACK_T;
// LINKSTATUSREPORT Packet Format
typedef struct{
UI16_T chasid;
UI8_T boardid;
UI8_T portid;
UI8_T linkstatus;
UI8_T force_flag;
}BM_LINKSTATUSREPORT_T;
/*******************************************************************************
* ++ Broadcast and Multicast API Function ++
******************************************************************************/
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_MediaType(UI8_T, UI16_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_FillTxPkt(UI8_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_StartTxPkt(UI8_T, UI16_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_StopTxPkt(UI8_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_PauseTxPkt(UI8_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_ResumeTxPkt(UI8_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_StopRxCapture(UI8_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_StartCounterStatistics(UI8_T, UI16_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_ClearCounterStatistics(UI8_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_ReadCounterStatistics(UI8_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_StopCounterStatistics(UI8_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_LinkStatus(UI8_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_BoardStatus(UI8_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_WritePhy(UI8_T, UI16_T, UI16_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_ReadPhy(UI8_T, UI16_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_SetRxXTrailer(UI8_T, BM_SETRXXTRAILER_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_GetRxXTrailer(UI8_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_StartTriggerCounter(UI8_T, BM_STARTTGRCTR_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_StopTriggerCounter(UI8_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_SetTimeStamp(UI8_T, UI32_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_SetLoopBack(UI8_T, BM_SETLOOPBACK_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_StopAutoARPReply(UI8_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_PauseControl(UI8_T, BOOLEAN_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_MFillTxPkt(UI8_T, BM_MFILLTXPKT_T);
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_SetupGroup_RdFile(I8_T []); // Broadcast only
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_SetupGroup(BM_SETUPGROUP_T); // Broadcast only
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_LockPortStatus(BM_SETUPPORTSTATUS_T); // Broadcast only
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_LockPortStatus_RdFile(I8_T []); // Broadcast only
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_ForceLockPortStatus(BM_SETUPPORTSTATUS_T); //Broadcast only
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_ForceLockPortStatus_RdFile(I8_T []); // Broadcast only
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_UnLockPortStatus(BM_SETUPPORTSTATUS_T); // Broadcast only
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_UnLockPortStatus_RdFile(I8_T []); // Broadcast only
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_ForceUnLockPortStatus(BM_SETUPPORTSTATUS_T); // Broadcast only
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_ForceUnLockPortStatus_RdFile(I8_T []); // Broadcast only
extern "C" __declspec (dllimport) BOOLEAN_T __stdcall Nu_CheckTxEnd(UI8_T, UI16_T);
/*******************************************************************************
* -- Broadcast and Multicast API Function --
******************************************************************************/
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -