📄 enr.h
字号:
/*
ENR.H: enuermation record related defintions and functions
(C) Copyright TransDimension, Inc. All rights reserved.
Modification history
====================
03May2000 Original Release
28Mar2001, Modified, JW
*/
/* ENR data structure */
#include "types.h"
typedef struct {
U8 dev; /* device address */
U8 ep; /* endpoint number */
U8 mode; /* end point mode */
U16 bsize; /* end point buffer size */
} ENR;
/* ENR table size */
#define ENR_SIZE 64
/* ENR mode - device speed */
#define ENR_SPD 0x04 /* xfer speed bit mask */
#define ENR_LSPD 0x04 /* low speed end point */
#define ENR_FSPD 0x00 /* high speed end point */
/* ENR mode - xfer type */
#define ENR_XFER 0x03 /* xfer type bit mask */
#define ENR_CTL 0x00 /* control xfer end point */
#define ENR_ISO 0x01 /* isochronous xfer end pont */
#define ENR_BUL 0x02 /* bulk xfer end point */
#define ENR_INT 0x03 /* interrupt xfer end point */
/* ENR mode - xfer direction */
#define ENR_DIR 0x80 /* xfer direction bit mask */
#define ENR_IN 0x80 /* xfer direction - device to host */
#define ENR_OUT 0x00 /* xfer direction - host to device */
/* ENR mode - sequence */
#define ENR_SEQ 0x08 /* xfer sequence bit mask */
#define ENR_DATA0 0x00 /* DATA0 packet anticipated */
#define ENR_DATA1 0x08 /* DATA1 packet anticipated */
/* enumeration record function prototypes */
void UH_EnrInit(void);
ENR *UH_EnrGet(U8 dev, U8 ep, I16 dir);
I16 UH_EnrSet(U8 dev, U8 ep, U8 xfer, I16 dir, U8 spd, U16 bsize);
void UH_EnrDev0(U8 spd);
I16 UH_EnrDelete(U8 dev);
ENR *UH_EnrAccess(U8 mode);
U8 UH_AddrNew(void);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -