亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mac.h

?? 開源的嵌入式WEB服務器
?? H
?? 第 1 頁 / 共 2 頁
字號:
#define MCtlRecd	0x0020
#define	MIntRx		0x0040
#define	MRx10Stat	0x0080
#define	MAllignErr	0x0100
#define	MCRCErr		0x0200
#define	MOverflow	0x0400
#define	MLongErr	0x0800
#define	MRxPar		0x2000
#define	MRxGood		0x4000
#define	MRxHalted	0x8000


// Tx/Rx common descriptor structure 
typedef struct FrameDescriptor {
	long unsigned int FrameDataPtr;
	long unsigned int Reserved; 	// cf: RX-reserved, TX-Reserved(25bits) + Control bits(7bits)
	long unsigned int StatusAndFrameLength;
	long unsigned int NextFrameDescriptor;
} sFrameDescriptor;



typedef struct ETH_HEADER {
	U8 DestinationAddr[6] ;
	U8 SourceAddr[6] ;
	U8 LengthOrType[2] ;
} etheader ;



typedef struct MACFrame {
	etheader 	Header ;
	U8 		LLCData[1506] ;
} /*__attribute__((packed))*/ sMACFrame;



// MAC Tx Error Structure
typedef struct MACTxStatus {
	long unsigned int MacTxGood ;
	long unsigned int ExCollErr ;
	long unsigned int TxDefferedErr ;
	long unsigned int sPaused ;
	long unsigned int UnderErr ;
	long unsigned int DeferErr ;
	long unsigned int NCarrErr ;
	long unsigned int sSQE ;
	long unsigned int LateCollErr ;
	long unsigned int TxParErr ;
	long unsigned int sTxHalted ;
} pMACTxStatus ;

// MAC Rx Error Structure
typedef struct MACRxStatus {
	U32 OvMaxSize ;
	U32 sCtlRecd ;
	U32 sRx10Stat ;
	U32 AllgnErr ;
	U32 sCRCErr ;
	U32 OverflowErr ;
	U32 sLongErr ;
	U32 RxParErr ;
	U32 sRxHalted ;
} pMACRxStatus ;


// BDMA Tx Error Structure
typedef struct BDMATxStatus {
	U32 BTxNLErr ;
	U32 BTxNOErr ;
	U32 BTxEmptyErr ;
} pBDMATxStatus ;


// BDMA Rx Error Structure
typedef struct BDMARxStatus {
	U32 BdmaRxCnt ;
	U32 BdmaRxGood ;
	U32 BRxNLErr ;
	U32 BRxNOErr ;
	U32 BRxMSOErr ;
} pBDMARxStatus ;

typedef struct userbuff {     //ren defined
    U32 length[UserBuffSize];     //ethernet數據包長度
    sMACFrame frame[UserBuffSize]; //ethernet包
    U32 rear;                     //尾指針
    U32 head;                     //頭指針
 }__attribute__((packed)) UserBuff;


/* ------------------------------------------ */
/*   PHY(ICS1890) Register Description        */
/* ------------------------------------------ */
/*	PHY_CNTL_REG   : 0x00                 */
/*	PHY_STATUS_REG : 0x01                 */
/*	PHY_ID_REG1    : 0x02                 */
/*	PHY_ID_REG2    : 0x03                 */
/*	PHY_ANA_REG    : 0x04                 */
/*	PHY_ANLPAR_REG : 0x05                 */
/*	PHY_ANE_REG    : 0x06                 */
/* 	PHY_ECNTL_REG1 : 0x10                 */
/*	PHY_QPDS_REG   : 0x11                 */
/*	PHY_10BOP_REG  : 0x12                 */
/* 	PHY_ECNTL_REG2 : 0x13                 */
/* ------------------------------------------ */
#define	PHY_CNTL_REG 	0x00
#define	PHY_STATUS_REG 	0x01
#define	PHY_ID_REG1    	0x02
#define	PHY_ID_REG2    	0x03
#define	PHY_ANA_REG    	0x04
#define	PHY_ANLPAR_REG 	0x05
#define	PHY_ANE_REG    	0x06
#define	PHY_ECNTL_REG1 	0x10
#define	PHY_QPDS_REG   	0x11
#define	PHY_10BOP_REG  	0x12
#define	PHY_ECNTL_REG2 	0x13

#define PHYHWADDR	0x20 /* PHY H/W Address is 0x1 */	
#define PHYREGWRITE	0x1 << 10	
#define MiiBusy		0x1 << 11	

/* PHY control register */
#define RESET_PHY	1 << 15
#define ENABLE_LOOPBACK	1 << 14
#define DR_100MB	1 << 13
#define ENABLE_AN	1 << 12
#define PHY_MAC_ISOLATE	1 << 10
#define RESTART_AN	1 << 9
#define PHY_FULLDUPLEX	1 << 8
#define PHY_COL_TEST	1 << 7

/* PHY Status register */
#define AN_COMPLETE	1 << 5


/* PHY Auto-negotiation Advertisement register */
#define DR100_TX_FULL	1 << 8
#define DR100_TX_HALF	1 << 7
#define DR10_TX_FULL	1 << 6
#define DR10_TX_HALF	1 << 5


/*
 * Initialize Ethernet and MAC controller
 */
extern void LanInitialize(void) ;
//extern void MacWatchdogInit(void) ;
extern void MacInitialize(void) ;
extern void TxFDInitialize(void) ;
extern void RxFDInitialize(void) ;
extern void ReadyMacTx(void) ;
extern void ReadyMacRx(void) ;
extern void GetMyMacAddr(void) ;
extern void EmptyReceiveBuffer(void);
/*
 * LAN Watch-Dog function
 */
//extern void Lan_WatchDog(void) ;

/*
 * Manage and initialize PHY
 */
extern void ResetPhyChip(void) ;
extern void MiiStationWrite(U32 PhyInAddr, U32 PhyAddr, U32 PhyWrData) ;
extern U32 MiiStationRead(U32 PhyInAddr, U32 PhyAddr) ;
extern void delay_physet(void) ;


/*
 * MAC and BDMA interrupt service routine
 */
extern void MAC_Tx_isr(void) ;
extern void MAC_Rx_isr(void) ;
extern void BDMA_Tx_isr(void) ;
extern void BDMA_Rx_isr(void) ;
extern void BdmaRxForSingleIsr(void) ;

/*
 * Send Packet
 */
extern int SendPacket(U8 *Data,int Size) ;
//extern void Eth_Multi_Transmit(void) ;
extern int Random_Pkt_Transmit(void) ;
//extern void TxMacFrame(void) ;
//extern void ControlFrameTransfer(void) ;
//extern void SingleTransfer(void) ;


/*
 * Receive Packet
 */
extern void GetRxFrameData(U8 *pFrameData, U32 FrameLength, U32 RxStatus) ;
extern void RxMacFrame(void) ;
extern void ReceivePacket( void); //ren 



 /* Loopback test
 */

extern void MacPollLoopBack(void) ;



extern void ShowFrame(sMACFrame *frame);
/*
 * MAC and BDMA configuration
 */
//extern void MacConfig(void) ;
//extern void ViewMacAndBdmaConfiguration(void) ;
//extern void ChangeMacAndBdmaConfiguration(void) ;
//清緩沖區
void ReceiveBuffer_init(void);
 
int  ReceiveBuffer_empty(void);    //判斷緩沖區是否空
       
int ReceiveBuffer_full(void);     //緩沖區是否滿
 
sMACFrame * ReceiveBuffer_read(void);   //讀一個數據,有可能出錯,要注意 
 
        
void ReceiveBuffer_write ( const sMACFrame *frame,U16 length); //緩沖區增加一個數據


//#endif /* _MAC_ */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区国产| 国产欧美一区二区三区鸳鸯浴| 欧美人xxxx| 精品伦理精品一区| 综合网在线视频| 日本午夜精品一区二区三区电影| 国产成人免费9x9x人网站视频| 99精品一区二区三区| 日韩一区二区三区四区| 1区2区3区欧美| 蜜臀av国产精品久久久久| 日韩经典一区二区| 粗大黑人巨茎大战欧美成人| 日本韩国欧美在线| 2021国产精品久久精品| 日韩精品免费专区| 成人精品免费看| 欧美日韩二区三区| 国产精品久久久久久久久图文区| 日韩精品亚洲专区| av高清久久久| 日韩精品一区二区三区在线| 亚洲综合偷拍欧美一区色| 日韩在线一二三区| 一本高清dvd不卡在线观看| 精品久久久久香蕉网| 亚洲福利一二三区| 波波电影院一区二区三区| 制服.丝袜.亚洲.中文.综合| 一区二区三区加勒比av| 国产精品一级在线| 91精品婷婷国产综合久久性色| **网站欧美大片在线观看| 国产成人午夜精品影院观看视频 | 精品日韩在线观看| 亚洲愉拍自拍另类高清精品| k8久久久一区二区三区| 欧美经典一区二区| 极品少妇xxxx精品少妇偷拍| 欧美丰满嫩嫩电影| 亚洲高清免费观看| 欧美日韩久久一区| 亚洲成人免费av| 在线亚洲+欧美+日本专区| 亚洲乱码国产乱码精品精的特点| 99热在这里有精品免费| 欧美国产精品专区| 久久99久久99精品免视看婷婷 | 久草在线在线精品观看| 日本韩国一区二区| 亚洲黄色小说网站| 欧美在线看片a免费观看| 亚洲午夜私人影院| 欧美嫩在线观看| 日本不卡免费在线视频| 欧美一级欧美三级| 久久91精品久久久久久秒播| 久久奇米777| 成人永久免费视频| 久久人人爽人人爽| 成人动漫视频在线| 一区二区三区四区乱视频| 欧美最猛性xxxxx直播| 亚洲超丰满肉感bbw| 欧美一区三区四区| 韩国av一区二区三区在线观看| 亚洲精品在线观| www.色精品| 亚洲一区日韩精品中文字幕| 717成人午夜免费福利电影| 九色|91porny| 国产精品视频九色porn| 在线欧美日韩国产| 亚洲一区国产视频| 精品国精品国产尤物美女| 免费久久99精品国产| 日韩情涩欧美日韩视频| 国产福利精品导航| 亚洲激情校园春色| 日韩欧美一卡二卡| av资源网一区| 日韩va欧美va亚洲va久久| 91精品国产综合久久香蕉的特点| 精品在线播放午夜| 亚洲精品老司机| 精品国产乱码久久久久久牛牛| 成人网页在线观看| 亚洲午夜av在线| 777xxx欧美| 99r国产精品| 喷白浆一区二区| 国产欧美一区二区三区在线看蜜臀 | 欧美二区在线观看| 成人美女视频在线观看| 首页国产欧美久久| 中文字幕亚洲成人| 精品成人a区在线观看| 在线免费不卡电影| 国产不卡在线视频| 亚洲国产成人av| 国产精品久久久久影院| 久久久久久久电影| 精品电影一区二区| 欧美日韩高清一区二区三区| 成人国产精品免费网站| 美脚の诱脚舐め脚责91| 亚洲综合无码一区二区| 国产精品成人午夜| 成人精品视频一区| 成人一区二区三区中文字幕| 一区二区三区日韩精品| 欧美三级日韩在线| 久久爱www久久做| 国产精品久久久久一区二区三区| 欧美日韩卡一卡二| 蓝色福利精品导航| 国产拍揄自揄精品视频麻豆| 亚洲高清免费观看高清完整版在线观看| 欧美日韩精品免费| 在线观看欧美黄色| 欧美无砖专区一中文字| 欧美日韩亚洲综合一区| 欧美成人伊人久久综合网| 日韩午夜小视频| 精品蜜桃在线看| 欧美日韩国产经典色站一区二区三区| 国产精品1024| 久久 天天综合| 日韩国产欧美在线播放| 香蕉久久夜色精品国产使用方法 | 日本视频免费一区| 亚洲成人av资源| 亚洲午夜精品在线| 午夜精品福利久久久| 亚洲成av人在线观看| 最近日韩中文字幕| 伊人婷婷欧美激情| 亚洲欧洲综合另类| 亚洲一区在线视频观看| 亚洲毛片av在线| 亚洲成av人片在线观看| 日韩二区在线观看| 国产米奇在线777精品观看| 精品一区二区影视| 国产精品自产自拍| 国产午夜亚洲精品羞羞网站| 亚洲欧美日韩中文字幕一区二区三区| 久久久国产一区二区三区四区小说| 亚洲成人动漫在线观看| 激情文学综合丁香| 91麻豆国产香蕉久久精品| 亚洲国产精品成人综合| 亚洲一级在线观看| 国产成人亚洲综合a∨猫咪| 日韩精品一卡二卡三卡四卡无卡| 三级欧美韩日大片在线看| 久久 天天综合| 欧美日韩国产综合一区二区| 国模少妇一区二区三区| 日韩国产一二三区| 日韩欧美中文字幕公布| 在线日韩国产精品| 精品剧情在线观看| 亚洲午夜免费视频| 成人看片黄a免费看在线| 91精品久久久久久久99蜜桃| 国产精品女同一区二区三区| 免费成人美女在线观看| 91免费看视频| 久久精品这里都是精品| 精品一区中文字幕| 97se亚洲国产综合自在线不卡| 欧美肥妇bbw| 亚洲精品日韩综合观看成人91| 国产高清成人在线| 制服.丝袜.亚洲.中文.综合| 亚洲免费在线视频| 国产福利一区二区三区| 欧美变态凌虐bdsm| 日韩av电影天堂| 色爱区综合激月婷婷| 中文字幕一区二区不卡| 成人午夜碰碰视频| 久久精品视频在线看| 久久99最新地址| 日韩一级欧美一级| 日韩精品国产欧美| 欧美色综合影院| 亚洲精品福利视频网站| 91丨porny丨户外露出| 自拍偷拍欧美精品| 91啪在线观看| 中文字幕综合网| 一本一道综合狠狠老| 国产精品久久三| www.av精品| 一区二区三区不卡在线观看| 成人av在线影院| 日韩一区中文字幕| 99久久国产综合色|国产精品|