⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nu_xm23l4g_api.h

📁 流量C++驱动的一些源代码,主要是模仿SMARTBIT 的硬件对应的代码
💻 H
📖 第 1 页 / 共 2 页
字号:
#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 + -