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

📄 ha_usbirq.h

📁 USB 软件配置的具体工程
💻 H
📖 第 1 页 / 共 2 页
字号:
/*
********************************************************************************************************
Module Name:

         USBIRQ.H

Description:

        This is a header file for usb interrupt services which are not yet 
        a standard system header file.  
        
Revision History:
   
       Version       DATE           Author        Comments                     
       
         1.0        2003.7.6         lmq         initial  creation
         
*********************************************************************************************************
*/

//**********************************************************************************************************
//I N C L U D E S
//**********************************************************************************************************

#include "HA_TypeDef.h"




//**********************************************************************************************************
// D E F I N E S
//**********************************************************************************************************
#ifndef GFD_USB
#define GFD_USB


  
//
// ep0out_setup_bmRequestType Register
//

#define  descty   0x1f    
#define  reqty     0x60    
#define  dir         0x80    


/* the bit of success on write and read*/

#define	write_success	0x80000000
#define   read_success	0x40000000

/* The flag of type about irq */
#define	irq_none		0x00
#define	irq_setup		0x80
#define	irq_in			0x40
#define	irq_out			0x20
#define	irq_ping			0x10
#define	irq_error		0x08
#define	irq_ack			0x04
#define	irq_stat_ov		0x02
#define	irq_ctrl_err		0x01
 

/* DMA register */
#define 	DMACbase			0x0220000
#define 	DMACIntTCClear			(DMACbase+0x1060) 			//Write
#define 	DMACIntErrClr			(DMACbase+0x1090) 			//Write
#define 	DMACC5SrcAddr			(DMACbase+0x1500)			//DMA channel 5 registers;   R/W
#define 	DMACC5DestAddr			(DMACbase+0x1504)
#define 	DMACC5Control			(DMACbase+0x1508)
#define 	DMACC5Configuration		(DMACbase+0x150c)


/* Identify the vendor and product */

#define	gfd_vendor_id		0x04CC  //0x6680 
#define	gfd_product_id		0x1A62 // 0x0100 
#define	gfd_product_string		{ 60,3, 			\
	'1',0, '3',0, '6',0, '2',0, '-',0, 'O',0, 'T',0, 'G',0, ' ',0,	\
	'M',0, 'A',0, 'S',0, 'S',0, ' ',0, 				\
	'S',0, 't',0, 'o',0, 'r',0, 'a',0, 'g',0, 'e',0, ' ',0,		\
	'P',0, 'C',0, 'I',0,						\
	' ',0, 'K',0, 'i',0, 't',0 }












//
//app_intr reg bit
//

#define   setup        0x01  
#define   in              0x02  
#define   out            0x04 
#define   ping          0x08
#define   traerr       0x10  
#define   ack           0x20  
#define   stcov        0x40  
#define   ctraerr     0x80  
#define   reset       0x20
#define   suspend     0x10


//
//ep_info reg bit
//

#define   ep0out  0x00
#define   ep0in    0x01
#define   ep1out  0x02
#define   ep1in    0x03
#define   ep2out  0x04
#define   ep2in    0x05




//
// T H E    R E G I S T E R   O F    U S B      D E V I C E  
//

 
#define   BASE_USBDEVICE	          0x4000a000               //BASE ADDRESS OF usb device
#define   USB_INTR                                                 (BASE_USBDEVICE+0X000)    // ;int register     
#define   USB_INTRMASK                                        (BASE_USBDEVICE+0X004)    // ;imask register       
#define   USB_INTRCTRL                                         (BASE_USBDEVICE+0X008)    // ;control register       
#define   USB_EPINFO                                            (BASE_USBDEVICE+0X00c)    // ;information register       
#define   USB_BCONFIGURATIONVALUE                 (BASE_USBDEVICE+0X010)    // ;configuration of value register       
#define   USB_BMATTRIBUTES                               (BASE_USBDEVICE+0X014)    // ;configuration of bmattr register       
#define   USB_DEVSPEED                                       (BASE_USBDEVICE+0X018)    // ;record status register       
#define   USB_FRAMENUMBER                                (BASE_USBDEVICE+0X01C)    // ;record status register       
#define   USB_EPTRANSACTIONS0                         (BASE_USBDEVICE+0X020)    // ;record status register       
#define   USB_EPTRANSACTIONS1                         (BASE_USBDEVICE+0X024)    // ;record status register       
#define   USB_APPIFUPDATE                                 (BASE_USBDEVICE+0X028)    // ;record status register       
#define   USB_CFGINTERFACE0                             (BASE_USBDEVICE+0X02C)    // ;cfg_interface register      
#define   USB_CFGINTERFACE1                             (BASE_USBDEVICE+0X030)    // ;cfg_interface register      
#define   USB_CFGINTERFACE2                             (BASE_USBDEVICE+0X034)    // ;cfg_interface register      
#define   USB_CFGINTERFACE3                             (BASE_USBDEVICE+0X038)    // ;cfg_interface register      
#define   USB_CFGINTERFACE4                             (BASE_USBDEVICE+0X03c)    // ;cfg_interface register      
#define   USB_CFGINTERFACE5                              (BASE_USBDEVICE+0X040)    // ;cfg_interface register      
#define   USB_CFGINTERFACE6                              (BASE_USBDEVICE+0X044)    // ;cfg_interface register      
#define   USB_CFGINTERFACE7                             (BASE_USBDEVICE+0X048)    // ;cfg_interface register      
#define   USB_CFGINTERFACE8                             (BASE_USBDEVICE+0X04c)    // ;cfg_interface register      
#define   USB_CFGINTERFACE9                             (BASE_USBDEVICE+0X050)    // ;cfg_interface register      
#define   USB_CFGINTERFACE10                           (BASE_USBDEVICE+0X054)    // ;cfg_interface register      
#define   USB_CFGINTERFACE11                           (BASE_USBDEVICE+0X058)    // ;cfg_interface register      
#define   USB_CFGINTERFACE12                           (BASE_USBDEVICE+0X05c)    // ;cfg_interface register      
#define   USB_CFGINTERFACE13                           (BASE_USBDEVICE+0X060)    // ;cfg_interface register      
#define   USB_CFGINTERFACE14                           (BASE_USBDEVICE+0X064)    // ;cfg_interface register      
#define   USB_CFGINTERFACE15                           (BASE_USBDEVICE+0X068)    // ;cfg_interface register      
#define   USB_CFGINTERFACE16                           (BASE_USBDEVICE+0X06c)    // ;cfg_interface register      
#define   USB_CFGINTERFACE17                           (BASE_USBDEVICE+0X070)    // ;cfg_interface register      
#define   USB_CFGINTERFACE18                           (BASE_USBDEVICE+0X074)    // ;cfg_interface register      
#define   USB_CFGINTERFACE19                           (BASE_USBDEVICE+0X078)    // ;cfg_interface register      
#define   USB_CFGINTERFACE20                           (BASE_USBDEVICE+0X07c)    // ;cfg_interface register      
#define   USB_CFGINTERFACE21                           (BASE_USBDEVICE+0X080)    // ;cfg_interface register      
#define   USB_CFGINTERFACE22                           (BASE_USBDEVICE+0X084)    // ;cfg_interface register      
#define   USB_CFGINTERFACE23                           (BASE_USBDEVICE+0X088)    // ;cfg_interface register      
#define   USB_CFGINTERFACE24                           (BASE_USBDEVICE+0X08c)    // ;cfg_interface register      
#define   USB_CFGINTERFACE25                           (BASE_USBDEVICE+0X090)    // ;cfg_interface register      
#define   USB_CFGINTERFACE26                           (BASE_USBDEVICE+0X094)    // ;cfg_interface register      
#define   USB_CFGINTERFACE27                           (BASE_USBDEVICE+0X098)    // ;cfg_interface register      
#define   USB_CFGINTERFACE28                           (BASE_USBDEVICE+0X09c)    // ;cfg_interface register      
#define   USB_CFGINTERFACE29                           (BASE_USBDEVICE+0X0A0)    // ;cfg_interface register      

⌨️ 快捷键说明

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