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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? kernel.h

?? USB2.0開發示例程序
?? H
字號:
/****************************************Copyright (c)**************************************************
**                               廣州周立功單片機發展有限公司
**                                     研    究    所
**                                 http://www.zlgmcu.com
**--------------當前版本修訂------------------------------------------------------------------------------
** 修改人: 劉英斌
** 日 期:2003-03-13
** 描 述:ISP1581 V1.0
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/


sfr AUXR = 0x8e;
sfr CKCON = 0x8f;

#define MAX_BUF 64



//#define                  CHAP9_COMPLIANT   15                //use for chapter 9 and 8 test
                                                               //max packet size is 512

//#define		USB_ENABLED		3	   	//to test FIFO must disable DMA_ENABLED and PIO_ENABLED

//USAGE FOR ATA AND ATAPI DEVICE

//#define		PIO_ENABLED		1  		// to test PIO mode must disable DMA_ENABLED

//#define		MDMA_TRANSFER		5	//ATA MDMA Transfer Mode
//#define		UDMA_TRANSFER		6	//ATA UDMA Transfer Mode
//#define		PIO_TRANSFER		7	//ATA PIO Transfer Mode	

//#define		DEVICE_ENABLED 	8
#define		ATAPI_DEVICE	9



//USAGE FOR THE GENERIC DMA MODE

//#define		DMA_ENABLED		2	//Select DMA Mode

//#define		GDMA_MODE		10	//GDMA Slave Mode 
//#define		MDMA_MODE		11	//MDMA Master Mode
//#define		MPIO_MODE		17	//Manual PIO Mode
//#define		PING_PONG		15	//set the descriptor to PID 1582


#define           SBUS_RESET                  0         
#define           SSUSPEND                    1
#define           SPOWER                      2
#define           SWAKEUP                     3
#define           SCMD                        4
#define           SREAD                       5
#define           SWRITE                      6
#define           SSTATUS                     7


#define		Crystal_Freq		24

#define		DEVICE_RESET		0x0C
#define		ENABLE_INTRQ		0x08
#define		DISABLE_INTRQ		0x0A


#define SETUP_DMA_REQUEST 	  	0x7104
#define GET_FIRMWARE_VERSION    0x7204
#define GET_SET_TWAIN_REQUEST   0x7304


#define		MASTER_DRIVE		0xA0
#define		ATA_MASTER			0
#define		ID_ATAPI_DEVICE		0xA1
#define		ID_ATA_DEVICE		0xEC
#define		ATAPI_SOFTRESET		0x08
#define		SET_FEATURE			0xEF
#define		INIT_DRIVE			0x91

#define		Transfer_Mode		0x03

#define	Read	0
#define	Write	1

#define	GDMA_Read	1
#define	GDMA_Write	0
#define	GDMA_Start	1
#define	GDMA_Stop	0

#define	OUT		0
#define	IN		1

#define	OFF		0
#define	ON		1

#define	Endpt_Zero	0
#define	Endpt_One	1
#define	Endpt_Two	2
#define	Endpt_Three	3
#define	Endpt_Four	4
#define	Endpt_Five	5
#define	Endpt_Six	6
#define	Endpt_Seven	7


#define	Control_Type	0
#define	Iso_Type		1
#define	Bulk_Type		2
#define	Int_Type		3

/*
#define	Control_Type	0
#define	Iso_Type		3
#define	Bulk_Type		1
#define	Int_Type		2
*/

/*
#define	Get_Status		0x00
#define	Clear_Feature	0x01
#define	Set_Feature		0x03
#define	Set_Address		0x05
#define	Get_Descriptor	0x06
#define	Set_Descriptor	0x07
#define	Get_Config		0x08
#define	Set_Config		0x09
#define	Get_Interface	0x0A
#define	Set_Interface	0x0B
#define	Synch_Frame		0x0C
*/

#define	USB_Default		0
#define	USB_Addressed	1
#define	USB_Configured	2

		
#define	ATAPI_Cmd_Packet_Phase		         0x09
#define	ATAPI_Message_Phase			0x0B
#define	ATAPI_Read_Phase   			0x0A
#define	ATAPI_Write_Phase  			0x08
#define	ATAPI_Read_Phase_NODRQ   			0x02
#define	ATAPI_Write_Phase_NODRQ  			0x00
#define	ATAPI_Status_Phase			0x03
#define	Error_Phase  				0xAA
#define	No_Data_Phase  				0x55

#define Data_Host2Device		0x00
#define	Data_Device2Host		0x80

#define	TransferData2Host		0x01
#define	TransferData2Device		0x02
#define	TransferNoData			0x00

#define	ATAPI_PACKET_COMMAND	0xA0


#define	GDMA_Read_Command		0x00
#define	GDMA_Write_Command		0x01
#define	UDMA_Read_Command		0x02
#define	UDMA_Write_Command		0x03
#define	PIO_Read_Command		0x04
#define	PIO_Write_Command		0x05
#define	MDMA_Read_Command		0x06
#define	MDMA_Write_Command		0x07
#define	PIO_Write_Complete		0x08
#define	PIO_Read_Complete 		0x09
#define	READ_1F0				0x0A
#define	POLL_BUSY				0x0B
#define	UPDATE_TASKFILE			0x0C
#define  DMA_VALIDATE_BUFFER        0x0E
#define  DMA_CLEAR_BUFFER           0x0F
#define  DMA_BUFFER_RESTART         0x10
#define  DMA_RESET                  0x11
#define  DMA_FLUSH                  0x12

//for FPGA and old board
/*
#define	DMA_Start 		P16
#define	DMA_Wr_Rd		P17
#define	DMA_Reset		P14
#define	ISP1581_CS		P15
#define  ISP1581_RESET              P27
#define  RESET_IDE                  P26
#define	HS_FS_LED		P35
*/


// for new Evalkit
/*
#define	DMA_Start 		P10
#define	DMA_Reset		P11
#define	DMA_Wr_Rd		P12
#define  VBus_Sense     P21
#define	ISP1581_CS		P15
#define  ISP1581_RESET  P16
#define  RESET_IDE      P17
#define	HS_FS_LED		P20
*/

sbit	DMA_Start =		P1^4;
sbit	DMA_Reset =		P1^4;
sbit	DMA_Wr_Rd =		P1^4;
sbit  	VBus_Sense =    P1^2;
sbit	RESET_IDE =     P1^4;

sbit	HS_FS_LED =		P1^0;
sbit	ISP1581_CS =	P1^2;
sbit	ISP1581_RESET = P3^4;

#define EA_DISABLE		EA=0
#define EA_ENABLE		EA=1



// for old Evalkit
/*
#define	DMA_Start 		P34
#define	DMA_Wr_Rd		P10
#define	DMA_Reset		P35
#define	ISP1581_CS		P26
#define  ISP1581_RESET              P25
#define  RESET_IDE                  P24
#define	HS_FS_LED		P23
*/



#define	GDMA_Test		1
#define	UDMA_Test		2
#define	MDMA_Test		3
#define	PIO_Test		   4

#define	HIGH_SPEED		0
#define	FULL_SPEED		1
#define	HIGH_SPEED_LED	         0
#define	FULL_SPEED_LED		1


#define  TEST_MODE            0x0200
#define  ENDPOINT_HALT        0
#define  DEVICE_REMOTE_WAKEUP 1

#define  TEST_J            1
#define  TEST_K            2
#define  TEST_SE0_NAK      3
#define  TEST_PACKET       4
#define  TEST_FORCE_ENABLE 5

//***********************************************************************
//*																		*
//*	                 Structure Variable Definition					 	*
//*																		*
//***********************************************************************

typedef union KERNEL 
{

	struct KERNEL_BITS
	{

		UC	TIMER_ONOFF 			: 	1,			// 8051 timer running state
			STATE					:   3,			//kernel current state
			MASTER_ATAPI_DRIVE		: 	1,
			MASTER_ATA_DRIVE		: 	1,
			MASTER_PRESENT			: 	1,
			SLAVE_PRESENT			: 	1;

		UC	Manual_PIO				:	1,
			Auto_PIO				:	1,
			UDMA_Mode				:	1,
			MDMA_Mode				:	1,
			GDMA_Mode				:	1,
			Timer_Expired			:	1,
			Bus_Reset				:	1;

		UC	Error_Occur				:	2,
			Init_Done				:	1,
			In_Reset_Done			:	1,
			Out_Reset_Done			:	1,
			Tx_Done					:	1,
			Dummy_Byte				:	1,
			Endpt_Stall				:	1;

		UC	HS_FS_State			:	1,
			MPIO_Out_Reset_Done 	         :	1,
			MPIO_In_Reset_Done 		:	1,
			Register_Test			:	1,
                           Transfer_Error                      :        1,
                           Transfer_Start                      :        1,
                           ATAPI_DMA_END                       :        1;

	}BITS;

	ULI	VALUE;


}KERNEL;

typedef struct DRIVE_CONFIG
{

   	UI	General_Config;				//word 0
	UI	PIO_Mode;					//word 51
	UI	MDMA_Mode;					//word 63
	UI	Advanced_PIO;				//word 64
	UI	UDMA_Mode;					//word 88

}DRIVE_CONFIG;


typedef struct TIMER
{

	UI	mSEC_Scale;
	UI	Hundred_mSEC_Scale;
	
}TIMER;

typedef struct FEATURE
{

	UC	SubCommand_Count;
	UC	SubCommand_Number;
	UC	SubCommand_Low;
	UC	SubCommand_High;

}FEATURE;

typedef union DMA_INT_FLAG
{
	struct DMA_FLAG_BITS
	{


	UC	CMD_AUTO_COMPLETE		:	1;
	UC	CMD_INTRQ_OK			:	1;
	UC	TASKFILE_READ_COMPLETE	:	1;
	UC	BSY_DRQ_POLL_DONE		:	1;
	UC	START_READ_1F0_RD_FIFO	:	1;
	UC	RD_1F0_FIFO_EMPTY		:	1;
	UC	WR_1F0_FIFO_FULL		:	1;
	UC	WR_1F0_FIFO_EMPTY		:	1;

	UC	DMA_DONE				:	1;
	UC	INTRQ_SEEN			:	1;
         UC       INT_EOT                             :        1;
         UC       EXT_EOT                             :        1;
	UC	RES1					:	4;

	}BITS;

	UI	VALUE;

}DMA_INT_FLAG;



typedef union DATA_SWAP 
{
	UC	byte[2];
	UI	word;

}DATA_SWAP;

typedef union ATAPI_BYTECOUNT 
{
	UC	Byte[4];
	ULI	VALUE;

}ATAPI_BYTECOUNT;

typedef union BYTECOUNT 
{
	UC	Byte[2];
	ULI	VALUE;

}BYTECOUNT;
	
/*
typedef union USB_ELEMENT
{
	struct USB_ELEMENT_BITS
	{

	UI	SOF_Count	:	11,
	  	uSOF_Count	:	3;

	}BITS;

//	UI 	Value;

}USB_ELEMENT;
*/

typedef union USB_INT_FLAG
{

	struct USB_FLAG_BITS
	{

	UC	RESET		: 	1;
	UC	SOF			:	1;
	UC	PSOF		:	1;
	UC	SUSP		:	1;
	UC	RESUME		:	1;
	UC	HS_STAT		:	1;
	UC	DMA			:	1;
	UC	RESERVED3	:	1;

	UC	EP0SETUP	:	1;
	UC	RESERVED2	: 	1;
	UC	EP0RX		:	1;
	UC	EP0TX		:	1;
	UC	EP1RX		:	1;
	UC	EP1TX		:	1;	
	UC	EP2RX		:	1;
	UC	EP2TX		:	1;	

	UC	EP3RX		:	1;
	UC	EP3TX		:	1;
	UC	EP4RX		:	1;
	UC	EP4TX		:	1;	
	UC	EP5RX		:	1;
	UC	EP5TX		:	1;	
	UC	EP6RX		:	1;
	UC	EP6TX		:	1;	

	UC	EP7RX		:	1;
	UC	EP7TX		:	1;
	UC	RESERVED1	:	6;

	}BITS;


	UL	VALUE;

}USB_INT_FLAG;


typedef struct USB_DEVICE_REQ
{

	UC	bmRequestType;
	UC	bRequest;
	UI	wValue;
	UI	wIndex;
	UI	wLength;

}USB_DEVICE_REQ;


typedef struct USB_DEVICE
{

	struct USB_DEVICE_BITS
	{

	UC	Remote_Wakeup	:	1,
	  	Halt			:	1,
	  	Self_Powered	:	1,
	  	Endpt_Halt		:	1,
	  	Test_Mode		:	1,
	  	State			:	3;

	UC	CBI_Detected	:	1;


	UC	DMA_Test_Mode	:	8;

	UC	Alter_Interface	:	1,
		CBW_Rx			:	1,
		CBW_Data		:	1,
		DMA_State		:	3,
		Big_Endian		:	1;


	}BITS;

}USB_DEVICE;


typedef struct USBCBW
{
         union Signature
         {
	         UC dCBWSignature[4];
                  ULI VALUE;
         
         }Signature;
                    
	UC  dCBWTag[4];
	
         union Length
         {
         
                  UC dCBWDataTransferLength[4];
                  ULI VALUE;
         
         }Length;
         
	UC  dCBWFlags;
	UC  bCBWLUN;
	UC  bCDBLength;
	
         UC  CBWCDB[0x10];

} USBCBW;

typedef struct USB_CSW
{
         union Residue
         {
	         UC dCSWDataResidue[4];
                  ULI VALUE;
         
         }Residue;
                    
	UC bCSWStatus;

}USBCSW;


typedef union FILESIZE
{

         struct filesize
         {
            UC       Address[3];
            UC       FileSize[4];
            UC       DIR;
         
         }Size; 
         
         UDI      Value;

}FILESIZE;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人av网站在线观看| 日韩视频免费观看高清完整版| 欧美色综合久久| 国产午夜精品一区二区三区四区| 亚洲午夜日本在线观看| 国产xxx精品视频大全| 91精品国产一区二区三区蜜臀| 国产精品美女久久久久av爽李琼 | 欧美日韩中文字幕一区| 国产欧美一区二区在线观看| 日韩电影在线观看电影| 色哟哟一区二区三区| 国产婷婷色一区二区三区四区| 日本欧美肥老太交大片| 欧美综合久久久| 亚洲欧美日韩成人高清在线一区| 国产一区二区毛片| 亚洲精品在线电影| 卡一卡二国产精品| 欧美一区二区三区四区视频| 亚洲一区在线观看免费| 91麻豆国产香蕉久久精品| 久久久www成人免费毛片麻豆 | 国产一区 二区| 日韩色在线观看| 另类小说色综合网站| 91精品国产免费久久综合| 五月天网站亚洲| 欧美疯狂做受xxxx富婆| 日韩专区一卡二卡| 欧美日韩国产色站一区二区三区| 亚洲高清不卡在线观看| 在线免费不卡电影| 亚洲成在人线免费| 91精品国产综合久久久久久 | 久久婷婷国产综合精品青草| 久久国产三级精品| www激情久久| 国产精品123| 1024精品合集| 91国偷自产一区二区三区观看 | 欧美日韩一区二区三区不卡| 亚洲成人资源在线| 欧美成va人片在线观看| 久久99精品国产| 国产欧美一区二区三区沐欲| 成人午夜私人影院| 亚洲黄色免费网站| 91精品黄色片免费大全| 国产精品66部| 亚洲乱码一区二区三区在线观看| 欧美性猛片xxxx免费看久爱| 久久精品国产秦先生| 国产精品视频免费| 欧美在线一二三四区| 日韩电影免费在线观看网站| 久久精品视频一区二区三区| 91网上在线视频| 奇米精品一区二区三区四区| 久久久不卡影院| 在线视频你懂得一区| 免费欧美在线视频| **网站欧美大片在线观看| 在线播放/欧美激情| 国产69精品久久久久毛片| 亚洲国产欧美在线| 欧美精品久久久久久久久老牛影院| 久久99国产精品尤物| 亚洲激情欧美激情| 精品电影一区二区三区| 91丨porny丨蝌蚪视频| 免费成人结看片| 亚洲私人影院在线观看| 欧美成人aa大片| 日本精品视频一区二区| 国产精品一色哟哟哟| 亚洲国产日韩av| ●精品国产综合乱码久久久久 | 美腿丝袜一区二区三区| 国产精品久久久久婷婷| 日韩三级av在线播放| 99久久精品国产一区| 极品尤物av久久免费看| 亚洲sss视频在线视频| 国产精品嫩草影院av蜜臀| 精品国产一区二区三区久久久蜜月| 91视频在线观看免费| 国产精品一区二区三区99| 亚洲第一电影网| 亚洲免费观看高清完整| 国产视频一区二区在线观看| 欧美视频你懂的| 91免费看`日韩一区二区| 国产精品影音先锋| 久久精品国产99| 日韩—二三区免费观看av| 亚洲韩国一区二区三区| 亚洲欧美色图小说| 中文字幕在线一区免费| 欧美国产一区在线| 久久男人中文字幕资源站| 欧美mv和日韩mv国产网站| 欧美一区日韩一区| 欧美丰满美乳xxx高潮www| 欧美三级午夜理伦三级中视频| 91碰在线视频| 91香蕉国产在线观看软件| 91美女片黄在线观看91美女| 色诱亚洲精品久久久久久| 91看片淫黄大片一级在线观看| 成年人国产精品| 99久久夜色精品国产网站| 91色视频在线| 99九九99九九九视频精品| 99精品视频在线观看| av在线综合网| 在线观看www91| 在线亚洲高清视频| 欧美日韩成人在线| 欧美日韩国产精选| 制服丝袜中文字幕亚洲| 欧美一区二区视频观看视频 | 国产精品国产三级国产aⅴ原创| 久久综合成人精品亚洲另类欧美| 久久精品一区二区三区四区| 久久久久国产一区二区三区四区| 欧美激情综合五月色丁香小说| 国产精品久久久久四虎| 亚洲欧洲精品天堂一级| 亚洲永久精品大片| 久久电影网电视剧免费观看| 蜜桃av噜噜一区二区三区小说| 久久激五月天综合精品| 激情文学综合网| 风间由美性色一区二区三区| 91蜜桃网址入口| 日韩一区二区三区三四区视频在线观看 | 精品一区二区在线视频| 国产成人精品影院| 91亚洲大成网污www| 9191久久久久久久久久久| 日韩丝袜美女视频| 欧美国产一区视频在线观看| 亚洲狼人国产精品| 久久99精品国产麻豆不卡| 不卡一卡二卡三乱码免费网站| 欧美天堂亚洲电影院在线播放| 日韩欧美国产不卡| 中文字幕日本不卡| 婷婷中文字幕综合| 国产剧情一区二区三区| 欧美亚洲高清一区二区三区不卡| 精品少妇一区二区三区日产乱码 | 亚洲欧洲精品成人久久奇米网| 午夜视频久久久久久| 成人教育av在线| 欧美人xxxx| 国产精品网站在线观看| 日韩电影免费在线观看网站| a在线播放不卡| 精品日韩在线一区| 亚洲免费观看在线观看| 国产精品一区二区男女羞羞无遮挡 | 色婷婷av一区二区| 日韩精品一区国产麻豆| 一区二区视频在线看| 韩国女主播一区二区三区| 欧美亚洲国产一卡| 国产精品久久夜| 老汉av免费一区二区三区| 欧美影院精品一区| 欧美激情在线一区二区| 国内精品自线一区二区三区视频| 精品视频一区 二区 三区| 中文字幕视频一区| 国产成人亚洲综合a∨婷婷图片| 欧美高清精品3d| 亚洲电影你懂得| 91成人网在线| 亚洲同性gay激情无套| 成人综合在线网站| 国产清纯美女被跳蛋高潮一区二区久久w| 曰韩精品一区二区| 成人av电影观看| 国产亚洲午夜高清国产拍精品| 日韩电影在线一区二区三区| 欧美日韩一区高清| 亚洲国产另类av| 在线影院国内精品| 亚洲免费成人av| 一本久久精品一区二区| 亚洲视频在线观看一区| 不卡av免费在线观看| 亚洲国产精品99久久久久久久久 | 蜜桃一区二区三区在线观看| 欧美老人xxxx18| 婷婷中文字幕一区三区| 91超碰这里只有精品国产| 日韩av一级片| 欧美精品三级日韩久久|