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

📄 ha_usbirq.h

📁 USB 软件配置的具体工程
💻 H
📖 第 1 页 / 共 2 页
字号:
#define   USB_CFGINTERFACE30                           (BASE_USBDEVICE+0X0A4)    // ;cfg_interface register      
#define   USB_CFGINTERFACE31                           (BASE_USBDEVICE+0X0A8)    // ;cfg_interface register
#define   USB_PKTPASSEDCTRL                             (BASE_USBDEVICE+0X0AC)    // ;@valid register aera   
#define   USB_PKTDROPPEDCTRL                           (BASE_USBDEVICE+0X0B0)    // ;@valid register aera   
#define   USB_CRCERRCTRL                                    (BASE_USBDEVICE+0X0B4)    // ;@valid register aera   
#define   USB_BITSTUFFERRCTRL                          (BASE_USBDEVICE+0X0B8)    // ;@valid register aera   
#define   USB_PIDERRCTRL                                    (BASE_USBDEVICE+0X0BC)    // ;@valid register aera   
#define   USB_FRAMINGERrCTRL                            (BASE_USBDEVICE+0X0C0)    // ;@valid register aera   
#define   USB_TXPKTCTRL                                      (BASE_USBDEVICE+0X0C4)    // ;@valid register aera   
#define   USB_STATCTRLOV                                   (BASE_USBDEVICE+0X0C8)    // ;@valid register aera   
#define   USB_TXLENGTH                                       (BASE_USBDEVICE+0X0CC)
#define   USB_RXLENGTH                                          (BASE_USBDEVICE+0X0D0)
#define   USB_RESUME                                   (BASE_USBDEVICE+0X0D4)
#define   USB_READFLAG				       (BASE_USBDEVICE+0X0D8)
#define   USB_RECEIVETYPE			       (BASE_USBDEVICE+0X0DC)
#define   USB_APPLOCK                      (BASE_USBDEVICE+0X0E0)
#define   USB_EP0OUTADDR                                  (BASE_USBDEVICE+0X100)    // ;@ep0out register
#define   USB_EP0OUTBMATTR                              (BASE_USBDEVICE+0X104)    // ;@ep0out register
#define   USB_EP0OUTMAXPKTSIZE                      (BASE_USBDEVICE+0X108)    // ;@ep0out register
#define   USB_EP0OUTIFNUM                                (BASE_USBDEVICE+0X10C)    // ;@ep0out register
#define   USB_EP0OUTSTAT                                  (BASE_USBDEVICE+0X110)    // ;@ep0out register
#define   USB_EP0OUTBMREQTYPE                        (BASE_USBDEVICE+0X114)    // ;@ep0out register
#define   USB_EP0OUTBREQUEST                          (BASE_USBDEVICE+0X118)    // ;@ep0out register
#define   USB_EP0OUTWVALUE                             (BASE_USBDEVICE+0X11C)    // ;@ep0out register
#define   USB_EP0OUTWINDEX                             (BASE_USBDEVICE+0X120)    // ;@ep0out register
#define   USB_EP0OUTWLENGTH                           (BASE_USBDEVICE+0X124)    // ;@ep0out register
#define   USB_EP0OUTSYNCHFRAME                     (BASE_USBDEVICE+0X128)    // ;@ep0out register
#define   USB_EP1OUTADDR                                 (BASE_USBDEVICE+0X12C)    // ;@ep0out register
#define   USB_EP1OUTBMATTR                             (BASE_USBDEVICE+0X130)    // ;@ep0out register
#define   USB_EP1OUTMAXPKTSIZRE                    (BASE_USBDEVICE+0X134)    // ;@ep0out register
#define   USB_EP1OUTIFNUM                               (BASE_USBDEVICE+0X138)    // ;@ep0out register
#define   USB_EP1OUTSTAT                                 (BASE_USBDEVICE+0x13C)    // ;@ep0out register
#define   USB_EP1OUTBMREQTYPE                       (BASE_USBDEVICE+0X140)    // ;@ep0out register
#define   USB_EP1OUTBREQUEST                         (BASE_USBDEVICE+0X144)    // ;@ep0out register
#define   USB_EP1OUTWVALUE                            (BASE_USBDEVICE+0X148)    // ;@ep0out register
#define   USB_EP1OUTWINDEX                            (BASE_USBDEVICE+0X14C)    // ;@ep0out register
#define   USB_EP1OUTWLENGTH                          (BASE_USBDEVICE+0X150)    // ;@ep0out register
#define   USB_EP1OUTSYNCHFRAME                    (BASE_USBDEVICE+0X154)    // ;@ep0out register
#define   USB_EP2INADDR                                    (BASE_USBDEVICE+0X158)    // ;@ep1out register   
#define   USB_EP2INBMATTR                               (BASE_USBDEVICE+0X15C)    // ;@ep1out register   
#define   USB_EP2INMAXPKTSIZE                       (BASE_USBDEVICE+0X160)    // ;@ep1out register   
#define   USB_EP2INIFNUM                                 (BASE_USBDEVICE+0X164)    // ;@ep1out register   
#define   USB_EP2INSTAT                                   (BASE_USBDEVICE+0X168)    // ;@ep1out register   
#define   USB_EP2INBMREQTYPE                         (BASE_USBDEVICE+0X16C)    // ;@ep1out register question?  
#define   USB_EP2INBREQUEST                           (BASE_USBDEVICE+0X170)    // ;@ep1out register question?  
#define   USB_EP2INWVALUE                              (BASE_USBDEVICE+0X174)    // ;@ep1out register question?  
#define   USB_EP1INWINDEX                              (BASE_USBDEVICE+0X178)    // ;@ep1out register question?  
#define   USB_EP2INWLENGTH                            (BASE_USBDEVICE+0X17C)    // ;@ep1out register question?  
#define   USB_EP2INSYNCHFRAME                      (BASE_USBDEVICE+0X180)    // ;@ep1out register question?  
#define   USB_TXFIFO					(BASE_USBDEVICE+0X300)			//;@ data to host
#define   USB_RXFIFO					(BASE_USBDEVICE+0X200)			//;@ data to device

//
//UPLL
//
#define  PMMBASE   0X10001000
#define  PLTR     (PMMBASE + 0X00)
#define  PMCR     (PMMBASE + 0X04)
#define  PUCR     (PMMBASE + 0X08)
#define  PCSR     (PMMBASE + 0X0C)
#define  PCDR     (PMMBASE + 0X10) 
#define  PMDR     (PMMBASE + 0X14)
 
#define  Trt    0x00d000c8
#define  Uplop  0X1f0f
//#define  mplop  0x0504;
//#define  mplop  0x0510
//
//
// P R O T O C O L                     R E Q U E S T
//





//


//
//control   request
//

#define STANDARD_REQUEST   0x00
#define CLASS_REQUEST          0x20
#define VENDOR_REQUEST       0x40

//
// bRequest
//

#define CLEAR_FEATURE       0X01         
#define GET_CONFIGURATION   0X08         
#define GET_DESCRIPTOR      0X06         
#define GET_INTERFACE       0X0A         
#define GET_STATUS          0X00         
#define SET_ADDRESS         0X05         
#define SET_CONFIGURATION   0X09         
#define SET_FEATURE         0X03         
#define SET_INTERFACE       0X0B         

//
//desc type
//

#define	GFD_DEV_DESC_TYPE		0x01
#define	GFD_CONFIG_DESC_TYPE		0x02
#define	GFD_STRING_DESC_TYPE		0x03
#define	GFD_INTF_DESC_TYPE		0x04
#define	GFD_EP_DESC_TYPE			0x05

//
//desc_len
//

#define	GFD_DEV_DESC_LEN			0x12
#define	GFD_CONFIG_DESC_LEN		0x09
#define	GFD_INTF_DESC_LEN			0x09
#define	GFD_EP_DESC_LEN			0x07

//
//mps
//

#define	GFD_BUS_NUM_CONFIG		0x01
#define	GFD_BUS_NUM_INTF		0x01
#define	GFD_BUS_NUM_STRINGS		0x03

#define  GFD_CONFIG_PIPE_MPS	GFD_CTRL_MPS
#define   GFD_CTRL_MPS       0x08 // 0X40 


/*#define		pdc_fill_non_iso_urb(urb, handle, type, opr, buff, len, callback,priv)	\
				urb->next = NULL;										\
				urb->pipe = handle;										\
				urb->pipe_type = type;									\
				urb->operation = opr;									\
				urb->transfer_buffer = buff;							\
				urb->transfer_buffer_length = len;						\
				urb->actual_length = 0;									\
				urb->complete = callback;								\
				urb->req_priv = priv*/

#define         pdc_fill_non_iso_urb(urb_req,desc_ptr,desc_len)\
				urb_req->next = NULL;                 \
				urb_req->len= desc_len;                  \
				urb_req->fifo = desc_ptr








#endif

//**********************************************************************************************************
// T Y P E D E F S 
//**********************************************************************************************************
        
typedef struct urb
{
	
	//U32 flag;
	U16 len;
	U8 *fifo;
	
	struct urb *next;
}urb; 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -