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

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

?? usbdriver.h

?? zlg_usb協議棧是周立功公司開發的一款開放的usb源代碼
?? H
字號:
/****************************************Copyright (c)**************************************************
**                               Guangzou ZLG-MCU Development Co.,LTD.
**                                      graduate school
**                                 http://www.zlgmcu.com
**
**--------------File Info-------------------------------------------------------------------------------
** File name:			USBDriver.h
** Last modified Date:	2005-8-6
** Last Version:		V1.0
** Descriptions:		LPC23xx USB 應用層
**						LPC23xx USB Application Layer
**------------------------------------------------------------------------------------------------------
** Created by:			鄭明遠 		MingYuan Zheng
** Created date:		2005-8-6
** Version:				V1.0
** Descriptions:		初始版本	The original version
**
**------------------------------------------------------------------------------------------------------
** Modified by:			
** Modified date:
** Version:				
** Descriptions:
**
**------------------------------------------------------------------------------------------------------
** Modified by: 
** Modified date:
** Version:	
** Descriptions: 
**
********************************************************************************************************/

#ifndef __USBDRIVER_H__
#define __USBDRIVER_H__

#include "Descriptor.h"

/**************** 定義 USB 收發錯誤碼 ***************************/
#define USB_NO_ERR				0x00		//正確
#define USB_ERR_NO_CONFIG		0x01		//USB總線未配置完成錯誤
#define USB_ERR_BUFF_INVALID	0x02		//接收或發送緩沖區錯誤
#define USB_ERR_WR_TIMEOUT		0x03		//接收或發送超時錯誤


#define USB_ERR_READ_TESTREG	0x10		//讀測試寄存器失敗
#define USB_ERR_CREATE_SEM		0x11		//創建信號量失敗	
#define USB_ERR_ENDP_OCCUPY		0x12		//端點已被其它任務占用



/*************** 定義 USB 接收或發送控制塊 **********************/
typedef struct tagUsb_Struct
{		
	OS_EVENT *Ep_Sem;			/* 端點收/發信號量 */
	
	INT8U bEpUsed;				/* 端點正被其它任務使用 */
	
	INT8U bTaskWaiting;			/* 任務已進入等待接收狀態 或 等待數據發送完成狀態 */	
	
	INT8U bEpReady;				/* OUT端點已收到數據 或IN端點中的數據已發送到USB主機 */

								/* 下面的成員與DMA相關*/
#if DMA_ENGINE_EN			
	INT8U *buff;				/* 用戶接收/發送緩沖區 */
	INT32U len;					/* 接收/發送數據長度 */
	INT32U cnt;					/* 計數器 */
#endif	
	
}CTRL_USB;

extern CTRL_USB Ctrl_Usb[NUM_ENDPOINTS];

/************ USB Event Flag Structure *********************/
typedef union _epp_flags
{
	struct _flags
	{
		unsigned setup_packet  	  		: 1;	//receive SETUP packet
		unsigned remote_wakeup		   	: 1;	//remote wakeup
		unsigned control_state			: 2;	//control endpoint status
													//0: IDLE
													//1: TRANSMIT
													//2: RECEIVE
 		unsigned configuration			: 1;	//usb configured (0: no; 1: yes)
		unsigned command				: 1;	//reserved

	} bits;
	INT16U value;
} EPPFLAGS;

extern EPPFLAGS bEPPflags;



/*************************************************************
*   
*               下面為向用戶開放的 API 函數
*
**************************************************************/

/***********************************************************************************************************************
** 函數名稱 : USB_Initialize()							Name	 : USB_Initialize()
** 功能描述 : 初始化 USB 設備控制器		  			    Function : Initialize the USB device controller 
** 輸	 入 : 無							 			Input	 : NULL
** 輸	 出 : 0: 初始化成功  >0: 初始化失敗(錯誤碼)		Output	 : 0: Initialize sucessfully    >0: Initialize fail(error code)
***********************************************************************************************************************/
extern INT8U USB_Initialize(void);


/*******************************************************************************************************************************
** 函數名稱: INT8U ReadPort1()									Name:		 INT8U ReadPort1()	
** 功能描述: 從端口 1 接收len個字節								Function:	 receive len Bytes from Port1
** 輸   入: INT32U  len: 要接收的字節數						Input:		 INT32U  len:   	numbers will be receive
						 (取值范圍為0x00000001 ~ 0xFFFFFFFF)			    			    	(range: 0x00000001 ~ 0xFFFFFFFF)	
			 INT8U   recbuff:   接收緩沖區指針								 INT8U   recbuff:   receive buffer
			 INT16U  timeout:   超時等待時間, 等于0表示無限等待 			 INT16U  timeout:   timeout	of receiving,0 indicates limitless waiting		 
** 輸   出: 0: 接收成功	 > 0: 接收失敗(錯誤碼)				Output:		 0:	sucessfully		>0 fail (error code)
*******************************************************************************************************************************/
extern INT8U ReadPort1(INT32U len, INT8U *recbuff, INT16U timeout);


/*******************************************************************************************************************************
** 函數名稱: INT8U ReadPort2()									Name:		 INT8U ReadPort2()	
** 功能描述: 從端口 2 接收len個字節								Function:	 receive len Bytes from Port2
** 輸   入: INT32U  len: 要接收的字節數						Input:		 INT32U  len:   	numbers will be receive
						 (取值范圍為0x00000001 ~ 0xFFFFFFFF)			    			    	(range: 0x00000001 ~ 0xFFFFFFFF)	
			 INT8U   recbuff:   接收緩沖區指針								 INT8U   sendbuff:  receive buffer
			 INT16U  timeout:   超時等待時間, 等于0表示無限等待 			 INT16U  timeout:   timeout	of receiving,0 indicates limitless waiting		 
** 輸   出: 0: 接收成功	 > 0: 接收失敗(錯誤碼)				Output:		 0:	sucessfully		>0 fail (error code)
*******************************************************************************************************************************/
extern INT8U ReadPort2(INT32U len, INT8U *recbuff, INT16U timeout);


/*******************************************************************************************************************************
** 函數名稱: INT8U WritePort1()									Name:		 INT8U WritePort1()	
** 功能描述: 用端口 1 發送len個字節								Function:	 Send len Bytes via Port1
** 輸   入: INT32U  len: 發送的字節數							Input:		 INT32U  len:   	numbers will be send
						  (取值范圍為0x00000001 ~ 0xFFFFFFFF)			    			    	(range: 0x00000001 ~ 0xFFFFFFFF)	
			 INT8U   sendbuff:  發送緩沖區指針								 INT8U   sendbuff:  send buffer
			 INT16U  timeout:   超時等待時間, 等于0表示無限等待 			 INT16U  timeout:   timeout	of transmitting,0 indicates limitless waiting		 
** 輸   出: 0: 發送成功	 > 0: 發送失敗(錯誤碼)				Output:		 0:	sucessfully		>0 fail (error code)
*******************************************************************************************************************************/
extern INT8U WritePort1(INT32U len, INT8U *sendbuff, INT16U timeout);


/*******************************************************************************************************************************
** 函數名稱: INT8U WritePort2()									Name:		 INT8U WritePort2()	
** 功能描述: 用端口 2 發送len個字節								Function:	 Send len Bytes via Port2
** 輸   入: INT32U  len: 發送的字節數							Input:		 INT32U  len:   	numbers will be send
						  (取值范圍為0x00000001 ~ 0xFFFFFFFF)			    			    	(range: 0x00000001 ~ 0xFFFFFFFF)	
			 INT8U   sendbuff:  發送緩沖區指針								 INT8U   sendbuff:  send buffer
			 INT16U  timeout:   超時等待時間, 等于0表示無限等待 			 INT16U  timeout:   timeout	of transmitting,0 indicates limitless waiting		 
** 輸   出: 0: 發送成功	 > 0: 發送失敗(錯誤碼)				Output:		 0:	sucessfully		>0 fail (error code)
*******************************************************************************************************************************/
extern INT8U WritePort2(INT32U len,INT8U *sendbuff,INT16U timeout);


/***************************************************************************************************************
** 函數名稱 : Usb_Exception()							Name	 : Usb_Exception()
** 功能描述 : USB 中斷服務程序			  			    Function : USB Interrupt Service Program
** 輸	 入 : 無							 			Input	 : NULL
** 輸	 出 : 無										Output	 : NULL
****************************************************************************************************************/
extern void Usb_Exception(void);


/***********************************************************************************************************************
** 函數名稱: void TaskSetup(void *pdata)			Name:	    void TaskSetup(void *pdata)
** 功能描述: 控制傳輸處理							Function:   deal with control transfer
** 輸	 入: void *pdata  任務參數					Input:		void *pdata:   parameter of the task
** 輸	 出: 無										Output:	    NULL
** 注	 意: 該任務的優先級應高于其它任務,才能在	Note:		the prior of the task must be higher than other,so 
			 任何情況下傳輸SETUP包								it will be sucessful when tranfering SETUP packet										 
************************************************************************************************************************/
extern void  TaskSetup(void *pdata);

/*************** Setup包處理任務堆棧與事件 ****************************/
extern OS_STK  TaskSetupStk[128];
extern OS_EVENT *pSetup_Event;




/**************** USBDriver.c內部使用函數 ************************/
extern void USB_ConfigEndpoint(void);

INT8U USB_RW_Param(CTRL_USB *pUsb, INT8U *pbuff);

void USB_RW_Result(INT8U endp, INT8U buffnums, CTRL_USB *pUsb, INT8U bread, INT8U berr);

INT8U USB_ReadPort(INT8U endp, INT32U eppsize, INT8U buffnums,
                   CTRL_USB *pUsb, INT32U len, INT8U *recbuff, INT16U timeout);
 
INT8U USB_WritePort(INT8U endp, INT32U eppsize, INT8U buffnums,
				  	CTRL_USB *pUsb, INT8U *sendbuff, INT32U len, INT16U timeout); 
                   
void Usb_EpISR(INT8U endp);	                       
                    
extern INT8U USB_ReadPortDMA(INT8U endp, CTRL_USB *pUsb, INT32U len, INT8U *recbuff, 
				      INT16U timeout);
				      
extern INT8U USB_WritePortDMA(INT8U endp, CTRL_USB *pUsb, INT8U *sendbuff, INT32U len, 
					   INT16U timeout);				      
				      
void Usb_LPService(void);
void Usb_HPService(void);

void USB_BusReset(void);
void USB_SuspendChange(void);
void USB_ConnectChange(void);

#endif


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品视频网站| 亚洲人妖av一区二区| 色综合久久久久久久| 国内精品自线一区二区三区视频| 一区二区不卡在线视频 午夜欧美不卡在| 精品女同一区二区| 久久综合九色综合97婷婷女人 | 国产精品美女视频| 久久女同精品一区二区| 精品国产乱码久久久久久久久| 欧美一区欧美二区| 欧美成人精品1314www| 欧美一区二区成人| www激情久久| 国产日本欧美一区二区| 国产精品美女久久福利网站| 国产欧美一区二区精品性色| 亚洲国产精品黑人久久久| 亚洲国产精品高清| 一区二区三区不卡视频| 亚洲在线观看免费| 美女一区二区三区在线观看| 美女性感视频久久| 成人午夜大片免费观看| 91在线看国产| 欧美一卡在线观看| 国产欧美一区视频| 一区二区三区在线不卡| 日韩av在线发布| 国产另类ts人妖一区二区| 99精品国产99久久久久久白柏| 欧美性受xxxx黑人xyx性爽| 日韩视频在线你懂得| 国产三级欧美三级| 亚洲一级电影视频| 国产精品一级黄| 欧美亚洲高清一区二区三区不卡| 日韩情涩欧美日韩视频| 亚洲国产精品精华液2区45| 亚洲综合色网站| 国产精品自产自拍| 欧美色手机在线观看| 久久久不卡网国产精品一区| 亚洲欧美日韩精品久久久久| 日本美女视频一区二区| www.爱久久.com| 日韩欧美在线观看一区二区三区| 国产精品美女久久久久久久久久久 | 国产精品不卡在线观看| 婷婷开心激情综合| 91亚洲精品久久久蜜桃网站| 51精品秘密在线观看| 国产精品久久久久毛片软件| 免费在线看一区| 在线一区二区三区四区五区| 久久久99免费| 久久精品国产77777蜜臀| 色综合中文字幕国产 | 国产精品久久久久天堂| 久久精品国产**网站演员| 在线精品视频一区二区三四| 26uuu精品一区二区在线观看| 亚洲一级二级在线| 色婷婷久久99综合精品jk白丝| 久久久精品人体av艺术| 精品一区二区三区的国产在线播放 | 日韩精品一区第一页| 91视频91自| 亚洲欧洲日产国产综合网| 国产一区二区三区电影在线观看| 欧美日韩一区二区三区视频| 国产日产精品1区| 日本特黄久久久高潮| 97精品久久久午夜一区二区三区| 91精品国产黑色紧身裤美女| 日韩美一区二区三区| 三级久久三级久久久| av一区二区三区在线| 精品免费一区二区三区| 丝袜美腿亚洲一区二区图片| 91老司机福利 在线| 中文av字幕一区| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 色综合久久久久久久| 国产精品日韩精品欧美在线| 久久国产麻豆精品| 欧美区一区二区三区| 午夜影院久久久| 欧美日韩综合不卡| 亚洲一区视频在线观看视频| 成人精品国产免费网站| 久久久亚洲午夜电影| 激情深爱一区二区| 欧美大黄免费观看| 久久精品72免费观看| 欧美丝袜丝nylons| 亚洲二区在线观看| 欧美日韩成人综合在线一区二区| 欧美激情综合网| 成人午夜视频免费看| 国产亲近乱来精品视频| 福利电影一区二区三区| 国产欧美日韩综合| www.视频一区| 亚洲综合色网站| 91精品国产综合久久福利| 日韩成人精品在线| 精品国产三级电影在线观看| 韩国一区二区三区| 国产精品全国免费观看高清 | 欧美一区日本一区韩国一区| 美国十次综合导航| 久久综合久久99| 91日韩一区二区三区| 香蕉乱码成人久久天堂爱免费| 91精品国产福利| 国产成人亚洲综合a∨婷婷| 国产亚洲成av人在线观看导航| 成人三级伦理片| 亚洲精品久久久久久国产精华液| 欧美久久一区二区| 国产一级精品在线| 一区二区三区欧美亚洲| 日韩一区二区三区免费观看| 精品一区二区三区免费观看| 国产欧美日韩另类一区| 欧美亚洲动漫制服丝袜| 国产一区二区三区精品视频| 自拍偷拍国产精品| 日韩女优电影在线观看| 99麻豆久久久国产精品免费| 首页亚洲欧美制服丝腿| 国产亚洲综合性久久久影院| 国产不卡在线一区| 久久99在线观看| 亚洲制服丝袜av| 久久精品欧美一区二区三区麻豆 | 国产激情精品久久久第一区二区| 成人免费在线观看入口| 欧美一级一区二区| 色综合亚洲欧洲| 国产一区二区在线看| 亚洲精品伦理在线| 国产网红主播福利一区二区| 欧美一二三四区在线| 94色蜜桃网一区二区三区| 日韩成人午夜精品| 一区二区三区不卡视频| 国产性色一区二区| 日韩午夜在线观看| 在线亚洲+欧美+日本专区| 国产a精品视频| 国产一区美女在线| 日韩精品一级二级| 亚洲二区在线观看| 亚洲乱码精品一二三四区日韩在线| 精品免费视频一区二区| 一本大道综合伊人精品热热| 99re66热这里只有精品3直播 | 91激情在线视频| 国产aⅴ精品一区二区三区色成熟| 日本欧美韩国一区三区| 午夜天堂影视香蕉久久| 亚洲嫩草精品久久| 五月天一区二区| 亚洲一区二区影院| 亚洲激情图片一区| 亚洲女人****多毛耸耸8| 国产精品不卡一区| 欧美高清在线视频| 国产精品久久久久影院| 国产精品久久久久久久久晋中 | 亚洲自拍偷拍图区| 国产人妖乱国产精品人妖| 中文字幕制服丝袜一区二区三区 | 久久国产生活片100| 秋霞成人午夜伦在线观看| 亚洲综合久久久久| 美女视频一区在线观看| 青青草国产成人av片免费| 免费观看日韩av| 裸体歌舞表演一区二区| 国产一区二区三区久久久 | 蜜乳av一区二区三区| 久久精品免费观看| 国产一区美女在线| 国产69精品久久777的优势| 懂色av中文字幕一区二区三区| 91在线精品一区二区| 欧美亚洲一区二区在线| 欧美日韩电影在线播放| 欧美一区三区四区| 国产三级一区二区三区| 中文字幕一区二区三区在线观看| 亚洲欧美综合在线精品| 日韩av网站免费在线| 国产一区二区三区黄视频 | 美国欧美日韩国产在线播放| 久久国产夜色精品鲁鲁99| 国产不卡视频在线播放|