📄 nu_xm23l4g_api.h
字号:
#ifndef NU_XM23L4G_API_H
#define NU_XM23L4G_API_H
#include "Nu_Types.h"
#include "Nu_SYS_API.h"
#define XM23L4G_COUNTERREPORT_ID 0x0100
#define XM23L4G_PKTCAPTURED_ID 0x0200
#define XM23L4G_LINKSTATUSREPORT_ID 0x80FC
#define XM23L4G_BOARDSTATUSREPORT_ID 0x0500
#define XM23L4G_PINGREPORT_ID 0x0700
#define XM23L4G_NICMODERXPKTREPORT_ID 0x1300
#define XM23L4G_CARDTYPE 10
#define XM23L4G_PADPATTERN_LEN 512
/* *****************************************************************************
* ++ XM23L4G Packet Format Structure ++
******************************************************************************/
// FILLTXPKT Packet Format
typedef struct{
UI16_T chasid;
UI8_T boardid;
UI8_T portid;
UI8_T DA[6];
UI8_T SA[6];
UI8_T DA_mask[8];
UI16_T DA_ctrl;
UI32_T DA_loop_cnt;
UI32_T DA_step_cnt;
UI8_T SA_mask[8];
UI16_T SA_ctrl;
UI32_T SA_loop_cnt;
UI32_T SA_step_cnt;
UI8_T ether_type_len[2];
BOOLEAN_T Tx_vlan_frame;
UI8_T vlan_tag[4];
UI8_T vlan_tag_mask[4];
UI16_T vlan_cos_ctrl;
UI16_T vlan_vid_ctrl;
UI16_T vlan_cos_loop_cnt;
UI16_T vlan_vid_loop_cnt;
BOOLEAN_T Tx_IP_frame;
UI16_T IPhdr_tos;
UI16_T IPhdr_id;
UI16_T IPhdr_frag;
UI16_T IPhdr_ttl;
UI16_T IPhdr_protocol;
UI8_T IPhdr_DIP[4];
UI8_T IPhdr_SIP[4];
UI16_T SIP_ctrl;
UI16_T SIP_step;
UI16_T SIP_loop_cnt;
UI16_T DIP_ctrl;
UI16_T DIP_step;
UI16_T DIP_loop_cnt;
UI16_T IP_tos_ctrl;
UI16_T IP_tos_loop_cnt;
UI16_T IP_tos_step;
UI16_T Tx_ctrl;
UI16_T DI_offset;
UI32_T frame_cnt;
UI16_T frame_len_ctrl;
UI16_T frame_len;
UI16_T frame_len_bgn;
UI16_T frame_len_end;
UI8_T frame_len_mask[4];
UI16_T frame_gap_ctrl;
UI32_T frame_gap;
UI32_T frame_gap_bgn;
UI32_T frame_gap_end;
UI8_T frame_gap_mask[4];
UI16_T preamble_cnt;
UI16_T payload_ctrl;
UI16_T backoff_ctu;
UI16_T backoff_cnt;
UI16_T backoff_delay_time;
UI8_T user_pad_patn[XM23L4G_PADPATTERN_LEN];
}XM23L4G_TXOP_T;
// STARTRXCAPTURE Packet Format
typedef struct{
UI16_T chasid;
UI8_T boardid;
UI8_T portid;
UI32_T trigger1_offset;
UI32_T trigger2_offset;
UI32_T trigger3_offset;
UI32_T trigger4_offset;
UI32_T trigger5_offset;
UI32_T trigger6_offset;
UI32_T trigger7_offset;
UI32_T trigger8_offset;
UI8_T trigger1[6];
UI8_T trigger2[6];
UI8_T trigger3[6];
UI8_T trigger4[6];
UI8_T trigger5[4];
UI8_T trigger6[4];
UI8_T trigger7[4];
UI8_T trigger8[4];
UI16_T trigger1_len;
UI16_T trigger2_len;
UI16_T trigger3_len;
UI16_T trigger4_len;
UI16_T trigger5_len;
UI16_T trigger6_len;
UI16_T trigger7_len;
UI16_T trigger8_len;
UI32_T trigger_ctrl;
UI8_T Trigger1_ctrl;
UI8_T Trigger2_ctrl;
UI8_T Trigger3_ctrl;
UI8_T Trigger4_ctrl;
UI8_T Trigger5_ctrl;
UI8_T Trigger6_ctrl;
UI8_T Trigger7_ctrl;
UI8_T Trigger8_ctrl;
}XM23L4G_RXOP_T;
// PING Packet Format
typedef struct{
UI16_T chasid;
UI8_T boardid;
UI8_T portid;
UI8_T DIP[4];
UI8_T SIP[4];
UI32_T num_of_ping;
}XM23L4G_PING_T;
// SETRXXTRAILER Packet Format
typedef struct{
UI16_T chasid;
UI8_T boardid;
UI8_T portid;
BOOLEAN_T enable_DI;
BOOLEAN_T enable_serialnum;
UI16_T DI_offset;
}XM23L4G_SETRXXTRAILER_T;
// StartUDFCounter Packet Format
typedef struct{
UI16_T chasid;
UI8_T boardid;
UI8_T portid;
UI32_T trigger1_offset;
UI32_T trigger2_offset;
UI32_T trigger3_offset;
UI32_T trigger4_offset;
UI32_T trigger5_offset;
UI32_T trigger6_offset;
UI32_T trigger7_offset;
UI32_T trigger8_offset;
UI8_T trigger1[6];
UI8_T trigger2[6];
UI8_T trigger3[6];
UI8_T trigger4[6];
UI8_T trigger5[4];
UI8_T trigger6[4];
UI8_T trigger7[4];
UI8_T trigger8[4];
UI16_T trigger1_len;
UI16_T trigger2_len;
UI16_T trigger3_len;
UI16_T trigger4_len;
UI16_T trigger5_len;
UI16_T trigger6_len;
UI16_T trigger7_len;
UI16_T trigger8_len;
UI32_T trigger_ctrl;
}XM23L4G_STARTTGRCTR_T;
// STARTAUTOARPREPLY Packet Format
typedef struct{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -