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

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

?? main_msc.c

?? Free Usb Stack for NXP LPC2xxx microcontrollers.
?? C
字號:
/*	LPCUSB, an USB device driver for LPC microcontrollers		Copyright (C) 2006 Bertrik Sikken (bertrik@sikken.nl)	Redistribution and use in source and binary forms, with or without	modification, are permitted provided that the following conditions are met:	1. Redistributions of source code must retain the above copyright	   notice, this list of conditions and the following disclaimer.	2. Redistributions in binary form must reproduce the above copyright	   notice, this list of conditions and the following disclaimer in the	   documentation and/or other materials provided with the distribution.	3. The name of the author may not be used to endorse or promote products	   derived from this software without specific prior written permission.	THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR	IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES	OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.	IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 	INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT	NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,	DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY	THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT	(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF	THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.*/#include "type.h"#include "usbdebug.h"#include "console.h"#include "usbapi.h"#include "startup.h"#include "msc_bot.h"#include "blockdev.h"#define BAUD_RATE	115200#define MAX_PACKET_SIZE	64#define LE_WORD(x)		((x)&0xFF),((x)>>8)static U8 abClassReqData[4];static const U8 abDescriptors[] = {// device descriptor		0x12,	DESC_DEVICE,				LE_WORD(0x0200),		// bcdUSB	0x00,					// bDeviceClass	0x00,					// bDeviceSubClass	0x00,					// bDeviceProtocol	MAX_PACKET_SIZE0,		// bMaxPacketSize	LE_WORD(0xFFFF),		// idVendor	LE_WORD(0x0003),		// idProduct	LE_WORD(0x0100),		// bcdDevice	0x01,					// iManufacturer	0x02,					// iProduct	0x03,					// iSerialNumber	0x01,					// bNumConfigurations// configuration descriptor	0x09,	DESC_CONFIGURATION,	LE_WORD(32),			// wTotalLength	0x01,					// bNumInterfaces	0x01,					// bConfigurationValue	0x00,					// iConfiguration	0xC0,					// bmAttributes	0x32,					// bMaxPower// interface	0x09,	DESC_INTERFACE,	0x00,					// bInterfaceNumber	0x00,					// bAlternateSetting	0x02,					// bNumEndPoints	0x08,					// bInterfaceClass = mass storage	0x06,					// bInterfaceSubClass = transparent SCSI	0x50,					// bInterfaceProtocol = BOT	0x00,					// iInterface// EP	0x07,	DESC_ENDPOINT,	MSC_BULK_IN_EP,			// bEndpointAddress	0x02,					// bmAttributes = bulk	LE_WORD(MAX_PACKET_SIZE),// wMaxPacketSize	0x00,					// bInterval// EP	0x07,	DESC_ENDPOINT,	MSC_BULK_OUT_EP,		// bEndpointAddress	0x02,					// bmAttributes = bulk	LE_WORD(MAX_PACKET_SIZE),// wMaxPacketSize	0x00,					// bInterval// string descriptors	0x04,	DESC_STRING,	LE_WORD(0x0409),	0x0E,	DESC_STRING,	'L', 0, 'P', 0, 'C', 0, 'U', 0, 'S', 0, 'B', 0,	0x12,	DESC_STRING,	'P', 0, 'r', 0, 'o', 0, 'd', 0, 'u', 0, 'c', 0, 't', 0, 'X', 0,	0x1A,	DESC_STRING,	'D', 0, 'E', 0, 'A', 0, 'D', 0, 'C', 0, '0', 0, 'D', 0, 'E', 0, 'C', 0, 'A', 0, 'F', 0, 'E', 0,// terminating zero	0};/*************************************************************************	HandleClassRequest	==================		Handle mass storage class request	**************************************************************************/static BOOL HandleClassRequest(TSetupPacket *pSetup, int *piLen, U8 **ppbData){	if (pSetup->wIndex != 0) {		DBG("Invalid idx %X\n", pSetup->wIndex);		return FALSE;	}	if (pSetup->wValue != 0) {		DBG("Invalid val %X\n", pSetup->wValue);		return FALSE;	}	switch (pSetup->bRequest) {	// get max LUN	case 0xFE:		*ppbData[0] = 0;		// No LUNs		*piLen = 1;		break;	// MSC reset	case 0xFF:		if (pSetup->wLength > 0) {			return FALSE;		}		MSCBotReset();		break;			default:		DBG("Unhandled class\n");		return FALSE;	}	return TRUE;}/*************************************************************************	main	====**************************************************************************/int main(void){	// PLL and MAM	Initialize();	// init DBG	ConsoleInit(60000000 / (16 * BAUD_RATE));	// initialise the SD card	BlockDevInit();	DBG("Initialising USB stack\n");	// initialise stack	USBInit();		// enable bulk-in interrupts on NAKs	// these are required to get the BOT protocol going again after a STALL	USBHwNakIntEnable(INACK_BI);	// register descriptors	USBRegisterDescriptors(abDescriptors);	// register class request handler	USBRegisterRequestHandler(REQTYPE_TYPE_CLASS, HandleClassRequest, abClassReqData);		// register endpoint handlers	USBHwRegisterEPIntHandler(MSC_BULK_IN_EP, MSCBotBulkIn);	USBHwRegisterEPIntHandler(MSC_BULK_OUT_EP, MSCBotBulkOut);	DBG("Starting USB communication\n");	// connect to bus	USBHwConnect(TRUE);	// call USB interrupt handler continuously	while (1) {		USBHwISR();	}		return 0;}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美日韩国产综合在线| 97se亚洲国产综合自在线不卡| 国产电影一区二区三区| 欧美亚洲精品一区| 日本一区二区高清| 男女视频一区二区| 欧美自拍丝袜亚洲| 国产精品精品国产色婷婷| 精品伊人久久久久7777人| 欧美三级韩国三级日本一级| 亚洲视频每日更新| 成人免费看视频| 国产人成一区二区三区影院| 麻豆国产精品官网| 欧美久久久一区| 亚洲美女少妇撒尿| 91天堂素人约啪| 欧美韩国日本一区| 国产成人欧美日韩在线电影| 欧美成人精品1314www| 蜜臀av性久久久久蜜臀aⅴ四虎| 欧美专区日韩专区| 亚洲一区在线观看网站| 色88888久久久久久影院按摩| 国产精品久久久久久久久久久免费看 | 色呦呦网站一区| 国产精品女同互慰在线看| 国产91综合网| 国产精品免费看片| 91亚洲男人天堂| 亚洲精品成人精品456| 91国偷自产一区二区使用方法| 亚洲欧美日韩人成在线播放| 在线亚洲高清视频| 午夜精品久久久久久久99樱桃| 欧美另类变人与禽xxxxx| 日韩精品五月天| 日韩精品中文字幕一区 | 精品欧美乱码久久久久久1区2区| 日产精品久久久久久久性色| 欧美一级理论片| 久久精品二区亚洲w码| 精品国产露脸精彩对白| 久久99精品久久只有精品| 久久只精品国产| 成人av电影在线观看| 日韩毛片高清在线播放| 欧美日韩一区久久| 久久精品噜噜噜成人av农村| 久久久噜噜噜久久中文字幕色伊伊| 国产成人亚洲综合a∨婷婷图片| 亚洲欧洲成人av每日更新| 色菇凉天天综合网| 日本特黄久久久高潮| 久久久精品免费网站| 色综合咪咪久久| 日本视频免费一区| 国产精品亲子伦对白| 欧美亚洲综合色| 黑人精品欧美一区二区蜜桃| 中文字幕视频一区| 欧美精品在欧美一区二区少妇| 韩国女主播一区| 亚洲欧美日韩久久精品| 日韩欧美一卡二卡| 北条麻妃国产九九精品视频| 偷窥少妇高潮呻吟av久久免费| 久久夜色精品国产噜噜av| 一本高清dvd不卡在线观看| 婷婷成人综合网| 国产精品欧美经典| 91精品国产综合久久婷婷香蕉| 丁香啪啪综合成人亚洲小说| 五月激情综合色| 国产精品成人在线观看| 日韩欧美中文字幕一区| 91在线国内视频| 国产麻豆精品视频| 性做久久久久久久免费看| 中国色在线观看另类| 91精品免费观看| 在线亚洲一区观看| 国产大陆精品国产| 日韩福利视频网| 亚洲色图丝袜美腿| 欧美国产视频在线| 欧美成人bangbros| 欧美日韩国产一二三| 99久久综合99久久综合网站| 国内国产精品久久| 美女一区二区视频| 亚洲成人av中文| 一区二区三国产精华液| 国产精品成人一区二区艾草 | 日韩免费观看2025年上映的电影| 色激情天天射综合网| 成人黄色av电影| 国产风韵犹存在线视精品| 久久激情五月激情| 免费一级欧美片在线观看| 亚洲成av人片一区二区| 亚洲黄色性网站| 亚洲精品国产精华液| 亚洲色图欧洲色图婷婷| 日韩一区欧美一区| 国产精品久久二区二区| 国产精品免费视频一区| 国产精品嫩草影院com| 国产色产综合产在线视频| 久久亚洲精精品中文字幕早川悠里 | 久久99精品久久久久久久久久久久 | 激情综合色丁香一区二区| 日本伊人色综合网| 免费在线观看视频一区| 琪琪久久久久日韩精品| 另类小说色综合网站| 免费精品视频最新在线| 久久精品国产99国产| 激情综合网av| 懂色中文一区二区在线播放| 成人网在线免费视频| 92精品国产成人观看免费 | 精品欧美久久久| 久久这里只有精品视频网| 国产婷婷一区二区| 国产精品成人免费在线| 亚洲精品菠萝久久久久久久| 亚洲午夜私人影院| 青青草国产成人av片免费| 麻豆精品一区二区av白丝在线| 蜜桃视频一区二区| 成人毛片老司机大片| 色婷婷综合在线| 欧美一区二区三区视频免费播放| 亚洲精品在线免费观看视频| 国产精品视频观看| 亚洲成人三级小说| 韩国av一区二区三区在线观看| 成人国产精品免费观看| 在线观看国产精品网站| 日韩亚洲国产中文字幕欧美| 欧美国产一区二区| 亚洲成人精品一区二区| 国产一区二区视频在线| 91成人国产精品| xfplay精品久久| 亚洲专区一二三| 国产酒店精品激情| 欧美性色黄大片手机版| 久久久久久久电影| 亚洲小说欧美激情另类| 国产精品88888| 欧美日韩一区二区三区免费看| 欧美变态凌虐bdsm| 一区二区三区四区高清精品免费观看| 久久激五月天综合精品| 色噜噜狠狠成人中文综合| 精品国产制服丝袜高跟| 一区二区三区四区不卡在线| 国产一区二区三区在线观看免费视频| 色综合中文综合网| 久久精品夜夜夜夜久久| 亚洲丰满少妇videoshd| 成人禁用看黄a在线| 日韩欧美国产1| 亚洲黄色免费电影| 国产一区二区中文字幕| 91精品国产aⅴ一区二区| 中文字幕在线不卡| 国产精品一区二区三区99| 91精品国产色综合久久不卡蜜臀 | 久久精品国产精品亚洲精品| 色婷婷综合久久久| 中文字幕巨乱亚洲| 国产乱色国产精品免费视频| 51久久夜色精品国产麻豆| 亚洲精品免费在线观看| 成人的网站免费观看| 欧美大胆人体bbbb| 男男视频亚洲欧美| 欧美久久久久中文字幕| 亚洲国产精品欧美一二99| 99久久精品久久久久久清纯| 日本一区二区三区dvd视频在线| 免费看欧美美女黄的网站| 欧美高清www午色夜在线视频| 一区二区三区四区乱视频| 91天堂素人约啪| 亚洲欧美aⅴ...| 色综合天天在线| 亚洲视频免费在线| 色一情一伦一子一伦一区| 国产精品福利一区| 91亚洲永久精品| 亚洲视频香蕉人妖| 在线视频国内一区二区| 亚洲免费在线视频| 色拍拍在线精品视频8848| 一区二区三区四区中文字幕| 在线观看亚洲专区|