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

📄 usb_constant.h

📁 基于TI 6416DSP 的USB读写程序
💻 H
字号:
/*********************************************************************************
	filename:	USB_CONSTANT.h
	designer:	戴展波
	date:		2004/11/02
**********************************************************************************/

#ifndef _USB_CONSTANT_
#define _USB_CONSTANT_

//general configuration
#define	SX2_IFCONFIG	0x01		//interface configuration
#define SX2_IFCONFIG_SET	0xE8

#define SX2_FLAGSAB	0x02		//fifo flaga and flagb assignments
#define SX2_FLAGSCD	0x03		//fifo flagc and flagd assignments
#define	SX2_FLAGB_FF    0x00
#define	SX2_FLAGA_PF    0x00

#define	SX2_FLAGA_PF2	0x04
#define	SX2_FLAGA_PF4	0x05
#define	SX2_FLAGA_PF6	0x06
#define	SX2_FLAGA_PF8	0x07
#define	SX2_FLAGA_EF2	0x08
#define	SX2_FLAGA_EF4	0x09
#define	SX2_FLAGA_EF6	0x0A
#define	SX2_FLAGA_EF8	0x0B
#define	SX2_FLAGA_FF2	0x0C
#define	SX2_FLAGA_FF4	0x0D
#define	SX2_FLAGA_FF6	0x0E
#define	SX2_FLAGA_FF8	0x0F

#define	SX2_FLAGB_PF2	0x40
#define	SX2_FLAGB_PF4	0x50
#define	SX2_FLAGB_PF6	0x60
#define	SX2_FLAGB_PF8	0x70
#define	SX2_FLAGB_EF2	0x80
#define	SX2_FLAGB_EF4	0x90
#define	SX2_FLAGB_EF6	0xA0
#define	SX2_FLAGB_EF8	0xB0
#define	SX2_FLAGB_FF2	0xC0
#define	SX2_FLAGB_FF4	0xD0
#define	SX2_FLAGB_FF6	0xE0
#define	SX2_FLAGB_FF8	0xF0

#define SX2_POLAR	0x04		//fifo polarities
#define SX2_POLAR_WUPOL		0x80	//set the polarity of the wakeup pin,high active
#define SX2_POLAR_PKTEND	0x20	//select the polarity of the PKTEND pin,high active
#define SX2_POLAR_SLOE		0x10	//sloe pin polarity,high active
#define	SX2_POLAR_SLRD		0x08	//slrd pin polarity,high active
#define SX2_POLAR_SLWR		0x04	//slwe pin polarity,high active
#define SX2_POLAR_EF		0x02	//EF pin(flaga/b/c/d) select polarity,high active
#define SX2_POLAR_FF		0x01	//FF pin(flaga/b/c/d) select polarity,high active

#define SX2_REVID	0x05		//chip revision

//endpoint configuration
#define SX2_EP2CFG	0x06		//endpoint 2 configuration
#define SX2_EP4CFG	0x07		//endpoint 4 configuration
#define SX2_EP6CFG	0x08		//endpoint 6 configuration
#define SX2_EP8CFG	0x09		//endpoint 8 configuration

#define SX2_EP2PKTLENH	0x0A		//endpoint 2 packet length h
#define SX2_EP2PKTLENL	0x0B		//endpoint 2 packet length l(in only)
#define SX2_EP4PKTLENH	0x0C		//endpoint 4 packet length h
#define SX2_EP4PKTLENL	0x0D		//endpoint 4 packet length l(in only)
#define SX2_EP6PKTLENH	0x0E		//endpoint 6 packet length h
#define SX2_EP6PKTLENL	0x0F		//endpoint 6 packet length l(in only)
#define SX2_EP8PKTLENH	0x10		//endpoint 8 packet length h
#define SX2_EP8PKTLENL	0x11		//endpoint 8 packet length l(in only)
#define SX2_WORDWIDE	0x10		//16 bit data wide

#define SX2_EP2PFH	0x12		//EP2 programmable flag h
#define SX2_EP2PFL	0x13		//ep2 programmable flag l
#define SX2_EP4PFH	0x14		//ep4 programmable flag h
#define SX2_EP4PFL	0x15		//ep4 programmable flag l
#define SX2_EP6PFH	0x16		//ep6 programmable flag h
#define SX2_EP6PFL	0x17		//ep6 programmable flag l
#define SX2_EP8PFH	0x18		//ep8 programmable flag h
#define SX2_EP8PFL	0x19		//ep8 programmable flag l
#define SX2_EP2ISOINPKTS	0x1A	//EP2 IN packets per frame
#define SX2_EP4ISOINPKTS	0x1B	//EP4 IN packets per frame
#define SX2_EP6ISOINPKTS	0x1C	//EP6 IN packets per frame
#define SX2_EP8ISOINPKTS	0x1D	//EP8 IN packets per frame

//flags
#define	SX2_EP24FLAGS	0x1E		//endpoints 2,4 fifo flags
#define	SX2_EP4PF		0x40
#define	SX2_EP4EF		0x20
#define	SX2_EP4FF		0x10
#define	SX2_EP2PF		0x04
#define	SX2_EP2EF		0x02
#define	SX2_EP2FF		0x01

#define SX2_EP68FLAGS	0x1F		//endpoints 6,8 fifo flags
#define	SX2_EP8PF		0x40
#define	SX2_EP8EF		0x20
#define	SX2_EP8FF		0x10
#define	SX2_EP6PF		0x04
#define	SX2_EP6EF		0x02
#define	SX2_EP6FF		0x01

//inpktend/flush
#define	SX2_INPKTEND	0x20		//force packet end
#define SX2_CLEARALL    0xf0    /* Clear All FIFO*/

//usb configuration
#define SX2_USBFRAMEH	0x2a		//USB frame count h
#define SX2_USBFRAMEL	0x2b		//usb frame count l
#define SX2_MICROFRAME	0x2c		//microframe count,0-7

#define SX2_FNADDR	0x2d		//usb function address
#define SX2_HSGRANT	0x80		//sx2 enumerated speed

//interrupt
#define SX2_INTENABLE	0x2E		//interrupt enable
#define SX2_INT_SETUP	0x80		//SETUP interrupt
#define SX2_INT_EP0BUF	0x40		//EP0BUF interrupt
#define SX2_INT_FLAGS	0x20		//flags interrupt
#define SX2_INT_ENUMOK	0x04		//enumok interrupt
#define SX2_INT_BUSACTIVITY	0x02	//bus activity interrupt
#define SX2_INT_READY	0x01		//ready interrupt

//descriptor
#define SX2_DESC	0x30		//descriptor RAM

//endpoint 0
#define SX2_EP0BUF	0x31		//endpoint 0 buffer
#define SX2_SETUP	0x32		//endpoint 0 set-up data/stall
#define SX2_EP0BC	0x33		//endpoint 0 byte count

#define ENDPOINT2 	0
#define ENDPOINT4 	1
#define ENDPOINT6 	2
#define ENDPOINT8 	3

#define FALSE		0
#define TRUE		1

#define usbtimeout	0x400

#endif

⌨️ 快捷键说明

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