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

?? lib_emac.h

?? 基于sam7x256平臺做的CAN與網口互轉接口
?? H
?? 第 1 頁 / 共 2 頁
字號:

#define SPECIFIED_INTR_REG                    21                /* PHY Specified Interrupt Reg */


/*
*********************************************************************************************************
*                                               DEFINES
*********************************************************************************************************
*/

#define  EMAC_MAN_WRITE             (0x01 << 28)                        /* 01: Transfer is a write.                             */
#define  EMAC_MAN_READ              (0x02 << 28)                        /* 10: Transfer is a read.                              */
#define  EMAC_MAN_CODE              (0x02 << 16)                        /* IEEE Code. MUST have value of 10.                    */

#define  EMAC_RXBUF_ADDRESS_MASK    (0xFFFFFFFC)                        /* Addr of Rx Descriptor Buf's (wrap/ownership ignored  */
#define  EMAC_RXBUF_ADD_WRAP        (0x01 <<  1)                        /* This is the last buffer in the ring.                 */
#define  EMAC_RXBUF_SW_OWNED        (0x01 <<  0)                        /* Software owns the buffer.                            */
#define  EMAC_RXBUF_LEN_MASK        (0x00000FFF)                        /* Length of frame including FCS. (12 bits)             */
#define  EMAC_RXBUF_SOF_MASK        (0x01 << 14)                        /* Start of frame mask                                  */
#define  EMAC_RXBUF_EOF_MASK        (0x01 << 15)                        /* End of frame mask                                    */
#define  EMAC_RXBUF_OFF_MASK        (0x03 << 12)                        /* Data offset mask (up to three bytes possible)        */

#define  EMAC_TXBUF_ADD_WRAP        (0x01 << 30)                        /* This is the last buffer in the ring.                 */
#define  EMAC_TXBUF_TX_SIZE_MASK    (0x000007FF)                        /* Length of frame including FCS. (11 bits)             */
#define  EMAC_TXBUF_ADD_LAST        (0x01 << 15)                        /* This is the last buffer for the current frame        */

#define  EMAC_TXBUF_STATUS_USED     (CPU_INT32U)(0x01 << 31)            /* Status Used Bit. Indicates when a buf has been read  */

/*
*********************************************************************************************************
*                                               MACROS
*********************************************************************************************************
*/

#define  EMAC_MAN_REGA(_x_)         (_x_         << 18)                 /* Specifies the register in the PHY to access.         */
#define  EMAC_MAN_PHYA(_x_)        ((_x_ & 0x1F) << 23)                 /* PHY address. Normally 0.                             */
#define  EMAC_MAN_DATA(_x_)         (_x_ & 0xFFFF)                      /* PHY Read/Write Data Mask. */

/*
*********************************************************************************************************
*                                     PHYSICAL LAYER DEFINITIONS
*********************************************************************************************************
*/
#define  BSP_XTAL_FREQ 18432L   /* onboard crystal frequency (khz) */

#define  NET_PHY_SPD_0                                     0    /* Link speed unknown, or link down                     */
#define  NET_PHY_SPD_10                                   10    /* Link speed = 10mbps                                  */
#define  NET_PHY_SPD_100                                 100    /* Link speed = 100mbps                                 */
#define  NET_PHY_SPD_1000                               1000    /* Link speed = 1000mbps                                */

#define  NET_PHY_DUPLEX_UNKNOWN                            0    /* Duplex uknown or auto-neg incomplete                 */
#define  NET_PHY_DUPLEX_HALF                               1    /* Duplex = Half Duplex                                 */
#define  NET_PHY_DUPLEX_FULL                               2    /* Duplex = Full Duplex                                 */
/* 接收緩沖區描述符標志位及狀態位宏定義 */
#define		RxDESC_FLAG_WARP			0x00000002				//* 標記接收緩沖區描述符列表中的最后一個描述符
#define		RxDESC_FLAG_OWNSHIP			0x00000001				//* 標記接收緩沖區為程序所有

/* 發送緩沖區描述狀態信息宏定義 */
#define 	TxDESC_STATUS_BUF_SIZE		((ULONG)0x000007FF)		//* 緩沖區長度
#define 	TxDESC_STATUS_LAST_BUF		((ULONG)(1 << 15))		//* 幀的最后一個緩沖區
#define		TxDESC_STATUS_NO_CRC		((ULONG)(1 << 16))		//* 沒有CRC被附加到當前幀	
#define		TxDESC_STATUS_BUF_EXHAUSTED	((ULONG)(1 << 27))		//* 發送中途緩沖區就被用光
#define		TxDESC_STATUS_Tx_UNDERRUN	((ULONG)(1 << 28))		//* 發送欠速
#define		TxDESC_STATUS_Tx_ERROR		((ULONG)(1 << 29))		//* 發送錯誤
#define		TxDESC_STATUS_WRAP			((ULONG)(1 << 30))		//* 最后一個緩沖區
#define		TxDESC_STATUS_USED			((ULONG)(1 << 31))		//* 如果成功發送,緩沖區描述符隊列的第一個緩沖區描述符的USED狀態位被EMAC置位

//* 接收緩沖區描述符結構,參見AT91SAM7X256數據手冊(完整版)
#define		EMAC_RxB_ADDR_MASK			0xFFFFFFFC
typedef struct{
	ULONG ulRxBAddrAndFlag;
	union
	{
		ULONG ulStatus;
		struct {
			ULONG bitLen					:12;
			ULONG bitRxBOffset				:2;
			ULONG bitStartOfFrm				:1;
			ULONG bitEndOfFrm				:1;
			ULONG bitCFI					:1;
			ULONG bitVLANPrio				:3;
			ULONG bitPrioTag				:1;
			ULONG bitVLANTag				:1;
			ULONG bitTypeID					:1;
			ULONG bitSA4Match				:1;
			ULONG bitSA3Match				:1;
			ULONG bitSA2Match				:1;
			ULONG bitSA1Match				:1;
			ULONG bitRsrved0				:1;
			ULONG bitExtAddrMatch			:1;
			ULONG bitUniCastHashMatch		:1;
			ULONG bitMultiCastHashMatch		:1;
			ULONG bitIsBroadCastAddr		:1;
		}bstStatus;		
	}uStatus;
}AT91S_RxBDescriptor, *AT91PS_RxBDescriptor;

//* 發送緩沖區描述符結構,按照EMAC數據手冊的描述建立,參見AT91SAM7X256數據手冊(完整版)EMAC部分 
typedef struct{
	ULONG ulTxBAddr;
	union
	{
		ULONG ulStatus;
		struct {
			ULONG bitLen			:11;
			ULONG bitRsrved0		:4;
			ULONG bitIsLastBuf		:1;
			ULONG bitIsNoCRC		:1;
			ULONG bitRsrved1		:10;
			ULONG bitIsBExhausted	:1;
			ULONG bitIsTxUnderrun	:1;
			ULONG bitTxError		:1;
			ULONG bitIsWrap			:1;
			ULONG bitIsUsed			:1;
		}bstStatus;		
	}uStatus;
}AT91S_TxBDescriptor, *AT91PS_TxBDescriptor;										
										
										
//* 使能EMAC管理數據接口
#define		EnableMDI()										\
{															\
	AT91C_BASE_EMAC->EMAC_NCR |= AT91C_EMAC_MPE;			\
}

//* 禁止EMAC管理數據接口
#define		DisableMDI()							\
{													\
	AT91C_BASE_EMAC->EMAC_NCR &= ~AT91C_EMAC_MPE;	\
}										
//*-----------------------------------------函數原型生命--------------------------------------------
extern void EMACInit(NET_ERR  *perr);
//*-------------------------------------------------------------------------------------------------
#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产高清在线精品| 国产成人精品三级| 中文欧美字幕免费| 欧美在线不卡视频| 春色校园综合激情亚洲| 五月天一区二区| 国产精品初高中害羞小美女文| 日韩欧美国产综合一区| 欧美网站大全在线观看| 不卡高清视频专区| 国模套图日韩精品一区二区| 图片区日韩欧美亚洲| 亚洲乱码日产精品bd| 久久久久9999亚洲精品| 日韩欧美第一区| 欧美人与性动xxxx| 色狠狠色噜噜噜综合网| 国产成人av电影| 激情国产一区二区| 免费在线看成人av| 日韩影院在线观看| 亚洲图片有声小说| 亚洲在线一区二区三区| 日韩伦理免费电影| 欧美韩国日本综合| 国产欧美一区二区三区鸳鸯浴| 日韩精品在线看片z| 日韩欧美中文字幕一区| 欧美精品三级在线观看| 在线亚洲免费视频| 色94色欧美sute亚洲线路一久| 国产欧美日韩不卡免费| 成人免费视频一区| 国产一区三区三区| 日韩一级二级三级精品视频| 国产成人免费在线| 夜夜爽夜夜爽精品视频| 欧美一区二区日韩一区二区| 成人avav在线| 久久国产婷婷国产香蕉| 亚洲欧美区自拍先锋| 亚洲精品一区二区精华| 欧美亚州韩日在线看免费版国语版| 日韩电影在线观看一区| 亚洲欧洲av另类| 国产欧美一区二区精品秋霞影院| 国产99精品国产| 经典三级视频一区| 日韩成人一级大片| 亚洲激情网站免费观看| 欧美理论电影在线| 麻豆91精品91久久久的内涵| 亚洲另类在线一区| 色播五月激情综合网| 在线不卡中文字幕播放| 美女在线视频一区| 三级亚洲高清视频| 毛片av中文字幕一区二区| 久久99精品国产.久久久久久 | 欧美日本国产视频| 欧美一区二区网站| 久久久噜噜噜久噜久久综合| 欧美激情资源网| 视频一区在线播放| 亚洲精品国产高清久久伦理二区| 国产精品理伦片| 中文字幕电影一区| 亚洲女子a中天字幕| 亚洲卡通动漫在线| 偷拍一区二区三区四区| 亚洲最大成人网4388xx| www久久精品| 久久久激情视频| 国产三级一区二区三区| 久久久久久亚洲综合影院红桃| 精品国产亚洲在线| 国产精品视频你懂的| 中文字幕一区二区在线观看| 一区二区三区中文免费| 亚洲va韩国va欧美va| 精一区二区三区| 成人性生交大片免费看中文| 97aⅴ精品视频一二三区| 一本色道久久综合亚洲91 | 91精品国产欧美一区二区| 91精品国产综合久久久蜜臀粉嫩| 亚洲精品一区二区三区影院| 国产精品久久综合| 亚洲国产精品久久人人爱 | 91啪亚洲精品| 91亚洲永久精品| 国产盗摄视频一区二区三区| eeuss鲁片一区二区三区在线观看| 欧美综合天天夜夜久久| 亚洲男同性恋视频| 精品国产91久久久久久久妲己 | 日韩一区二区三区在线观看| 国产精品婷婷午夜在线观看| 视频一区视频二区中文字幕| 99在线热播精品免费| 在线综合+亚洲+欧美中文字幕| 国产精品色噜噜| 奇米四色…亚洲| 在线日韩一区二区| 在线播放中文字幕一区| 亚洲电影欧美电影有声小说| 国产成人av一区二区三区在线观看| 欧美日韩和欧美的一区二区| 亚洲欧美日韩久久精品| 国产一区二区导航在线播放| 欧美日韩不卡在线| 免费黄网站欧美| 色综合天天综合狠狠| 国产精品欧美一区二区三区| 加勒比av一区二区| 在线播放91灌醉迷j高跟美女 | 黑人精品欧美一区二区蜜桃 | 亚洲欧美国产毛片在线| 国产麻豆视频精品| 久久综合久久综合久久| 国产美女在线观看一区| 久久欧美一区二区| 丰满亚洲少妇av| 中文字幕免费不卡| 色综合天天综合色综合av| 一区二区三区毛片| 欧美久久久久久久久中文字幕| 亚洲精品乱码久久久久久久久| 成人免费视频一区| 91成人国产精品| 国产欧美日韩视频在线观看| 成人sese在线| 婷婷综合另类小说色区| 欧美不卡一区二区| 日本一二三四高清不卡| 一区二区三区高清| 欧美日韩亚洲综合在线| 久久久久久久久岛国免费| 精品一区二区免费| 精品免费视频一区二区| 国产乱对白刺激视频不卡 | 欧美电影免费观看高清完整版在线观看| 午夜国产精品一区| 7777女厕盗摄久久久| 日日夜夜精品视频免费 | 色94色欧美sute亚洲线路二 | 精品美女被调教视频大全网站| 国产久卡久卡久卡久卡视频精品| 日韩精品一区二区三区视频在线观看| 久久精工是国产品牌吗| 亚洲手机成人高清视频| 精品电影一区二区三区| 精品国产欧美一区二区| 久久人人爽爽爽人久久久| 亚洲一区在线视频| 国产高清成人在线| 日韩一区二区三区视频在线观看| 国产精品嫩草影院com| 精品捆绑美女sm三区| 国产福利一区二区三区视频在线| 精品无人码麻豆乱码1区2区| 91黄色激情网站| 欧美激情中文字幕| 国产资源在线一区| 欧美一级生活片| 日本美女一区二区| 欧美亚洲综合色| 亚洲另类色综合网站| 豆国产96在线|亚洲| 精品久久久久久最新网址| 日日骚欧美日韩| 欧美日韩aaaaaa| 亚洲激情六月丁香| 色婷婷一区二区三区四区| 欧美国产欧美亚州国产日韩mv天天看完整| 日本在线不卡一区| 欧美日韩夫妻久久| 蜜乳av一区二区三区| 欧美日韩国产影片| 亚洲欧美自拍偷拍| 国产欧美精品国产国产专区| 久久久久99精品国产片| 亚洲欧洲成人自拍| 亚洲精品大片www| 日韩国产欧美一区二区三区| 亚洲成a天堂v人片| 国产成人精品一区二区三区网站观看| 伊人开心综合网| 日韩av一区二| 国产精品美女久久久久久久久| 在线影视一区二区三区| 美女一区二区久久| 亚洲人午夜精品天堂一二香蕉| 91麻豆精品国产| 97久久精品人人做人人爽50路| 麻豆久久久久久久| 一二三四社区欧美黄| 久久久精品国产免大香伊| 在线播放91灌醉迷j高跟美女 | 国产片一区二区三区|